@across-protocol/contracts 5.0.6-alpha.1 → 5.0.6-alpha.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (350) hide show
  1. package/dist/abi/AccessControl.sol/AccessControl.json +1 -1
  2. package/dist/abi/AccessControlEnumerable.sol/AccessControlEnumerable.json +1 -1
  3. package/dist/abi/AccessControlUpgradeable.sol/AccessControlUpgradeable.json +1 -1
  4. package/dist/abi/AcrossConfigStore.sol/AcrossConfigStore.json +1 -1
  5. package/dist/abi/AcrossEventEmitter.sol/AcrossEventEmitter.json +1 -1
  6. package/dist/abi/AcrossMerkleDistributor.sol/AcrossMerkleDistributor.json +1 -1
  7. package/dist/abi/AcrossMessageHandlerMock.sol/AcrossMessageHandlerMock.json +1 -0
  8. package/dist/abi/AdapterInterface.sol/AdapterInterface.json +1 -1
  9. package/dist/abi/AdapterStore.sol/AdapterStore.json +1 -1
  10. package/dist/abi/AdapterStore.sol/MessengerTypes.json +1 -1
  11. package/dist/abi/Address.sol/Address.json +1 -1
  12. package/dist/abi/AddressConverters.sol/Bytes32ToAddress.json +1 -1
  13. package/dist/abi/AddressWhitelistInterface.sol/AddressWhitelistInterface.json +1 -1
  14. package/dist/abi/AdminRelayTokensAdapter.sol/AdminRelayTokensAdapter.json +1 -1
  15. package/dist/abi/AdminWithdrawManager.sol/AdminWithdrawManager.json +1 -1
  16. package/dist/abi/ArbitraryEVMFlowExecutor.sol/ArbitraryEVMFlowExecutor.json +1 -1
  17. package/dist/abi/ArbitrumBridge.sol/ArbitrumCustomGasTokenInbox.json +1 -1
  18. package/dist/abi/ArbitrumBridge.sol/ArbitrumERC20Bridge.json +1 -1
  19. package/dist/abi/ArbitrumBridge.sol/ArbitrumInboxLike.json +1 -1
  20. package/dist/abi/ArbitrumBridge.sol/ArbitrumL1ERC20GatewayLike.json +1 -1
  21. package/dist/abi/ArbitrumBridge.sol/ArbitrumL2ERC20GatewayLike.json +1 -1
  22. package/dist/abi/ArbitrumMocks.sol/ArbitrumMockErc20GatewayRouter.json +1 -0
  23. package/dist/abi/ArbitrumMocks.sol/Inbox.json +1 -0
  24. package/dist/abi/ArbitrumMocks.sol/L2GatewayRouter.json +1 -0
  25. package/dist/abi/Arbitrum_Adapter.sol/Arbitrum_Adapter.json +1 -1
  26. package/dist/abi/Arbitrum_CustomGasToken_Adapter.sol/Arbitrum_CustomGasToken_Adapter.json +1 -1
  27. package/dist/abi/Arbitrum_CustomGasToken_Adapter.sol/FunderInterface.json +1 -1
  28. package/dist/abi/Arbitrum_Forwarder.sol/Arbitrum_Forwarder.json +1 -1
  29. package/dist/abi/Arbitrum_RescueAdapter.sol/Arbitrum_RescueAdapter.json +1 -1
  30. package/dist/abi/Arbitrum_SendTokensAdapter.sol/Arbitrum_SendTokensAdapter.json +1 -1
  31. package/dist/abi/Arbitrum_SpokePool.sol/Arbitrum_SpokePool.json +1 -1
  32. package/dist/abi/Arbitrum_WithdrawalHelper.sol/Arbitrum_WithdrawalHelper.json +1 -1
  33. package/dist/abi/AuthorizedFundedFlow.sol/AuthorizedFundedFlow.json +1 -1
  34. package/dist/abi/BaseModuleHandler.sol/BaseModuleHandler.json +1 -1
  35. package/dist/abi/BaseSimulatorTest.sol/BaseSimulatorTest.json +1 -1
  36. package/dist/abi/Base_Adapter.sol/Base_Adapter.json +1 -1
  37. package/dist/abi/BeaconProxy.sol/BeaconProxy.json +1 -1
  38. package/dist/abi/Blast_Adapter.sol/Blast_Adapter.json +1 -1
  39. package/dist/abi/Blast_Adapter.sol/IL1ERC20Bridge.json +1 -1
  40. package/dist/abi/Blast_DaiRetriever.sol/Blast_DaiRetriever.json +1 -1
  41. package/dist/abi/Blast_DaiRetriever.sol/USDYieldManager.json +1 -1
  42. package/dist/abi/Blast_RescueAdapter.sol/Blast_RescueAdapter.json +1 -1
  43. package/dist/abi/Blast_SpokePool.sol/Blast_SpokePool.json +1 -1
  44. package/dist/abi/Blast_SpokePool.sol/IBlast.json +1 -1
  45. package/dist/abi/Blast_SpokePool.sol/IERC20Rebasing.json +1 -1
  46. package/dist/abi/Blast_SpokePool.sol/IUSDBL2Bridge.json +1 -1
  47. package/dist/abi/Boba_Adapter.sol/Boba_Adapter.json +1 -1
  48. package/dist/abi/Boba_SpokePool.sol/Boba_SpokePool.json +1 -1
  49. package/dist/abi/BondToken.sol/BondToken.json +1 -1
  50. package/dist/abi/BondToken.sol/ExtendedHubPoolInterface.json +1 -1
  51. package/dist/abi/BytesLib.sol/BytesLib.json +1 -1
  52. package/dist/abi/CCTPInterfaces.sol/IMessageTransmitter.json +1 -1
  53. package/dist/abi/CCTPInterfaces.sol/IMessageTransmitterV2.json +1 -1
  54. package/dist/abi/CCTPInterfaces.sol/ITokenMessenger.json +1 -1
  55. package/dist/abi/CCTPInterfaces.sol/ITokenMessengerV2.json +1 -1
  56. package/dist/abi/CCTPInterfaces.sol/ITokenMinter.json +1 -1
  57. package/dist/abi/Cher_SpokePool.sol/Cher_SpokePool.json +1 -1
  58. package/dist/abi/CircleCCTPAdapter.sol/CircleCCTPAdapter.json +1 -1
  59. package/dist/abi/CircleCCTPAdapter.sol/CircleDomainIds.json +1 -1
  60. package/dist/abi/Clones.sol/Clones.json +1 -1
  61. package/dist/abi/Constants.sol/Constants.json +1 -1
  62. package/dist/abi/Constants.sol/OptimisticOracleConstraints.json +1 -1
  63. package/dist/abi/Constants.sol/OracleInterfaces.json +1 -1
  64. package/dist/abi/ContextUpgradeable.sol/ContextUpgradeable.json +1 -1
  65. package/dist/abi/CoreExecution.sol/CoreExecution.json +1 -1
  66. package/dist/abi/CoreSimulatorLib.sol/HypeSystemContract.json +1 -1
  67. package/dist/abi/CoreState.sol/CoreState.json +1 -1
  68. package/dist/abi/CoreView.sol/CoreView.json +1 -1
  69. package/dist/abi/CoreWriterLib.sol/CoreWriterLib.json +1 -1
  70. package/dist/abi/CoreWriterSim.sol/CoreWriterSim.json +1 -1
  71. package/dist/abi/CounterfactualDeposit.sol/CounterfactualDeposit.json +1 -1
  72. package/dist/abi/CounterfactualDepositCCTP.sol/CounterfactualDepositCCTP.json +1 -1
  73. package/dist/abi/CounterfactualDepositCCTP.sol/ISponsoredCCTPSrcPeriphery.json +1 -1
  74. package/dist/abi/CounterfactualDepositFactory.sol/CounterfactualDepositFactory.json +1 -1
  75. package/dist/abi/CounterfactualDepositFactoryTron.sol/CounterfactualDepositFactoryTron.json +1 -1
  76. package/dist/abi/CounterfactualDepositOFT.sol/CounterfactualDepositOFT.json +1 -1
  77. package/dist/abi/CounterfactualDepositOFT.sol/ISponsoredOFTSrcPeriphery.json +1 -1
  78. package/dist/abi/CounterfactualDepositSpokePool.sol/CounterfactualDepositSpokePool.json +1 -1
  79. package/dist/abi/Create2.sol/Create2.json +1 -1
  80. package/dist/abi/CrossDomainEnabled.sol/CrossDomainEnabled.json +1 -1
  81. package/dist/abi/DeployedAddresses.sol/DeployedAddresses.json +1 -1
  82. package/dist/abi/DeploymentUtils.sol/DeploymentUtils.json +1 -1
  83. package/dist/abi/DoctorWho_Adapter.sol/DoctorWho_Adapter.json +1 -1
  84. package/dist/abi/DonationBox.sol/DonationBox.json +1 -1
  85. package/dist/abi/DstOFTHandler.sol/DstOFTHandler.json +1 -1
  86. package/dist/abi/ECDSA.sol/ECDSA.json +1 -1
  87. package/dist/abi/EIP712.sol/EIP712.json +1 -1
  88. package/dist/abi/EIP712CrossChainUpgradeable.sol/EIP712CrossChainUpgradeable.json +1 -1
  89. package/dist/abi/ERC1155.sol/ERC1155.json +1 -1
  90. package/dist/abi/ERC165.sol/ERC165.json +1 -1
  91. package/dist/abi/ERC165Upgradeable.sol/ERC165Upgradeable.json +1 -1
  92. package/dist/abi/ERC1967Proxy.sol/ERC1967Proxy.json +1 -1
  93. package/dist/abi/ERC1967Upgrade.sol/ERC1967Upgrade.json +1 -1
  94. package/dist/abi/ERC1967UpgradeUpgradeable.sol/ERC1967UpgradeUpgradeable.json +1 -1
  95. package/dist/abi/ERC1967Utils.sol/ERC1967Utils.json +1 -1
  96. package/dist/abi/ERC20.sol/ERC20.json +1 -1
  97. package/dist/abi/ERC20Permit.sol/ERC20Permit.json +1 -1
  98. package/dist/abi/ERC7683.sol/IDestinationSettler.json +1 -1
  99. package/dist/abi/Errors.sol/Errors.json +1 -1
  100. package/dist/abi/Ethereum_Adapter.sol/Ethereum_Adapter.json +1 -1
  101. package/dist/abi/Ethereum_RescueAdapter.sol/Ethereum_RescueAdapter.json +1 -1
  102. package/dist/abi/Ethereum_SpokePool.sol/Ethereum_SpokePool.json +1 -1
  103. package/dist/abi/ExpandedERC20.sol/ExpandedERC20.json +1 -1
  104. package/dist/abi/ExpandedERC20WithBlacklist.sol/ExpandedERC20WithBlacklist.json +1 -1
  105. package/dist/abi/ExpandedIERC20.sol/ExpandedIERC20.json +1 -1
  106. package/dist/abi/FinderInterface.sol/FinderInterface.json +1 -1
  107. package/dist/abi/ForwarderBase.sol/ForwarderBase.json +1 -1
  108. package/dist/abi/ForwarderInterface.sol/ForwarderInterface.json +1 -1
  109. package/dist/abi/HLConstants.sol/HLConstants.json +1 -1
  110. package/dist/abi/HLConversions.sol/HLConversions.json +1 -1
  111. package/dist/abi/HubPool.sol/HubPool.json +1 -1
  112. package/dist/abi/HubPoolInterface.sol/HubPoolInterface.json +1 -1
  113. package/dist/abi/HubPoolStore.sol/HubPoolStore.json +1 -1
  114. package/dist/abi/HubPoolStore.sol/IHubPool.json +1 -1
  115. package/dist/abi/HubPoolTestBase.sol/HubPoolTestBase.json +1 -1
  116. package/dist/abi/HubPoolTestBase.sol/MockAddressWhitelist.json +1 -1
  117. package/dist/abi/HubPoolTestBase.sol/MockFinder.json +1 -1
  118. package/dist/abi/HubPoolTestBase.sol/MockIdentifierWhitelist.json +1 -1
  119. package/dist/abi/HubPoolTestBase.sol/MockLpTokenFactory.json +1 -1
  120. package/dist/abi/HubPoolTestBase.sol/MockOptimisticOracle.json +1 -1
  121. package/dist/abi/HubPoolTestBase.sol/MockStore.json +1 -1
  122. package/dist/abi/HyperCore.sol/HyperCore.json +1 -1
  123. package/dist/abi/HyperCoreFlowExecutor.sol/HyperCoreFlowExecutor.json +1 -1
  124. package/dist/abi/HyperCoreFlowRoles.sol/HyperCoreFlowRoles.json +1 -1
  125. package/dist/abi/HyperCoreLib.sol/HyperCoreLib.json +1 -1
  126. package/dist/abi/HyperCoreLib.sol/ICoreWriter.json +1 -1
  127. package/dist/abi/HyperCoreMockHelper.sol/HyperCoreMockHelper.json +1 -0
  128. package/dist/abi/HyperliquidDepositHandler.sol/HyperliquidDepositHandler.json +1 -1
  129. package/dist/abi/IAccessControl.sol/IAccessControl.json +1 -1
  130. package/dist/abi/IAccessControlEnumerable.sol/IAccessControlEnumerable.json +1 -1
  131. package/dist/abi/IBeacon.sol/IBeacon.json +1 -1
  132. package/dist/abi/IBeaconUpgradeable.sol/IBeaconUpgradeable.json +1 -1
  133. package/dist/abi/ICoreDepositWallet.sol/ICoreDepositWallet.json +1 -1
  134. package/dist/abi/ICoreDepositWallet.sol/IForwardDepositReceiver.json +1 -1
  135. package/dist/abi/ICoreWriter.sol/ICoreWriter.json +1 -1
  136. package/dist/abi/ICounterfactualDeposit.sol/ICounterfactualDeposit.json +1 -1
  137. package/dist/abi/ICounterfactualDepositFactory.sol/ICounterfactualDepositFactory.json +1 -1
  138. package/dist/abi/ICounterfactualImplementation.sol/ICounterfactualImplementation.json +1 -1
  139. package/dist/abi/ICrossDomainMessenger.sol/ICrossDomainMessenger.json +1 -1
  140. package/dist/abi/ICrossDomainMessengerUpgradeable.sol/ICrossDomainMessengerUpgradeable.json +1 -1
  141. package/dist/abi/IERC1155.sol/IERC1155.json +1 -1
  142. package/dist/abi/IERC1155MetadataURI.sol/IERC1155MetadataURI.json +1 -1
  143. package/dist/abi/IERC1155Receiver.sol/IERC1155Receiver.json +1 -1
  144. package/dist/abi/IERC1271.sol/IERC1271.json +1 -1
  145. package/dist/abi/IERC1363.sol/IERC1363.json +1 -1
  146. package/dist/abi/IERC165.sol/IERC165.json +1 -1
  147. package/dist/abi/IERC1967.sol/IERC1967.json +1 -1
  148. package/dist/abi/IERC1967Upgradeable.sol/IERC1967Upgradeable.json +1 -1
  149. package/dist/abi/IERC20.sol/IERC20.json +1 -1
  150. package/dist/abi/IERC20Auth.sol/IERC20Auth.json +1 -1
  151. package/dist/abi/IERC20Metadata.sol/IERC20Metadata.json +1 -1
  152. package/dist/abi/IERC20Permit.sol/IERC20Permit.json +1 -1
  153. package/dist/abi/IERC20PermitUpgradeable.sol/IERC20PermitUpgradeable.json +1 -1
  154. package/dist/abi/IERC20Upgradeable.sol/IERC20Upgradeable.json +1 -1
  155. package/dist/abi/IERC5267.sol/IERC5267.json +1 -1
  156. package/dist/abi/IHelios.sol/IHelios.json +1 -1
  157. package/dist/abi/IHypXERC20Router.sol/IHypXERC20Router.json +1 -1
  158. package/dist/abi/IHyperCoreFlowExecutor.sol/IHyperCoreFlowExecutor.json +1 -1
  159. package/dist/abi/IL1ERC20Bridge.sol/IL1ERC20Bridge.json +1 -1
  160. package/dist/abi/IL1ERC20Gateway.sol/IL1ERC20Gateway.json +1 -1
  161. package/dist/abi/IL1ETHGateway.sol/IL1ETHGateway.json +1 -1
  162. package/dist/abi/IL1GatewayRouter.sol/IL1GatewayRouter.json +1 -1
  163. package/dist/abi/IL1ScrollMessenger.sol/IL1ScrollMessenger.json +1 -1
  164. package/dist/abi/IL1StandardBridge.sol/IL1StandardBridge.json +1 -1
  165. package/dist/abi/IL2ERC20Gateway.sol/IL2ERC20Gateway.json +1 -1
  166. package/dist/abi/IL2ETHGateway.sol/IL2ETHGateway.json +1 -1
  167. package/dist/abi/IL2GasPriceOracle.sol/IL2GasPriceOracle.json +1 -1
  168. package/dist/abi/IL2GatewayRouter.sol/IL2GatewayRouter.json +1 -1
  169. package/dist/abi/ILayerZeroComposer.sol/ILayerZeroComposer.json +1 -1
  170. package/dist/abi/IMulticall3.sol/IMulticall3.json +1 -1
  171. package/dist/abi/IOFT.sol/IEndpoint.json +1 -1
  172. package/dist/abi/IOFT.sol/IOAppCore.json +1 -1
  173. package/dist/abi/IOFT.sol/IOFT.json +1 -1
  174. package/dist/abi/IOpUSDCBridgeAdapter.sol/IOpUSDCBridgeAdapter.json +1 -1
  175. package/dist/abi/IPermit2.sol/IPermit2.json +1 -1
  176. package/dist/abi/IPolygonZkEVMBridge.sol/IPolygonZkEVMBridge.json +1 -1
  177. package/dist/abi/IProxyAdmin.sol/IProxyAdmin.json +1 -1
  178. package/dist/abi/ISP1Verifier.sol/ISP1Verifier.json +1 -1
  179. package/dist/abi/ISP1Verifier.sol/ISP1VerifierWithHash.json +1 -1
  180. package/dist/abi/IScrollMessenger.sol/IScrollMessenger.json +1 -1
  181. package/dist/abi/ISpokePool.sol/ISpokePool.json +1 -1
  182. package/dist/abi/ITokenRegistry.sol/ITokenRegistry.json +1 -1
  183. package/dist/abi/IUpgradeableBeacon.sol/IUpgradeableBeacon.json +1 -1
  184. package/dist/abi/IUpgradeableProxy.sol/IUpgradeableProxy.json +1 -1
  185. package/dist/abi/IdentifierWhitelistInterface.sol/IdentifierWhitelistInterface.json +1 -1
  186. package/dist/abi/Initializable.sol/Initializable.json +1 -1
  187. package/dist/abi/Ink_SpokePool.sol/Ink_SpokePool.json +1 -1
  188. package/dist/abi/Lens_SpokePool.sol/Lens_SpokePool.json +1 -1
  189. package/dist/abi/LibVariable.sol/LibVariable.json +1 -1
  190. package/dist/abi/LineaInterfaces.sol/IMessageService.json +1 -1
  191. package/dist/abi/LineaInterfaces.sol/ITokenBridge.json +1 -1
  192. package/dist/abi/LineaInterfaces.sol/IUSDCBridge.json +1 -1
  193. package/dist/abi/LineaMocks.sol/MockL2MessageService.json +1 -0
  194. package/dist/abi/LineaMocks.sol/MockL2TokenBridge.json +1 -0
  195. package/dist/abi/Linea_Adapter.sol/Linea_Adapter.json +1 -1
  196. package/dist/abi/Linea_SpokePool.sol/Linea_SpokePool.json +1 -1
  197. package/dist/abi/Lisk_Adapter.sol/Lisk_Adapter.json +1 -1
  198. package/dist/abi/Lisk_SpokePool.sol/Lisk_SpokePool.json +1 -1
  199. package/dist/abi/Lockable.sol/Lockable.json +1 -1
  200. package/dist/abi/LpTokenFactory.sol/LpTokenFactory.json +1 -1
  201. package/dist/abi/LpTokenFactoryInterface.sol/LpTokenFactoryInterface.json +1 -1
  202. package/dist/abi/Merkle.sol/Merkle.json +1 -1
  203. package/dist/abi/MerkleDistributor.sol/MerkleDistributor.json +1 -1
  204. package/dist/abi/MerkleDistributorInterface.sol/MerkleDistributorInterface.json +1 -1
  205. package/dist/abi/MerkleLibTest.sol/MerkleLibTest.json +1 -1
  206. package/dist/abi/MerkleProof.sol/MerkleProof.json +1 -1
  207. package/dist/abi/MinimalLZOptions.sol/MinimalLZOptions.json +1 -1
  208. package/dist/abi/MintableERC1155.sol/MintableERC1155.json +1 -1
  209. package/dist/abi/MockBedrockStandardBridge.sol/MockBedrockCrossDomainMessenger.json +1 -0
  210. package/dist/abi/MockBedrockStandardBridge.sol/MockBedrockL1StandardBridge.json +1 -0
  211. package/dist/abi/MockBedrockStandardBridge.sol/MockBedrockL2StandardBridge.json +1 -0
  212. package/dist/abi/MockBlastUsdYieldManager.sol/MockBlastUsdYieldManager.json +1 -0
  213. package/dist/abi/MockCCTP.sol/MockCCTPMessageTransmitter.json +1 -0
  214. package/dist/abi/MockCCTP.sol/MockCCTPMessenger.json +1 -0
  215. package/dist/abi/MockCCTP.sol/MockCCTPMessengerV2.json +1 -0
  216. package/dist/abi/MockCCTP.sol/MockCCTPMinter.json +1 -0
  217. package/dist/abi/MockCaller.sol/MockCaller.json +1 -0
  218. package/dist/abi/MockERC1271.sol/MockERC1271.json +1 -0
  219. package/dist/abi/MockERC20.sol/MintableERC20.json +1 -0
  220. package/dist/abi/MockERC20.sol/MockERC20.json +1 -0
  221. package/dist/abi/MockEndpoint.sol/MockEndpoint.json +1 -0
  222. package/dist/abi/MockHubPool.sol/MockHubPool.json +1 -0
  223. package/dist/abi/MockOFTMessenger.sol/MockOFTMessenger.json +1 -0
  224. package/dist/abi/MockOptimism_SpokePool.sol/MockOptimism_SpokePool.json +1 -0
  225. package/dist/abi/MockPermit2.sol/MockPermit2.json +1 -0
  226. package/dist/abi/MockPermit2.sol/Permit2EIP712.json +1 -0
  227. package/dist/abi/MockPermit2.sol/SignatureVerification.json +1 -0
  228. package/dist/abi/MockSpokePool.sol/MockSpokePool.json +1 -0
  229. package/dist/abi/MockSpokePoolV2.sol/MockSpokePoolV2.json +1 -0
  230. package/dist/abi/MockZkStackBridgeHub.sol/MockBridgeHub.json +1 -0
  231. package/dist/abi/Mock_Adapter.sol/Mock_Adapter.json +1 -0
  232. package/dist/abi/Mock_Adapter.sol/Mock_Bridge.json +1 -0
  233. package/dist/abi/Mode_Adapter.sol/Mode_Adapter.json +1 -1
  234. package/dist/abi/MultiCaller.sol/MultiCaller.json +1 -1
  235. package/dist/abi/MultiCallerUpgradeable.sol/MultiCallerUpgradeable.json +1 -1
  236. package/dist/abi/MultiRole.sol/MultiRole.json +1 -1
  237. package/dist/abi/Multicall3.sol/Multicall3.json +1 -1
  238. package/dist/abi/MulticallHandler.sol/MulticallHandler.json +1 -1
  239. package/dist/abi/MurkyBase.sol/MurkyBase.json +1 -1
  240. package/dist/abi/OFTCoreMath.sol/OFTCoreMath.json +1 -1
  241. package/dist/abi/OFTTransportAdapter.sol/OFTTransportAdapter.json +1 -1
  242. package/dist/abi/OFTTransportAdapterWithStore.sol/OFTTransportAdapterWithStore.json +1 -1
  243. package/dist/abi/OP_Adapter.sol/OP_Adapter.json +1 -1
  244. package/dist/abi/OP_SpokePool.sol/OP_SpokePool.json +1 -1
  245. package/dist/abi/Optimism_Adapter.sol/Optimism_Adapter.json +1 -1
  246. package/dist/abi/Optimism_Adapter.sol/SynthetixBridgeToOptimism.json +1 -1
  247. package/dist/abi/Optimism_SpokePool.sol/Optimism_SpokePool.json +1 -1
  248. package/dist/abi/Optimism_SpokePool.sol/SynthetixBridgeToBase.json +1 -1
  249. package/dist/abi/OptimisticOracleInterface.sol/OptimisticOracleInterface.json +1 -1
  250. package/dist/abi/Ovm_Forwarder.sol/Ovm_Forwarder.json +1 -1
  251. package/dist/abi/Ovm_SpokePool.sol/IL2ERC20Bridge.json +1 -1
  252. package/dist/abi/Ovm_SpokePool.sol/Ovm_SpokePool.json +1 -1
  253. package/dist/abi/Ovm_WithdrawalHelper.sol/IOvm_SpokePool.json +1 -1
  254. package/dist/abi/Ovm_WithdrawalHelper.sol/Ovm_WithdrawalHelper.json +1 -1
  255. package/dist/abi/Ownable.sol/Ownable.json +1 -1
  256. package/dist/abi/OwnableUpgradeable.sol/OwnableUpgradeable.json +1 -1
  257. package/dist/abi/PeripherySigningLib.sol/PeripherySigningLib.json +1 -1
  258. package/dist/abi/PermissionSplitterProxy.sol/PermissionSplitterProxy.json +1 -1
  259. package/dist/abi/PermissionedMulticallHandler.sol/PermissionedMulticallHandler.json +1 -1
  260. package/dist/abi/PolygonERC20Test.sol/PolygonERC20Test.json +1 -1
  261. package/dist/abi/PolygonMocks.sol/DepositManagerMock.json +1 -0
  262. package/dist/abi/PolygonMocks.sol/FxStateSenderMock.json +1 -0
  263. package/dist/abi/PolygonMocks.sol/PolygonERC20Mock.json +1 -0
  264. package/dist/abi/PolygonMocks.sol/PolygonERC20PredicateMock.json +1 -0
  265. package/dist/abi/PolygonMocks.sol/PolygonRegistryMock.json +1 -0
  266. package/dist/abi/PolygonMocks.sol/RootChainManagerMock.json +1 -0
  267. package/dist/abi/PolygonTokenBridger.sol/MaticToken.json +1 -1
  268. package/dist/abi/PolygonTokenBridger.sol/PolygonERC20Predicate.json +1 -1
  269. package/dist/abi/PolygonTokenBridger.sol/PolygonIERC20Upgradeable.json +1 -1
  270. package/dist/abi/PolygonTokenBridger.sol/PolygonRegistry.json +1 -1
  271. package/dist/abi/PolygonTokenBridger.sol/PolygonTokenBridger.json +1 -1
  272. package/dist/abi/PolygonZkEVMMocks.sol/MockPolygonZkEVMBridge.json +1 -0
  273. package/dist/abi/PolygonZkEVM_Adapter.sol/PolygonZkEVM_Adapter.json +1 -1
  274. package/dist/abi/PolygonZkEVM_SpokePool.sol/IBridgeMessageReceiver.json +1 -1
  275. package/dist/abi/PolygonZkEVM_SpokePool.sol/PolygonZkEVM_SpokePool.json +1 -1
  276. package/dist/abi/Polygon_Adapter.sol/DepositManager.json +1 -1
  277. package/dist/abi/Polygon_Adapter.sol/IFxStateSender.json +1 -1
  278. package/dist/abi/Polygon_Adapter.sol/IRootChainManager.json +1 -1
  279. package/dist/abi/Polygon_Adapter.sol/Polygon_Adapter.json +1 -1
  280. package/dist/abi/Polygon_SpokePool.sol/IFxMessageProcessor.json +1 -1
  281. package/dist/abi/Polygon_SpokePool.sol/Polygon_SpokePool.json +1 -1
  282. package/dist/abi/PrecompileLib.sol/PrecompileLib.json +1 -1
  283. package/dist/abi/PrecompileSim.sol/PrecompileSim.json +1 -1
  284. package/dist/abi/Proxy.sol/Proxy.json +1 -1
  285. package/dist/abi/ProxyAdmin.sol/ProxyAdmin.json +1 -1
  286. package/dist/abi/ReentrancyGuard.sol/ReentrancyGuard.json +1 -1
  287. package/dist/abi/ReentrancyGuardUpgradeable.sol/ReentrancyGuardUpgradeable.json +1 -1
  288. package/dist/abi/Router_Adapter.sol/Router_Adapter.json +1 -1
  289. package/dist/abi/SP1AutoVerifier.sol/SP1AutoVerifier.json +1 -1
  290. package/dist/abi/SP1Helios.sol/SP1Helios.json +1 -1
  291. package/dist/abi/SP1MockVerifier.sol/SP1MockVerifier.json +1 -0
  292. package/dist/abi/SafeCast.sol/SafeCast.json +1 -1
  293. package/dist/abi/SafeERC20.sol/SafeERC20.json +1 -1
  294. package/dist/abi/ScrollMocks.sol/MockScrollL2GatewayRouter.json +1 -0
  295. package/dist/abi/ScrollMocks.sol/MockScrollMessenger.json +1 -0
  296. package/dist/abi/Scroll_Adapter.sol/Scroll_Adapter.json +1 -1
  297. package/dist/abi/Scroll_SpokePool.sol/IL2GatewayRouterExtended.json +1 -1
  298. package/dist/abi/Scroll_SpokePool.sol/Scroll_SpokePool.json +1 -1
  299. package/dist/abi/ShortStrings.sol/ShortStrings.json +1 -1
  300. package/dist/abi/SkinnyOptimisticOracleInterface.sol/SkinnyOptimisticOracleInterface.json +1 -1
  301. package/dist/abi/Solana_Adapter.sol/Solana_Adapter.json +1 -1
  302. package/dist/abi/SpokePool.sol/SpokePool.json +1 -1
  303. package/dist/abi/SpokePoolInterface.sol/SpokePoolInterface.json +1 -1
  304. package/dist/abi/SpokePoolMessageHandler.sol/AcrossMessageHandler.json +1 -1
  305. package/dist/abi/SpokePoolPeriphery.sol/SpokePoolPeriphery.json +1 -1
  306. package/dist/abi/SpokePoolPeriphery.sol/SwapProxy.json +1 -1
  307. package/dist/abi/SpokePoolPeripheryInterface.sol/SpokePoolPeripheryInterface.json +1 -1
  308. package/dist/abi/SpokePoolVerifier.sol/SpokePoolVerifier.json +1 -1
  309. package/dist/abi/SponsoredCCTPDstPeriphery.sol/SponsoredCCTPDstPeriphery.json +1 -1
  310. package/dist/abi/SponsoredCCTPInterface.sol/SponsoredCCTPInterface.json +1 -1
  311. package/dist/abi/SponsoredCCTPSrcPeriphery.sol/SponsoredCCTPSrcPeriphery.json +1 -1
  312. package/dist/abi/SponsoredOFTInterface.sol/SponsoredOFTInterface.json +1 -1
  313. package/dist/abi/SponsoredOFTSrcPeriphery.sol/SponsoredOFTSrcPeriphery.json +1 -1
  314. package/dist/abi/StdConfig.sol/StdConfig.json +1 -1
  315. package/dist/abi/StoreInterface.sol/StoreInterface.json +1 -1
  316. package/dist/abi/Strings.sol/Strings.json +1 -1
  317. package/dist/abi/SwapHandler.sol/SwapHandler.json +1 -1
  318. package/dist/abi/Testable.sol/Testable.json +1 -1
  319. package/dist/abi/Timer.sol/Timer.json +1 -1
  320. package/dist/abi/TransferProxy.sol/TransferProxy.json +1 -1
  321. package/dist/abi/TransparentUpgradeableProxy.sol/ITransparentUpgradeableProxy.json +1 -1
  322. package/dist/abi/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +1 -1
  323. package/dist/abi/UUPSUpgradeable.sol/UUPSUpgradeable.json +1 -1
  324. package/dist/abi/Universal_Adapter.sol/IOwnable.json +1 -1
  325. package/dist/abi/Universal_Adapter.sol/Universal_Adapter.json +1 -1
  326. package/dist/abi/Universal_SpokePool.sol/Universal_SpokePool.json +1 -1
  327. package/dist/abi/UpgradeableBeacon.sol/UpgradeableBeacon.json +1 -1
  328. package/dist/abi/V3SpokePoolInterface.sol/V3SpokePoolInterface.json +1 -1
  329. package/dist/abi/WETH9.sol/WETH9.json +1 -1
  330. package/dist/abi/WETH9Interface.sol/WETH9Interface.json +1 -1
  331. package/dist/abi/WithdrawImplementation.sol/WithdrawImplementation.json +1 -1
  332. package/dist/abi/WithdrawalHelperBase.sol/WithdrawalHelperBase.json +1 -1
  333. package/dist/abi/WorldChain_SpokePool.sol/WorldChain_SpokePool.json +1 -1
  334. package/dist/abi/ZkStackBridgeHub.sol/BridgeHubInterface.json +1 -1
  335. package/dist/abi/ZkStack_Adapter.sol/ZkStack_Adapter.json +1 -1
  336. package/dist/abi/ZkStack_CustomGasToken_Adapter.sol/FunderInterface.json +1 -1
  337. package/dist/abi/ZkStack_CustomGasToken_Adapter.sol/ZkStack_CustomGasToken_Adapter.json +1 -1
  338. package/dist/abi/ZkSyncMocks.sol/MockL2Eth.json +1 -0
  339. package/dist/abi/ZkSyncMocks.sol/MockZkBridge.json +1 -0
  340. package/dist/abi/ZkSync_SpokePool.sol/IL2AssetRouter.json +1 -1
  341. package/dist/abi/ZkSync_SpokePool.sol/IL2ETH.json +1 -1
  342. package/dist/abi/ZkSync_SpokePool.sol/ZkBridgeLike.json +1 -1
  343. package/dist/abi/ZkSync_SpokePool.sol/ZkSync_SpokePool.json +1 -1
  344. package/dist/abi/Zora_Adapter.sol/Zora_Adapter.json +1 -1
  345. package/dist/abi/draft-IERC1822.sol/IERC1822Proxiable.json +1 -1
  346. package/dist/abi/draft-IERC1822Upgradeable.sol/IERC1822ProxiableUpgradeable.json +1 -1
  347. package/dist/abi/eraVM_EIP7702.sol/SimpleContract.json +1 -1
  348. package/dist/abi/eraVM_EIP7702.sol/SpokePoolEIP7702Test.json +1 -1
  349. package/dist/abi/eraVM_EIP7702.sol/TestableMockSpokePool.json +1 -1
  350. package/package.json +1 -1
@@ -1 +1 @@
1
- {"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"FILL_DEADLINE_BUFFER","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"IS_SCRIPT","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"QUOTE_TIME_BUFFER","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"file","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"getChainFamily","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"getChainId","inputs":[{"name":"chainName","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getCircleDomainId","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"getL1Addresses","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Constants.L1Addresses","components":[{"name":"finder","type":"address","internalType":"address"},{"name":"l1ArbitrumInbox","type":"address","internalType":"address"},{"name":"l1ERC20GatewayRouter","type":"address","internalType":"address"},{"name":"polygonRootChainManager","type":"address","internalType":"address"},{"name":"polygonFxRoot","type":"address","internalType":"address"},{"name":"polygonERC20Predicate","type":"address","internalType":"address"},{"name":"polygonRegistry","type":"address","internalType":"address"},{"name":"polygonDepositManager","type":"address","internalType":"address"},{"name":"cctpTokenMessenger","type":"address","internalType":"address"},{"name":"cctpV2TokenMessenger","type":"address","internalType":"address"},{"name":"cctpMessageTransmitter","type":"address","internalType":"address"},{"name":"lineaMessageService","type":"address","internalType":"address"},{"name":"lineaTokenBridge","type":"address","internalType":"address"},{"name":"scrollERC20GatewayRouter","type":"address","internalType":"address"},{"name":"scrollMessengerRelay","type":"address","internalType":"address"},{"name":"scrollGasPriceOracle","type":"address","internalType":"address"},{"name":"blastYieldManager","type":"address","internalType":"address"},{"name":"blastDaiRetriever","type":"address","internalType":"address"},{"name":"adapterStore","type":"address","internalType":"address"},{"name":"donationBox","type":"address","internalType":"address"},{"name":"hubPoolStore","type":"address","internalType":"address"},{"name":"zkBridgeHub","type":"address","internalType":"address"},{"name":"zkUsdcSharedBridge_232","type":"address","internalType":"address"},{"name":"zkUsdcSharedBridge_324","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getL2Address","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"addressType","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getOftEid","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getOpStackAddresses","inputs":[{"name":"hubChainId","type":"uint256","internalType":"uint256"},{"name":"spokeChainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Constants.OpStackAddresses","components":[{"name":"L1CrossDomainMessenger","type":"address","internalType":"address"},{"name":"L1StandardBridge","type":"address","internalType":"address"},{"name":"L1OpUSDCBridgeAdapter","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getPermit2","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getTestnetChainIds","inputs":[],"outputs":[{"name":"","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"view"},{"type":"function","name":"getUSDCAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getUSDCeAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWETHAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWghoAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWmaticAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWrappedNativeToken","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"hasCctpDomain","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}]}
1
+ {"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"FILL_DEADLINE_BUFFER","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"IS_SCRIPT","inputs":[],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"function","name":"QUOTE_TIME_BUFFER","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"file","inputs":[],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"getChainFamily","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"string","internalType":"string"}],"stateMutability":"view"},{"type":"function","name":"getChainId","inputs":[{"name":"chainName","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getCircleDomainId","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"getL1Addresses","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Constants.L1Addresses","components":[{"name":"finder","type":"address","internalType":"address"},{"name":"l1ArbitrumInbox","type":"address","internalType":"address"},{"name":"l1ERC20GatewayRouter","type":"address","internalType":"address"},{"name":"polygonRootChainManager","type":"address","internalType":"address"},{"name":"polygonFxRoot","type":"address","internalType":"address"},{"name":"polygonERC20Predicate","type":"address","internalType":"address"},{"name":"polygonRegistry","type":"address","internalType":"address"},{"name":"polygonDepositManager","type":"address","internalType":"address"},{"name":"cctpTokenMessenger","type":"address","internalType":"address"},{"name":"cctpV2TokenMessenger","type":"address","internalType":"address"},{"name":"cctpMessageTransmitter","type":"address","internalType":"address"},{"name":"lineaMessageService","type":"address","internalType":"address"},{"name":"lineaTokenBridge","type":"address","internalType":"address"},{"name":"scrollERC20GatewayRouter","type":"address","internalType":"address"},{"name":"scrollMessengerRelay","type":"address","internalType":"address"},{"name":"scrollGasPriceOracle","type":"address","internalType":"address"},{"name":"blastYieldManager","type":"address","internalType":"address"},{"name":"blastDaiRetriever","type":"address","internalType":"address"},{"name":"adapterStore","type":"address","internalType":"address"},{"name":"donationBox","type":"address","internalType":"address"},{"name":"hubPoolStore","type":"address","internalType":"address"},{"name":"zkBridgeHub","type":"address","internalType":"address"},{"name":"zkUsdcSharedBridge_232","type":"address","internalType":"address"},{"name":"zkUsdcSharedBridge_324","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getL2Address","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"},{"name":"addressType","type":"string","internalType":"string"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getOftEid","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getOpStackAddresses","inputs":[{"name":"hubChainId","type":"uint256","internalType":"uint256"},{"name":"spokeChainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"tuple","internalType":"struct Constants.OpStackAddresses","components":[{"name":"L1CrossDomainMessenger","type":"address","internalType":"address"},{"name":"L1StandardBridge","type":"address","internalType":"address"},{"name":"L1OpUSDCBridgeAdapter","type":"address","internalType":"address"}]}],"stateMutability":"view"},{"type":"function","name":"getPermit2","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getTestnetChainIds","inputs":[],"outputs":[{"name":"","type":"uint256[]","internalType":"uint256[]"}],"stateMutability":"view"},{"type":"function","name":"getUSDCAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getUSDCeAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWETHAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWghoAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWmaticAddress","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getWrappedNativeToken","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"hasCctpDomain","inputs":[{"name":"chainId","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"}],"bytecode":"0x6080806040523461027c57600c805462ff00ff1916620100011790556360f9bb1160e01b815260206004820152601860248201527f67656e6572617465642f636f6e7374616e74732e6a736f6e000000000000000060448201525f81606481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa908115610280575f916101f4575b5080516001600160401b0381116101e057600d54600181811c911680156101d6575b60208210146101c257601f811161015f575b50602091601f82116001146100ff579181925f926100f4575b50508160011b915f199060031b1c191617600d555b60405161324f90816102af8239f35b015190505f806100d0565b601f19821692600d5f52805f20915f5b8581106101475750836001951061012f575b505050811b01600d556100e5565b01515f1960f88460031b161c191690555f8080610121565b9192602060018192868501518155019401920161010f565b600d5f527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb5601f830160051c810191602084106101b8575b601f0160051c01905b8181106101ad57506100b7565b5f81556001016101a0565b9091508190610197565b634e487b7160e01b5f52602260045260245ffd5b90607f16906100a5565b634e487b7160e01b5f52604160045260245ffd5b90503d805f833e610205818361028b565b81019060208183031261027c578051906001600160401b03821161027c570181601f8201121561027c578051906001600160401b0382116101e05760405192610258601f8401601f19166020018561028b565b8284526020838301011161027c57815f9260208093018386015e830101525f610083565b5f80fd5b6040513d5f823e3d90fd5b601f909101601f19168101906001600160401b038211908210176101e05760405256fe6105c0806040526004361015610013575f80fd5b5f3560e01c9081630aa481dc146112d6575080630c615f191461127a5780633374c6001461123757806349fe78fe1461117c5780634e9aa92714610ffc57806355dd020514610f415780635c3594bd14610bad57806362651dfd14610b0c5780637135ab30146109c3578063720e417b146108665780638525855d14610824578063879d6f02146106bf578063a821ddbb146105ed578063b0d11502146104fc578063cc7cb9bc14610441578063d4d1e99814610386578063e1a1ee33146102b4578063e80cde6714610287578063f3434e35146101225763f8ccbf47146100f9575f80fd5b3461011e575f36600319011261011e57602060ff600c5460101c166040519015158152f35b5f80fd5b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa801561025a5760206101c3602682936101f9955f91610265575b506040519384917f2e555344432e0000000000000000000000000000000000000000000000000000828401528051918291018484015e81015f838201520301601f1981018352826113c7565b60405180938192631e19e65760e01b8352604060048401526101e76044840161146f565b8381036003190160248501529061144b565b03815f5160206131da5f395f51905f525afa801561025a576020915f9161022d575b506001600160a01b0360405191168152f35b61024d9150823d8411610253575b61024581836113c7565b81019061159c565b8261021b565b503d61023b565b6040513d5f823e3d90fd5b61028191503d805f833e61027981836113c7565b810190611539565b86610177565b3461011e57602036600319011261011e5760205f196102a76004356130c0565b60030b1415604051908152f35b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa90811561025a5760206101c3600860306101f99584955f9161036c575b506040519485916f1726192fa0a2222922a9a9afa6a0a81760811b828401528051918291018484015e81017f2e7065726d6974320000000000000000000000000000000000000000000000008382015203016017198101845201826113c7565b61038091503d805f833e61027981836113c7565b8761030c565b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa801561025a5760206101c3602682936101f9955f91610427575b506040519384917f2e5747484f2e0000000000000000000000000000000000000000000000000000828401528051918291018484015e81015f838201520301601f1981018352826113c7565b61043b91503d805f833e61027981836113c7565b866103db565b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa801561025a5760206101c3602682936101f9955f916104e2575b506040519384917f2e574554482e0000000000000000000000000000000000000000000000000000828401528051918291018484015e81015f838201520301601f1981018352826113c7565b6104f691503d805f833e61027981836113c7565b86610496565b3461011e57604036600319011261011e5760243567ffffffffffffffff811161011e5761052d903690600401611405565b60405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa801561025a5760206101c360018293866101f9965f926105cc575b50846030916040519687946f1726192fa0a2222922a9a9afa6a0a81760811b828701528051918291018587015e840190601760f91b84830152805192839101603183015e01015f838201520301601f1981018352826113c7565b60309192506105e586913d805f833e61027981836113c7565b929150610572565b3461011e575f36600319011261011e576040516356eef15b60e11b81526040600482015260208160606106226044830161146f565b602960f91b60408483039260031984016024870152602181527f2e54494d455f434f4e5354414e54532e51554f54455f54494d455f425546464587820152015201815f5160206131da5f395f51905f525afa801561025a575f9061068c575b602090604051908152f35b506020813d6020116106b7575b816106a6602093836113c7565b8101031261011e5760209051610681565b3d9150610699565b3461011e57602036600319011261011e576103006106de600435611688565b6001600160a01b036102e0604051928281511684528260208201511660208501528260408201511660408501528260608201511660608501528260808201511660808501528260a08201511660a08501528260c08201511660c08501528260e08201511660e085015282610100820151166101008501528261012082015116610120850152826101408201511661014085015282610160820151166101608501528261018082015116610180850152826101a0820151166101a0850152826101c0820151166101c0850152826101e0820151166101e085015282610200820151166102008501528261022082015116610220850152826102408201511661024085015282610260820151166102608501528261028082015116610280850152826102a0820151166102a0850152826102c0820151166102c08501520151166102e0820152f35b3461011e575f36600319011261011e5761086260405161084e816108478161146f565b03826113c7565b60405191829160208352602083019061144b565b0390f35b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa90811561025a57602061091f600760316109439584955f916109a9575b506040519485917017282aa12624a1afa722aa2ba7a925a99760791b828401528051918291018484015e81017f2e6f6674456964000000000000000000000000000000000000000000000000008382015203016018198101845201826113c7565b60405180938192637b048ccd60e01b8352604060048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa90811561025a575f91610977575b505f19811461011e57602090604051908152f35b90506020813d6020116109a1575b81610992602093836113c7565b8101031261011e575181610963565b3d9150610985565b6109bd91503d805f833e61027981836113c7565b876108be565b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa90811561025a576020610a7c60076031610aa0955f958691610af2575b506040519485917017282aa12624a1afa722aa2ba7a925a99760791b828401528051918291018484015e81017f2e66616d696c79000000000000000000000000000000000000000000000000008382015203016018198101845201826113c7565b604051809381926309389f5960e31b8352604060048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa801561025a57610862915f91610ad8575b5060405191829160208352602083019061144b565b610aec91503d805f833e61027981836113c7565b82610ac3565b610b0691503d8088833e61027981836113c7565b87610a1b565b3461011e575f36600319011261011e576040516356eef15b60e11b8152604060048201526020816060610b416044830161146f565b63232322a960e11b60408483039260031984016024870152602481527f2e54494d455f434f4e5354414e54532e46494c4c5f444541444c494e455f425587820152015201815f5160206131da5f395f51905f525afa801561025a575f9061068c57602090604051908152f35b3461011e57604036600319011261011e575f60408051610bcc8161138e565b828152826020820152015260405163348051d760e11b815260043560048201525f816024815f5160206131da5f395f51905f525afa90811561025a575f91610f27575b5060405163348051d760e11b815260243560048201525f816024815f5160206131da5f395f51905f525afa91821561025a57610cbc6001610d2b946020945f91610f0d575b50603660405195869281808501977f2e4f505f535441434b5f414444524553535f4d41502e0000000000000000000089528051918291018587015e840190601760f91b84830152805192839101603783015e01015f838201520301601f1981018452836113c7565b6020604051610d0760178383875180888484015e81017f2e4c3143726f7373446f6d61696e4d657373656e6765720000000000000000008382015203016008198101845201826113c7565b60405180958192631e19e65760e01b8352604060048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa91821561025a57610dbf935f93610eec575b506020604051610d9b60118383865180898484015e81017f2e4c315374616e64617264427269646765000000000000000000000000000000838201520301600e198101845201826113c7565b60405180968192631e19e65760e01b8352604060048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa93841561025a575f94610ebb575b50610e31916101c36016602080946040519485915180918484015e81017f2e4c314f705553444342726964676541646170746572000000000000000000008382015203016009198101845201826113c7565b03815f5160206131da5f395f51905f525afa801561025a576060936001600160a01b03925f92610e98575b50829081604081815197610e6f8961138e565b169687815282602082019416845201931683526040519485525116602084015251166040820152f35b83919250610eb49060203d6020116102535761024581836113c7565b9190610e5c565b6020919450916101c3601683610ee0610e3196823d84116102535761024581836113c7565b97945050505091610ddf565b610f0691935060203d6020116102535761024581836113c7565b9184610d4f565b610f2191503d805f833e61027981836113c7565b86610c54565b610f3b91503d805f833e61027981836113c7565b81610c0f565b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa801561025a5760206101c3602782936101f9955f91610fe2575b506040519384917f2e55534443652e00000000000000000000000000000000000000000000000000828401528051918291018484015e81015f838201520301601f1981018352826113c7565b610ff691503d805f833e61027981836113c7565b86610f96565b3461011e575f36600319011261011e5760405163522074ab60e01b8152604060048201525f8160406110306044830161146f565b7f2e544553544e45545f434841494e5f49447300000000000000000000000000006020848303926003198401602487015260128152015201815f5160206131da5f395f51905f525afa90811561025a575f916110cc575b506040518091602082016020835281518091526020604084019201905f5b8181106110b3575050500390f35b82518452859450602093840193909201916001016110a5565b90503d805f833e6110dd81836113c7565b81019060208183031261011e5780519067ffffffffffffffff821161011e57019080601f8301121561011e5781519167ffffffffffffffff8311611168578260051b906040519361113160208401866113c7565b845260208085019282010192831161011e57602001905b8282106111585750505081611087565b8151815260209182019101611148565b634e487b7160e01b5f52604160045260245ffd5b3461011e57602036600319011261011e5760405163348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa801561025a5760206101c3603782936101f9955f9161121d575b506040519384917f2e575241505045445f4e41544956455f544f4b454e532e000000000000000000828401528051918291018484015e81015f838201520301601f1981018352826113c7565b61123191503d805f833e61027981836113c7565b866111d1565b3461011e57602036600319011261011e5760043567ffffffffffffffff811161011e5761127261126d6020923690600401611405565b6115bb565b604051908152f35b3461011e57602036600319011261011e576112966004356130c0565b600381900b5f1981036112a7575f80fd5b5f81129081156112c8575b5061011e5760209063ffffffff60405191168152f35b63ffffffff915013826112b2565b3461011e57602036600319011261011e5763348051d760e11b815260048035908201525f816024815f5160206131da5f395f51905f525afa801561025a5760206101c3602882936101f9955f91611374575b506040519384917f2e574d415449432e000000000000000000000000000000000000000000000000828401528051918291018484015e81015f838201520301601f1981018352826113c7565b61138891503d805f833e61027981836113c7565b86611328565b6060810190811067ffffffffffffffff82111761116857604052565b610300810190811067ffffffffffffffff82111761116857604052565b90601f8019910116810190811067ffffffffffffffff82111761116857604052565b67ffffffffffffffff811161116857601f01601f191660200190565b81601f8201121561011e5780359061141c826113e9565b9261142a60405194856113c7565b8284526020838301011161011e57815f926020809301838601378301015290565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b905f91600d54908160011c9160018116801561152f575b60208410811461151b578383529081156114ff57506001146114a6575050565b600d5f9081529293509091907fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb55b8383106114e5575060209250010190565b6001816020929493945483858701015201910191906114d4565b9050602093945060ff929192191683830152151560051b010190565b634e487b7160e01b5f52602260045260245ffd5b92607f1692611486565b60208183031261011e5780519067ffffffffffffffff821161011e570181601f8201121561011e5780519061156d826113e9565b9261157b60405194856113c7565b8284526020838301011161011e57815f9260208093018386015e8301015290565b9081602091031261011e57516001600160a01b038116810361011e5790565b602080611612602b611636946040519384917f2e434841494e5f4944732e000000000000000000000000000000000000000000828401528051918291018484015e81015f838201520301601f1981018352826113c7565b604051809381926356eef15b60e11b8352604060048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa90811561025a575f91611659575090565b90506020813d602011611680575b81611674602093836113c7565b8101031261011e575190565b3d9150611667565b604051611694816113aa565b5f81525f60208201525f60408201525f60608201525f60808201525f60a08201525f60c08201525f60e08201525f6101008201525f6101208201525f6101408201525f6101608201525f6101808201525f6101a08201525f6101c08201525f6101e08201525f6102008201525f6102208201525f6102408201525f6102608201525f6102808201525f6102a08201525f6102c08201525f6102e08201525060405163348051d760e11b81528160048201525f816024815f5160206131da5f395f51905f525afa801561025a575f6105a0526130a3575b50604061058081905280516117b29161178390826113c7565b600781527f4d41494e4e45540000000000000000000000000000000000000000000000000060208201526115bb565b8114908115613056575b506117c5575f80fd5b611858602061058051515f5160206131fa5f395f51905f528282015261183060076030836105a0515180876105a051018484015e81017f2e66696e646572000000000000000000000000000000000000000000000000008382015203016018198101845201826113c7565b610580515180938192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa908115612c8a575f91613037575b506118e4602061058051515f5160206131fa5f395f51905f528282015261183060106030836105a0515180876105a051018484015e81017f2e6c31417262697472756d496e626f7800000000000000000000000000000000838201520301600f198101845201826113c7565b03815f5160206131da5f395f51905f525afa8015612c8a575f6101e052613015575b50611972602061058051515f5160206131fa5f395f51905f528282015261183060156030836105a0515180876105a051018484015e81017f2e6c31455243323047617465776179526f757465720000000000000000000000838201520301600a198101845201826113c7565b03815f5160206131da5f395f51905f525afa8015612c8a575f61014052612ff3575b50611a00602061058051515f5160206131fa5f395f51905f528282015261183060186030836105a0515180876105a051018484015e81017f2e706f6c79676f6e526f6f74436861696e4d616e6167657200000000000000008382015203016007198101845201826113c7565b03815f5160206131da5f395f51905f525afa8015612c8a57611ab4915f91612fd4575b50602061058051515f5160206131fa5f395f51905f5282820152611a8c600e6030836105a0515180876105a051018484015e81017f2e706f6c79676f6e4678526f6f740000000000000000000000000000000000008382015203016011198101845201826113c7565b610580515180948192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa908115612c8a57611b69925f92612fb3575b50602061058051515f5160206131fa5f395f51905f5282820152611b4160166030836105a0515180876105a051018484015e81017f2e706f6c79676f6e4552433230507265646963617465000000000000000000008382015203016009198101845201826113c7565b610580515180958192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa8015612c8a57611c1d935f91612f94575b50602061058051515f5160206131fa5f395f51905f5282820152611bf560106030836105a0515180876105a051018484015e81017f2e706f6c79676f6e526567697374727900000000000000000000000000000000838201520301600f198101845201826113c7565b610580515180968192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa908115612c8a57611cd2945f92612f73575b50602061058051515f5160206131fa5f395f51905f5282820152611caa60166030836105a0515180876105a051018484015e81017f2e706f6c79676f6e4465706f7369744d616e61676572000000000000000000008382015203016009198101845201826113c7565b610580515180978192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa948515612c8a575f95612f50575b50611d889495602061058051515f5160206131fa5f395f51905f5282820152611d6060136030836105a0515180876105a051018484015e81017f2e63637470546f6b656e4d657373656e67657200000000000000000000000000838201520301600c198101845201826113c7565b610580515180988192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa918215612c8a57611e3d965f93612f2f575b50602061058051515f5160206131fa5f395f51905f5282820152611e1560156030836105a0515180876105a051018484015e81017f2e636374705632546f6b656e4d657373656e6765720000000000000000000000838201520301600a198101845201826113c7565b610580515180998192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa908115612c8a57611ef2975f92612f0e575b50602061058051515f5160206131fa5f395f51905f5282820152611eca60176030836105a0515180876105a051018484015e81017f2e636374704d6573736167655472616e736d69747465720000000000000000008382015203016008198101845201826113c7565b6105805151809a8192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa938415612c8a57611fa7985f95612eed575b50602061058051515f5160206131fa5f395f51905f5282820152611f7f60146030836105a0515180876105a051018484015e81017f2e6c696e65614d65737361676553657276696365000000000000000000000000838201520301600b198101845201826113c7565b6105805151809b8192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa968715612c8a5761205c995f98612ecc575b50602061058051515f5160206131fa5f395f51905f528282015261203460116030836105a0515180876105a051018484015e81017f2e6c696e6561546f6b656e427269646765000000000000000000000000000000838201520301600e198101845201826113c7565b6105805151809c8192631e19e65760e01b83526105805160048401526101e76044840161146f565b03815f5160206131da5f395f51905f525afa998a15612c8a575f9a612eab575b506120e8602061058051515f5160206131fa5f395f51905f528282015261183060196030836105a0515180876105a051018484015e81017f2e7363726f6c6c455243323047617465776179526f75746572000000000000008382015203016006198101845201826113c7565b03815f5160206131da5f395f51905f525afa8015612c8a575f61046052612e89575b50612176602061058051515f5160206131fa5f395f51905f528282015261183060156030836105a0515180876105a051018484015e81017f2e7363726f6c6c4d657373656e67657252656c61790000000000000000000000838201520301600a198101845201826113c7565b03815f5160206131da5f395f51905f525afa8015612c8a575f61052052612e67575b506105805151610560525f5160206131fa5f395f51905f526020610560510152612218601560306105a051518060206105a051018361056051015e61056051017f2e7363726f6c6c47617350726963654f7261636c6500000000000000000000008282015261056051900301600a198101610560515201610560516113c7565b610580515161054052631e19e65760e01b6105405152610580516004610540510152602061224b6044610540510161146f565b600319610540518203016024610540510152610540519061227361054051916105605161144b565b03610540515f5160206131da5f395f51905f525afa610500526105005115612c8a575f6104c05261050051612e2d575b61058051516104e0525f5160206131fa5f395f51905f5260206104e0510152612322601260306105a051518060206105a05101836104e051015e6104e051017f2e626c6173745969656c644d616e616765720000000000000000000000000000828201526104e051900301600d1981016104e05152016104e0516113c7565b61058051516104a052631e19e65760e01b6104a051526105805160046104a0510152602061235560446104a0510161146f565b6003196104a05182030160246104a05101526104a0519061237d6104a051916104e05161144b565b036104a0515f5160206131da5f395f51905f525afa610480526104805115612c8a575f6104405261048051612df3575b6105805151610420525f5160206131fa5f395f51905f52602061042051015261242c601260306105a051518060206105a051018361042051015e61042051017f2e626c61737444616952657472696576657200000000000000000000000000008282015261042051900301600d198101610420515201610420516113c7565b610580515161040052631e19e65760e01b6104005152610580516004610400510152602061245f6044610400510161146f565b600319610400518203016024610400510152610400519061248761040051916104205161144b565b03610400515f5160206131da5f395f51905f525afa6103e0526103e05115612c8a575f6103c0526103e051612db9575b61058051516103a0525f5160206131fa5f395f51905f5260206103a0510152612536600d60306105a051518060206105a05101836103a051015e6103a051017f2e6164617074657253746f726500000000000000000000000000000000000000828201526103a05190030160121981016103a05152016103a0516113c7565b610580515161038052631e19e65760e01b610380515261058051600461038051015260206125696044610380510161146f565b600319610380518203016024610380510152610380519061259161038051916103a05161144b565b03610380515f5160206131da5f395f51905f525afa610360526103605115612c8a575f6103405261036051612d7f575b6105805151610320525f5160206131fa5f395f51905f526020610320510152612640600c60306105a051518060206105a051018361032051015e61032051017f2e646f6e6174696f6e426f78000000000000000000000000000000000000000082820152610320519003016013198101610320515201610320516113c7565b610580515161030052631e19e65760e01b610300515261058051600461030051015260206126736044610300510161146f565b600319610300518203016024610300510152610300519061269b61030051916103205161144b565b03610300515f5160206131da5f395f51905f525afa6102e0526102e05115612c8a575f6102c0526102e051612d45575b61058051516102a0525f5160206131fa5f395f51905f5260206102a051015261274a600d60306105a051518060206105a05101836102a051015e6102a051017f2e687562506f6f6c53746f726500000000000000000000000000000000000000828201526102a05190030160121981016102a05152016102a0516113c7565b610580515161028052631e19e65760e01b6102805152610580516004610280510152602061277d6044610280510161146f565b60031961028051820301602461028051015261028051906127a561028051916102a05161144b565b03610280515f5160206131da5f395f51905f525afa610260526102605115612c8a575f6102405261026051612d0b575b602061058051515f5160206131fa5f395f51905f528282015261283d600c6030836105a0515180876105a051018484015e81017f2e7a6b42726964676548756200000000000000000000000000000000000000008382015203016013198101845201826113c7565b610580515161022052631e19e65760e01b610220515261058051600461022051015261286e6044610220510161146f565b6102208051808303600319016024909101525191829161288d9161144b565b03610220515f5160206131da5f395f51905f525afa610200526102005115612c8a575f6101c05261020051612cd1575b61058051516101a0525f5160206131fa5f395f51905f5260206101a051015261293c601760306105a051518060206105a05101836101a051015e6101a051017f2e7a6b557364635368617265644272696467655f323332000000000000000000828201526101a05190030160081981016101a05152016101a0516113c7565b610580515161018052631e19e65760e01b6101805152610580516004610180510152602061296f6044610180510161146f565b600319610180518203016024610180510152610180519061299761018051916101a05161144b565b03610180515f5160206131da5f395f51905f525afa610160526101605115612c8a575f6101205261016051612c97575b6105805151610100525f5160206131fa5f395f51905f526020610100510152612a46601760306105a051518060206105a051018361010051015e61010051017f2e7a6b557364635368617265644272696467655f33323400000000000000000082820152610100519003016008198101610100515201610100516113c7565b610580515160e052631e19e65760e01b60e0515261058051600460e05101526020612a75604460e0510161146f565b60031960e051820301602460e051015260e05190612a9960e051916101005161144b565b0360e0515f5160206131da5f395f51905f525afa60c05260c05115612c8a576001600160a01b039a8b809a9881809a9681809a9881809a9881809a5f60a05260c051612c54575b6105805151608052612af36080516113aa565b1660805152816101e05116602060805101528161014051166105805160805101521660606080510152166080805101521660a060805101521660c060805101521660e060805101521661010060805101521661012060805101521661014060805101521661016060805101521661018060805101526001600160a01b0361046051166101a060805101526001600160a01b0361052051166101c060805101526001600160a01b036104c051166101e060805101526001600160a01b03610440511661020060805101526001600160a01b036103c0511661022060805101526001600160a01b03610340511661024060805101526001600160a01b036102c0511661026060805101526001600160a01b03610240511661028060805101526001600160a01b036101c051166102a060805101526001600160a01b0361012051166102c060805101526001600160a01b0360a051166102e0608051015260805190565b60203d602011612c83575b80612c6f612c7b9260e0516113c7565b60e0510160e05161159c565b60a052612ae0565b503d612c5f565b61058051513d5f823e3d90fd5b60203d602011612cca575b80612cb3612cc192610180516113c7565b61018051016101805161159c565b610120526129c7565b503d612ca2565b60203d602011612d04575b80612ced612cfb92610220516113c7565b61022051016102205161159c565b6101c0526128bd565b503d612cdc565b60203d602011612d3e575b80612d27612d3592610280516113c7565b61028051016102805161159c565b610240526127d5565b503d612d16565b60203d602011612d78575b80612d61612d6f92610300516113c7565b61030051016103005161159c565b6102c0526126cb565b503d612d50565b60203d602011612db2575b80612d9b612da992610380516113c7565b61038051016103805161159c565b610340526125c1565b503d612d8a565b60203d602011612dec575b80612dd5612de392610400516113c7565b61040051016104005161159c565b6103c0526124b7565b503d612dc4565b60203d602011612e26575b80612e0f612e1d926104a0516113c7565b6104a051016104a05161159c565b610440526123ad565b503d612dfe565b60203d602011612e60575b80612e49612e5792610540516113c7565b61054051016105405161159c565b6104c0526122a3565b503d612e38565b612e7f9060203d6020116102535761024581836113c7565b610520525f612198565b612ea19060203d6020116102535761024581836113c7565b610460525f61210a565b612ec5919a5060203d6020116102535761024581836113c7565b985f61207c565b612ee691985060203d6020116102535761024581836113c7565b965f611fcb565b612f0791955060203d6020116102535761024581836113c7565b935f611f16565b612f2891925060203d6020116102535761024581836113c7565b905f611e61565b612f4991935060203d6020116102535761024581836113c7565b915f611dac565b611d889550612f6d9060203d6020116102535761024581836113c7565b94611cf2565b612f8d91925060203d6020116102535761024581836113c7565b905f611c41565b612fad915060203d6020116102535761024581836113c7565b5f611b8c565b612fcd91925060203d6020116102535761024581836113c7565b905f611ad8565b612fed915060203d6020116102535761024581836113c7565b5f611a23565b61300b9060203d6020116102535761024581836113c7565b610140525f611994565b61302d9060203d6020116102535761024581836113c7565b6101e0525f611906565b613050915060203d6020116102535761024581836113c7565b5f611878565b905061309c610580515161306d61058051826113c7565b600781527f5345504f4c49410000000000000000000000000000000000000000000000000060208201526115bb565b145f6117bc565b6130b6903d805f833e61027981836113c7565b6105a0525f61176a565b6040519063348051d760e11b825260048201525f816024815f5160206131da5f395f51905f525afa90811561025a57602061091f600b60316131669584955f916131bf575b506040519485917017282aa12624a1afa722aa2ba7a925a99760791b828401528051918291018484015e81017f2e63637470446f6d61696e0000000000000000000000000000000000000000008382015203016014198101845201826113c7565b03815f5160206131da5f395f51905f525afa90811561025a575f9161318d575b5060030b90565b90506020813d6020116131b7575b816131a8602093836113c7565b8101031261011e57515f613186565b3d915061319b565b6131d391503d805f833e61027981836113c7565b5f61310556fe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12d2e4c315f414444524553535f4d41502e00000000000000000000000000000000a26469706673582212208cf9f1f03f4f7c5dd6a0338b24a7474b342d444c47ce3e05891cfe8e0899eb3e64736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"ancillaryBytesLimit","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"}]}
1
+ {"abi":[{"type":"function","name":"ancillaryBytesLimit","inputs":[],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"}],"bytecode":"0x6080806040523460175760719081601c823930815050f35b5f80fdfe60808060405260043610156011575f80fd5b5f3560e01c63c371dda7146023575f80fd5b5f3660031901126037578061200060209252f35b5f80fdfea26469706673582212203f3f20e964e4a0b7a4e44610985987300608defafd78222cac66925fe25936f764736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"Bridge","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"ChildMessenger","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"CollateralWhitelist","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"FinancialContractsAdmin","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"GenericHandler","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"IdentifierWhitelist","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OptimisticOracle","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OptimisticOracleV2","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OptimisticOracleV3","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"Oracle","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OracleHub","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OracleSpoke","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"Registry","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"SkinnyOptimisticOracle","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"Store","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"}]}
1
+ {"abi":[{"type":"function","name":"Bridge","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"ChildMessenger","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"CollateralWhitelist","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"FinancialContractsAdmin","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"GenericHandler","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"IdentifierWhitelist","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OptimisticOracle","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OptimisticOracleV2","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OptimisticOracleV3","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"Oracle","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OracleHub","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"OracleSpoke","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"Registry","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"SkinnyOptimisticOracle","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"Store","inputs":[],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"}],"bytecode":"0x60808060405234601957610414908161001e823930815050f35b5f80fdfe6080806040526004361015610012575f80fd5b5f3560e01c908163079b6c63146103ab575080631a0fbfb3146103765780631a4dbd1c146103415780632a71e5b31461030c57806342e90c33146102d75780634596ac9b146102a2578063473e7ccd1461026d5780634f4a180b14610238578063598dd097146102035780635fa2ef10146101ce5780637608ea2f146101995780637db9743b146101645780638adca47f1461012f578063f02f8e83146100fa5763f24a534e146100c1575f80fd5b5f3660031901126100f65760206040517f4f7261636c6500000000000000000000000000000000000000000000000000008152f35b5f80fd5b5f3660031901126100f65760206040517f4f7074696d69737469634f7261636c65563300000000000000000000000000008152f35b5f3660031901126100f65760206040517f4f7261636c6553706f6b650000000000000000000000000000000000000000008152f35b5f3660031901126100f65760206040517f52656769737472790000000000000000000000000000000000000000000000008152f35b5f3660031901126100f65760206040517f4f7261636c6548756200000000000000000000000000000000000000000000008152f35b5f3660031901126100f65760206040517f42726964676500000000000000000000000000000000000000000000000000008152f35b5f3660031901126100f65760206040517f436f6c6c61746572616c57686974656c697374000000000000000000000000008152f35b5f3660031901126100f65760206040517f4964656e74696669657257686974656c697374000000000000000000000000008152f35b5f3660031901126100f65760206040517f4f7074696d69737469634f7261636c65563200000000000000000000000000008152f35b5f3660031901126100f65760206040517f536b696e6e794f7074696d69737469634f7261636c65000000000000000000008152f35b5f3660031901126100f65760206040517f53746f72650000000000000000000000000000000000000000000000000000008152f35b5f3660031901126100f65760206040517f46696e616e6369616c436f6e74726163747341646d696e0000000000000000008152f35b5f3660031901126100f65760206040517f4f7074696d69737469634f7261636c65000000000000000000000000000000008152f35b5f3660031901126100f65760206040517f4368696c644d657373656e6765720000000000000000000000000000000000008152f35b5f3660031901126100f657807f47656e6572696348616e646c657200000000000000000000000000000000000060209252f3fea2646970667358221220e9b1b414b497c3b8ece9c3412c1d1c0ae8ccf7bd54c45e86cbffc691f1ec139864736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint64","indexed":false,"internalType":"uint64"}],"anonymous":false},{"type":"error","name":"InvalidInitialization","inputs":[]},{"type":"error","name":"NotInitializing","inputs":[]}]}
1
+ {"abi":[{"type":"event","name":"Initialized","inputs":[{"name":"version","type":"uint64","indexed":false,"internalType":"uint64"}],"anonymous":false},{"type":"error","name":"InvalidInitialization","inputs":[]},{"type":"error","name":"NotInitializing","inputs":[]}],"bytecode":"0x"}
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"HYPE_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"USDC_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"_getMaxLeverage","inputs":[{"name":"perpIndex","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"_liquidateUser","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"coreUserExists","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"executeNativeTransfer","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"from","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executePerpLimitOrder","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.LimitOrderAction","components":[{"name":"asset","type":"uint32","internalType":"uint32"},{"name":"isBuy","type":"bool","internalType":"bool"},{"name":"limitPx","type":"uint64","internalType":"uint64"},{"name":"sz","type":"uint64","internalType":"uint64"},{"name":"reduceOnly","type":"bool","internalType":"bool"},{"name":"encodedTif","type":"uint8","internalType":"uint8"},{"name":"cloid","type":"uint128","internalType":"uint128"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeSpotLimitOrder","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.LimitOrderAction","components":[{"name":"asset","type":"uint32","internalType":"uint32"},{"name":"isBuy","type":"bool","internalType":"bool"},{"name":"limitPx","type":"uint64","internalType":"uint64"},{"name":"sz","type":"uint64","internalType":"uint64"},{"name":"reduceOnly","type":"bool","internalType":"bool"},{"name":"encodedTif","type":"uint8","internalType":"uint8"},{"name":"cloid","type":"uint128","internalType":"uint128"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeSpotSend","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.SpotSendAction","components":[{"name":"destination","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"_wei","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeStakingDeposit","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.StakingDepositAction","components":[{"name":"_wei","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeStakingWithdraw","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.StakingWithdrawAction","components":[{"name":"_wei","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeTokenDelegate","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.TokenDelegateAction","components":[{"name":"validator","type":"address","internalType":"address"},{"name":"_wei","type":"uint64","internalType":"uint64"},{"name":"isUndelegate","type":"bool","internalType":"bool"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeTokenTransfer","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"from","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executeUsdClassTransfer","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.UsdClassTransferAction","components":[{"name":"ntl","type":"uint64","internalType":"uint64"},{"name":"toPerp","type":"bool","internalType":"bool"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeVaultTransfer","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.VaultTransferAction","components":[{"name":"vault","type":"address","internalType":"address"},{"name":"isDeposit","type":"bool","internalType":"bool"},{"name":"usd","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceAccountActivation","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceDelegation","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forcePerpBalance","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceSpot","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceStaking","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"},{"name":"name","type":"string","internalType":"string"},{"name":"evmContract","type":"address","internalType":"address"},{"name":"szDecimals","type":"uint8","internalType":"uint8"},{"name":"weiDecimals","type":"uint8","internalType":"uint8"},{"name":"evmExtraWeiDecimals","type":"int8","internalType":"int8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceVaultEquity","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"isLiquidatable","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"liquidatePositions","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"processPendingOrders","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"readAccountMarginSummary","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.AccountMarginSummary","components":[{"name":"accountValue","type":"int64","internalType":"int64"},{"name":"marginUsed","type":"uint64","internalType":"uint64"},{"name":"ntlPos","type":"uint64","internalType":"uint64"},{"name":"rawUsd","type":"int64","internalType":"int64"}]}],"stateMutability":"view"},{"type":"function","name":"readDelegation","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"validator","type":"address","internalType":"address"}],"outputs":[{"name":"delegation","type":"tuple","internalType":"struct PrecompileLib.Delegation","components":[{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readDelegations","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"userDelegations","type":"tuple[]","internalType":"struct PrecompileLib.Delegation[]","components":[{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readDelegatorSummary","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"summary","type":"tuple","internalType":"struct PrecompileLib.DelegatorSummary","components":[{"name":"delegated","type":"uint64","internalType":"uint64"},{"name":"undelegated","type":"uint64","internalType":"uint64"},{"name":"totalPendingWithdrawal","type":"uint64","internalType":"uint64"},{"name":"nPendingWithdrawals","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readMarkPx","inputs":[{"name":"perp","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"nonpayable"},{"type":"function","name":"readPosition","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"perp","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.Position","components":[{"name":"szi","type":"int64","internalType":"int64"},{"name":"entryNtl","type":"uint64","internalType":"uint64"},{"name":"isolatedRawUsd","type":"int64","internalType":"int64"},{"name":"leverage","type":"uint32","internalType":"uint32"},{"name":"isIsolated","type":"bool","internalType":"bool"}]}],"stateMutability":"view"},{"type":"function","name":"readSpotBalance","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.SpotBalance","components":[{"name":"total","type":"uint64","internalType":"uint64"},{"name":"hold","type":"uint64","internalType":"uint64"},{"name":"entryNtl","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"readSpotPx","inputs":[{"name":"spotMarketId","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"readTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.TokenInfo","components":[{"name":"name","type":"string","internalType":"string"},{"name":"spots","type":"uint64[]","internalType":"uint64[]"},{"name":"deployerTradingFeeShare","type":"uint64","internalType":"uint64"},{"name":"deployer","type":"address","internalType":"address"},{"name":"evmContract","type":"address","internalType":"address"},{"name":"szDecimals","type":"uint8","internalType":"uint8"},{"name":"weiDecimals","type":"uint8","internalType":"uint8"},{"name":"evmExtraWeiDecimals","type":"int8","internalType":"int8"}]}],"stateMutability":"view"},{"type":"function","name":"readUserVaultEquity","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.UserVaultEquity","components":[{"name":"equity","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readWithdrawable","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.Withdrawable","components":[{"name":"withdrawable","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"registerTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerValidator","inputs":[{"name":"validator","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMarkPx","inputs":[{"name":"perp","type":"uint32","internalType":"uint32"},{"name":"priceDiffBps","type":"uint64","internalType":"uint64"},{"name":"isIncrease","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMarkPx","inputs":[{"name":"perp","type":"uint32","internalType":"uint32"},{"name":"markPx","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSpotPx","inputs":[{"name":"spotMarketId","type":"uint32","internalType":"uint32"},{"name":"spotPx","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSpotPx","inputs":[{"name":"spotMarketId","type":"uint32","internalType":"uint32"},{"name":"priceDiffBps","type":"uint64","internalType":"uint64"},{"name":"isIncrease","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setVaultMultiplier","inputs":[{"name":"vault","type":"address","internalType":"address"},{"name":"multiplier","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"tokenExists","inputs":[{"name":"token","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"event","name":"SlotFound","inputs":[{"name":"who","type":"address","indexed":false,"internalType":"address"},{"name":"fsig","type":"bytes4","indexed":false,"internalType":"bytes4"},{"name":"keysHash","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"slot","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"WARNING_UninitedSlot","inputs":[{"name":"who","type":"address","indexed":false,"internalType":"address"},{"name":"slot","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"PrecompileLib__AccountMarginSummaryPrecompileFailed","inputs":[]},{"type":"error","name":"PrecompileLib__MarkPxPrecompileFailed","inputs":[]},{"type":"error","name":"PrecompileLib__SpotInfoPrecompileFailed","inputs":[]},{"type":"error","name":"PrecompileLib__SpotPxPrecompileFailed","inputs":[]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]}]}
1
+ {"abi":[{"type":"function","name":"HYPE_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"USDC_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"_getMaxLeverage","inputs":[{"name":"perpIndex","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"","type":"uint32","internalType":"uint32"}],"stateMutability":"view"},{"type":"function","name":"_liquidateUser","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"coreUserExists","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"executeNativeTransfer","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"from","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executePerpLimitOrder","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.LimitOrderAction","components":[{"name":"asset","type":"uint32","internalType":"uint32"},{"name":"isBuy","type":"bool","internalType":"bool"},{"name":"limitPx","type":"uint64","internalType":"uint64"},{"name":"sz","type":"uint64","internalType":"uint64"},{"name":"reduceOnly","type":"bool","internalType":"bool"},{"name":"encodedTif","type":"uint8","internalType":"uint8"},{"name":"cloid","type":"uint128","internalType":"uint128"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeSpotLimitOrder","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.LimitOrderAction","components":[{"name":"asset","type":"uint32","internalType":"uint32"},{"name":"isBuy","type":"bool","internalType":"bool"},{"name":"limitPx","type":"uint64","internalType":"uint64"},{"name":"sz","type":"uint64","internalType":"uint64"},{"name":"reduceOnly","type":"bool","internalType":"bool"},{"name":"encodedTif","type":"uint8","internalType":"uint8"},{"name":"cloid","type":"uint128","internalType":"uint128"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeSpotSend","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.SpotSendAction","components":[{"name":"destination","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"_wei","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeStakingDeposit","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.StakingDepositAction","components":[{"name":"_wei","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeStakingWithdraw","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.StakingWithdrawAction","components":[{"name":"_wei","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeTokenDelegate","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.TokenDelegateAction","components":[{"name":"validator","type":"address","internalType":"address"},{"name":"_wei","type":"uint64","internalType":"uint64"},{"name":"isUndelegate","type":"bool","internalType":"bool"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeTokenTransfer","inputs":[{"name":"","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"from","type":"address","internalType":"address"},{"name":"value","type":"uint256","internalType":"uint256"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"executeUsdClassTransfer","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.UsdClassTransferAction","components":[{"name":"ntl","type":"uint64","internalType":"uint64"},{"name":"toPerp","type":"bool","internalType":"bool"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"executeVaultTransfer","inputs":[{"name":"sender","type":"address","internalType":"address"},{"name":"action","type":"tuple","internalType":"struct CoreState.VaultTransferAction","components":[{"name":"vault","type":"address","internalType":"address"},{"name":"isDeposit","type":"bool","internalType":"bool"},{"name":"usd","type":"uint64","internalType":"uint64"}]}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceAccountActivation","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceDelegation","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forcePerpBalance","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceSpot","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceStaking","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"},{"name":"name","type":"string","internalType":"string"},{"name":"evmContract","type":"address","internalType":"address"},{"name":"szDecimals","type":"uint8","internalType":"uint8"},{"name":"weiDecimals","type":"uint8","internalType":"uint8"},{"name":"evmExtraWeiDecimals","type":"int8","internalType":"int8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceVaultEquity","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"isLiquidatable","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"nonpayable"},{"type":"function","name":"liquidatePositions","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"processPendingOrders","inputs":[],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"readAccountMarginSummary","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.AccountMarginSummary","components":[{"name":"accountValue","type":"int64","internalType":"int64"},{"name":"marginUsed","type":"uint64","internalType":"uint64"},{"name":"ntlPos","type":"uint64","internalType":"uint64"},{"name":"rawUsd","type":"int64","internalType":"int64"}]}],"stateMutability":"view"},{"type":"function","name":"readDelegation","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"validator","type":"address","internalType":"address"}],"outputs":[{"name":"delegation","type":"tuple","internalType":"struct PrecompileLib.Delegation","components":[{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readDelegations","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"userDelegations","type":"tuple[]","internalType":"struct PrecompileLib.Delegation[]","components":[{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readDelegatorSummary","inputs":[{"name":"user","type":"address","internalType":"address"}],"outputs":[{"name":"summary","type":"tuple","internalType":"struct PrecompileLib.DelegatorSummary","components":[{"name":"delegated","type":"uint64","internalType":"uint64"},{"name":"undelegated","type":"uint64","internalType":"uint64"},{"name":"totalPendingWithdrawal","type":"uint64","internalType":"uint64"},{"name":"nPendingWithdrawals","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readMarkPx","inputs":[{"name":"perp","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"nonpayable"},{"type":"function","name":"readPosition","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"perp","type":"uint16","internalType":"uint16"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.Position","components":[{"name":"szi","type":"int64","internalType":"int64"},{"name":"entryNtl","type":"uint64","internalType":"uint64"},{"name":"isolatedRawUsd","type":"int64","internalType":"int64"},{"name":"leverage","type":"uint32","internalType":"uint32"},{"name":"isIsolated","type":"bool","internalType":"bool"}]}],"stateMutability":"view"},{"type":"function","name":"readSpotBalance","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.SpotBalance","components":[{"name":"total","type":"uint64","internalType":"uint64"},{"name":"hold","type":"uint64","internalType":"uint64"},{"name":"entryNtl","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"readSpotPx","inputs":[{"name":"spotMarketId","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"readTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.TokenInfo","components":[{"name":"name","type":"string","internalType":"string"},{"name":"spots","type":"uint64[]","internalType":"uint64[]"},{"name":"deployerTradingFeeShare","type":"uint64","internalType":"uint64"},{"name":"deployer","type":"address","internalType":"address"},{"name":"evmContract","type":"address","internalType":"address"},{"name":"szDecimals","type":"uint8","internalType":"uint8"},{"name":"weiDecimals","type":"uint8","internalType":"uint8"},{"name":"evmExtraWeiDecimals","type":"int8","internalType":"int8"}]}],"stateMutability":"view"},{"type":"function","name":"readUserVaultEquity","inputs":[{"name":"user","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.UserVaultEquity","components":[{"name":"equity","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}]}],"stateMutability":"view"},{"type":"function","name":"readWithdrawable","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[{"name":"","type":"tuple","internalType":"struct PrecompileLib.Withdrawable","components":[{"name":"withdrawable","type":"uint64","internalType":"uint64"}]}],"stateMutability":"nonpayable"},{"type":"function","name":"registerTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerValidator","inputs":[{"name":"validator","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMarkPx","inputs":[{"name":"perp","type":"uint32","internalType":"uint32"},{"name":"priceDiffBps","type":"uint64","internalType":"uint64"},{"name":"isIncrease","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setMarkPx","inputs":[{"name":"perp","type":"uint32","internalType":"uint32"},{"name":"markPx","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSpotPx","inputs":[{"name":"spotMarketId","type":"uint32","internalType":"uint32"},{"name":"spotPx","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setSpotPx","inputs":[{"name":"spotMarketId","type":"uint32","internalType":"uint32"},{"name":"priceDiffBps","type":"uint64","internalType":"uint64"},{"name":"isIncrease","type":"bool","internalType":"bool"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"setVaultMultiplier","inputs":[{"name":"vault","type":"address","internalType":"address"},{"name":"multiplier","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"tokenExists","inputs":[{"name":"token","type":"uint32","internalType":"uint32"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"view"},{"type":"event","name":"SlotFound","inputs":[{"name":"who","type":"address","indexed":false,"internalType":"address"},{"name":"fsig","type":"bytes4","indexed":false,"internalType":"bytes4"},{"name":"keysHash","type":"bytes32","indexed":false,"internalType":"bytes32"},{"name":"slot","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"event","name":"WARNING_UninitedSlot","inputs":[{"name":"who","type":"address","indexed":false,"internalType":"address"},{"name":"slot","type":"uint256","indexed":false,"internalType":"uint256"}],"anonymous":false},{"type":"error","name":"PrecompileLib__AccountMarginSummaryPrecompileFailed","inputs":[]},{"type":"error","name":"PrecompileLib__MarkPxPrecompileFailed","inputs":[]},{"type":"error","name":"PrecompileLib__SpotInfoPrecompileFailed","inputs":[]},{"type":"error","name":"PrecompileLib__SpotPxPrecompileFailed","inputs":[]},{"type":"error","name":"SafeCastOverflowedUintDowncast","inputs":[{"name":"bits","type":"uint8","internalType":"uint8"},{"name":"value","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SafeERC20FailedOperation","inputs":[{"name":"token","type":"address","internalType":"address"}]}],"bytecode":"0x60a08060405234604f57466103e60360465761ffff6104515b1660805261865f908161005482396080518181816102d901528181611dcd015281816147290152615fb30152f35b61ffff60966018565b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c8063012755c214613a76578063042e02cf14613a535780630810bf0214613a16578063132ce2d61461348e578063180ed246146134455780631db9707c14613293578063233cc86a146132075780632f9c29a2146131c857806335c4a8b11461316a57806336d92dc61461312e578063554e11081461310d5780635b2de48b146130065780635e3dcdab14612fec5780636040b052146121635780636272f20a14612113578063668adf861461209d5780636780a7d41461208557806368ba8652146120505780636c27e54614611f6257806371291d1b14611e6e578063757428fb14611dab5780637fa6938314611c155780638dca414d14611bb257806394a0b77114611b6257806397fba54614611a8357806399c9189d14611a6057806399e0843f146119885780639a6538b41461192a5780639c93e159146118ff5780639dbfb13f146118d25780639fca5169146118a8578063afe1309e14611855578063b4240661146115db578063ccd9349c1461154f578063cfdc269414611347578063da728ceb14610f13578063db2d1cb514610ee8578063db40297c14610503578063e2e85831146104cf578063ea32ee881461047e578063eb03dd6b14610320578063ec1e4e01146102fd578063faf2773a146102ba5763ff1e91b5146101fd575f80fd5b60403660031901126102b657610211613acb565b610219613b0d565b906001600160a01b03811690815f52600a60205260ff60405f2054161561028c575b815f52600b60205260ff60405f2054161561027d575b505f52600a6020526001600160401b03600560405f200191166001600160401b03198254161790555f80f35b61028690616c71565b5f610251565b6102b1816001600160a01b03165f52600a60205260405f20600160ff19825416179055565b61023b565b5f80fd5b346102b6575f3660031901126102b65760206040516001600160401b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b346102b65760203660031901126102b65761031e610319613acb565b616414565b005b60803660031901126102b657610334613acb565b5061033d613b0d565b610345613af7565b906064356001600160a01b03831692835f52600c60205260405f206001600160401b0384165f526020528260ff60405f20541615610465575b5050825f52600a60205260ff60405f2054165f14610409576103be906001600160401b0383165f526009602052600360405f20015460b01c5f0b90616f38565b915f52600a6020526001600160401b03600160405f200191165f526020526001600160401b036103f560405f209282845416613f72565b825467ffffffffffffffff19169116179055005b610431906001600160401b0383165f526009602052600360405f20015460b01c5f0b90616f38565b915f5260106020526001600160401b0360405f2091165f526020526001600160401b036103f560405f209282845416613f72565b6104779161047282615423565b6167a8565b838261037e565b346102b65760603660031901126102b657610497613acb565b60403660231901126102b65760405161031e916104b382613b81565b6104bb613b0d565b82526104c5613c57565b60208301526162b4565b346102b65760203660031901126102b65760206104f26104ed613c44565b616241565b6001600160401b0360405191168152f35b346102b6575f3660031901126102b657601654805b61051e57005b5f198101818111610b5f57610532816142c9565b5060405161053f81613b81565b6001600160a01b0382541681526001600160801b0360026040519361056385613bed565b60ff600182015463ffffffff81168752818160201c16151560208801526001600160401b038160281c1660408801526001600160401b038160681c166060880152818160a81c161515608088015260b01c1660a086015201541660c0830152602081019180835263ffffffff61270f199151160163ffffffff8111610b5f576105ee6105f791615b02565b92519283616846565b61060e575b50505061060890613eb0565b80610518565b6001600160a01b039051169063ffffffff61062b8183511661431e565b166001600160401b0360208061064f838261064587616743565b0151511694616743565b015101511690835f52600c60205260405f206001600160401b0382165f5260205260ff60405f20541615610ecf575b50825f52600c60205260405f206001600160401b0382165f5260205260ff60405f20541615610eb6575b5060206106f56106e763ffffffff6106c28186511661431e565b166106cb616620565b5060405190848201528381526106e2604082613c23565b616f9a565b82808251830101910161669c565b01916001600160401b03835151165f52600960205260405f206040519061071b82613b65565b6040516107338161072c8185614248565b0382613c23565b8252600181019060405180602084549182815201935f5260205f20905f915b816003840110610e64579461078e9284926003975491818110610e4a575b818110610e2d575b818110610e10575b10610e02575b500382613c23565b60208401526001600160a01b0360028201546001600160401b038116604086015260401c16606084015201546001600160a01b038116608083015260a082019160ff8260a01c16835260e060c082019260ff8160a81c16845260b01c5f0b91015261080963ffffffff6108038187511661431e565b16615b02565b906108148286616846565b15610c8a576020850151869015610b735761087061086b61087b949560ff806001600160401b0361085c6060828060206108759b510151169f5151169d019a828c5116613fb3565b995116965116915116906142f9565b61430d565b616873565b90613fb3565b93825f52600a602052600160405f20016001600160401b0382165f526020526001600160401b0360405f2054166001600160401b03831611155f146102b657825f52600a6020526001600160401b03600160405f200191165f526020526001600160401b036108f160405f20928284541661437e565b166001600160401b03198254161790555f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0361093760405f209282845416613f72565b166001600160401b03198254161790555b6016545f198101908111610b5f57610962610969916142c9565b50916142c9565b9190916109b4578082036109db575b505060165480156109c7575f190190610990826142c9565b9290926109b4575f60028482610608965582600182015501556016559082806105fc565b634e487b7160e01b5f525f60045260245ffd5b634e487b7160e01b5f52603160045260245ffd5b6001600160a01b0380825416166001600160a01b0319835416178255600182019060018101808303610a0f575b5050610978565b60028092610b406001600160801b039560ff8563ffffffff808a9854161663ffffffff19845416178355610a6282825460201c16849064ff00000000825491151560201b169064ff000000001916179055565b805483546cffffffffffffffff000000000019166cffffffffffffffff0000000000909116178355805483547fffffffffffffffffffffff0000000000000000ffffffffffffffffffffffffff1674ffffffffffffffff00000000000000000000000000909116178355805483547fffffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffff1660a891821c8416151590911b60ff60a81b161783555460b01c167fffffffffffffffffff00ffffffffffffffffffffffffffffffffffffffffffff60ff60b01b83549260b01b169116179055565b015416920191166001600160801b031982541617905581808080610a08565b634e487b7160e01b5f52601160045260245ffd5b610bb1610bb9939261087561087061086b60606001600160401b0360208180995151169e510151169b019860ff80888c5116965116915116906142f9565b935116613fb3565b93825f52600a602052600160405f20016001600160401b0382165f526020526001600160401b0360405f2054166001600160401b03831611155f146102b657825f52600a6020526001600160401b03600160405f200191165f526020526001600160401b03610c2f60405f20928284541661437e565b166001600160401b03198254161790555f52600a6020526001600160401b03600160405f200191165f526020526001600160401b03610c7560405f209282845416613f72565b166001600160401b0319825416179055610948565b505050915060405191610c9c83613b81565b825260208201908152601654600160401b811015610dee57806001610cc492016016556142c9565b9290926109b4576001600160801b0360c081936001600160a01b03806002955116166001600160a01b0319875416178655610dd36001870191519163ffffffff808451161663ffffffff19825416178155610d3e60208401511515829064ff00000000825491151560201b169064ff000000001916179055565b604083015181546060850151608086015160a087015190151560a81b60ff60a81b1660689290921b74ffffffffffffffff000000000000000000000000001660289490941b6cffffffffffffffff0000000000167fffffffffffffffffff000000000000000000000000000000000000ffffffffff90931692909217929092179190911760b09190911b60ff60b01b16179055565b015116920191166001600160801b0319825416179055610948565b634e487b7160e01b5f52604160045260245ffd5b60c01c81526020018c610786565b9260206001916001600160401b038560801c168152019301610780565b9260206001916001600160401b038560401c168152019301610778565b9260206001916001600160401b0385168152019301610770565b9293946001608060049286546001600160401b03811682526001600160401b038160401c1660208301526001600160401b0381841c16604083015260c01c606082015201940192019194939294610752565b80610ec3610ec992615423565b836167a8565b846106a8565b80610edc610ee292615423565b846167a8565b8561067e565b346102b65760403660031901126102b65761031e610f04613acb565b610f0d36613d8f565b906160e2565b346102b65760c03660031901126102b657610f2c613b4f565b6024356001600160401b0381116102b657366023820112156102b6578060040135610f5681613de3565b91610f646040519384613c23565b81835236602483830101116102b657815f926024602093018386013783010152610f8c613af7565b9160643560ff81168091036102b6576084359260ff84168094036102b65760a43592835f0b8094036102b657602090604051610fc88382613c23565b5f81525f36813760405193610fdc85613b65565b845282840190815260408401925f84526001600160401b0360608601935f85526001600160a01b03608088019b168b5260a0870197885260c08701998a5260e08701988952165f526009815260405f2094518051906001600160401b038211610dee576110498754614210565b601f811161130e575b508290601f83116001146112ab5761108192915f91836112a0575b50508160011b915f199060031b1c19161790565b85555b6001850191518051906001600160401b038211610dee57600160401b8211610dee578290845483865580841061124c575b5001925f52815f20908060021c925f5b8481106112085750600319821690910390816111a4575b8b8b8b8b6001600160a01b038060038e8e8e6001600160401b038060028501935116166001600160401b0319835416178255517fffffffff0000000000000000000000000000000000000000ffffffffffffffff7bffffffffffffffffffffffffffffffffffffffff000000000000000083549260401b16911617905501955116166001600160a01b0319855416178455519162ffffff60a01b1960ff60a01b60ff60a81b8654935160a81b16935160b01b60ff60b01b169460a01b16911617171790555f80f35b93905f945f5b8281106111c957505050500155828260036001600160a01b03806110dc565b90919295826111fd6001926001600160401b038a5116908560031b6001600160401b03809160031b9316831b921b19161790565b9701939291016111aa565b5f5f5b600481106112205750848201556001016110c5565b875190979160019185916001600160401b0360068c901b81811b199092169216901b179201970161120b565b61127990865f52835f20600380870160021c820192601888831b168061127f575b500160021c019061540d565b8c6110b5565b61129a905f198601908154905f199060200360031b1c169055565b5f61126d565b015190508c8061106d565b90601f19831691885f52845f20925f5b868282106112f85750509084600195949392106112e0575b505050811b018555611084565b01515f1960f88460031b161c191690558b80806112d3565b60018596829396860151815501950193016112bb565b61133790885f52845f20601f850160051c81019186861061133d575b601f0160051c019061540d565b8b611052565b909150819061132a565b346102b65760203660031901126102b657611360613acb565b611368615778565b61137061755c565b906001600160a01b035f9316925b825181101561140557600190845f52600a602052600460405f20016001600160a01b03806113ac848861448f565b5116165f526020526001600160401b036113fc60405f206040516113cf81613b9c565b604084878185546001600160a01b038116865260a01c169485602086015201541691015282865116613f72565b1683520161137e565b5f848152600a602090815260408220600301546001600160401b0316908401908152601454869285916001600160801b0380821660809290921c829003169182905b838110611484576080866001600160401b036060888260405194818351168652511660208501528260408201511660408501520151166060820152f35b8181101561153d576001600160801b038181168401165f9081526015602052604090205490876114b2613dfe565b8360601c90818152604063ffffffff60208301966001600160401b038160201c16885216910152146114e9575b6001915001611447565b60608601916001600160401b03835116906001600160401b038214610b5f576001936001600160401b038581940116905251166001600160401b03611535604089019282845116613f72565b1690526114df565b634e487b715f5260326020526024601cfd5b346102b65760603660031901126102b657611568613c44565b63ffffffff6127106001600160401b03611580613b0d565b611588613c57565b61159186615b02565b90156115cf576108756115a392613f54565b160491165f5260126020526001600160401b0360405f2091166001600160401b03198254161790555f80f35b6108756115a39261433e565b346102b65760203660031901126102b6576001600160401b036115fc613b4f565b6116046160a4565b50165f52600960205260405f2060405161161d81613b65565b60405161162e8161072c8186614248565b815260018201604051808260208294549384815201905f5260205f20925f905b806003830110611803576116839454918181106117e9575b8181106117cc575b8181106117af575b106117a157500382613c23565b60208201908152600283015492600360408401916001600160401b03861683526001600160a01b03606086019660401c168652015490608084016001600160a01b038316815260a085019560ff8460a01c16875260c086019260ff8560a81c16845260e087019460b01c5f0b855261171060405197602089525161010060208a0152610120890190613dbf565b955195601f19888203016040890152602080885192838152019701905f5b81811061178257505050966001600160a01b0360ff94938186946001600160401b038b9c511660608c0152511660808a0152511660a0880152511660c0860152511660e0840152515f0b6101008301520390f35b82516001600160401b031689526020988901989092019160010161172e565b60c01c815260200186610786565b9260206001916001600160401b038560801c168152019301611676565b9260206001916001600160401b038560401c16815201930161166e565b9260206001916001600160401b0385168152019301611666565b916004919350608060019186546001600160401b03811682526001600160401b038160401c1660208301526001600160401b0381841c16604083015260c01c606082015201940192018492939161164e565b346102b65760403660031901126102b65761186e613acb565b6001600160a01b0361187e613b0d565b91165f5260196020526001600160401b0360405f2091166001600160401b03198254161790555f80f35b346102b65760203660031901126102b65761031e6001600160a01b036118cc613acb565b16617825565b346102b65760203660031901126102b65760206118f56118f0613acb565b616061565b6040519015158152f35b346102b65760403660031901126102b65761031e61191b613acb565b61192436613d8f565b90615f76565b346102b65760803660031901126102b657611943613acb565b60603660231901126102b65760405161031e9161195f82613b9c565b611967613ae1565b8252611971613c57565b602083015261197e613b39565b6040830152615b94565b346102b65760403660031901126102b65760606119a3613acb565b6119ab613ae1565b6001600160a01b036119bb613dfe565b92818316845216805f52600a602052600460405f20016001600160a01b0383165f526020526001600160401b0360405f205460a01c1660208401525f52600a6020526001600160a01b03600460405f200191165f526020526001600160401b03600160405f200154166040820152611a5e60405180926001600160401b03604080926001600160a01b038151168552826020820151166020860152015116910152565bf35b346102b65760203660031901126102b65760206104f2611a7e613c44565b615b02565b346102b65760403660031901126102b657611a9c613acb565b6024359061ffff821682036102b6576001600160a01b0390611abc615ad8565b50165f52600a60205261ffff600660405f200191165f5260205260a060405f2060405190611ae982613bd2565b5463ffffffff8160070b92838152602081016001600160401b038460401c1681526001600160401b0360408301918560801c60070b835260ff60806060860195878960c01c168752019660e01c1615158652604051968752511660208601525160070b6040850152511660608301525115156080820152f35b346102b65760403660031901126102b657611b7b613c44565b63ffffffff611b88613b0d565b91165f5260126020526001600160401b0360405f2091166001600160401b03198254161790555f80f35b346102b65760803660031901126102b657611bcb613acb565b60603660231901126102b657604051611be381613b9c565b611beb613ae1565b8152611bf5613b23565b60208201526064359182151583036102b65761031e92604083015261588c565b6001600160a01b03611c2636613d31565b91939092611c4f816001600160a01b03165f52600a60205260405f20600160ff19825416179055565b1691825f52600a602052600260405f20016001600160a01b0385165f526020526001600160a01b036001600160401b0360405f205416941693845f5260136020526001600160401b03611ca960405f20928284541661437e565b166001600160401b0319825416179055835f52601360205260405f206001600160401b03611cda8382845416613f72565b166001600160401b0319825416179055825f52600a602052600260405f2001845f526020526001600160401b0360405f2091166001600160401b03198254161790556001600160401b03811615155f14611d75579161031e92915b5f52600a602052600260405f2001905f5260205260405f209067ffffffffffffffff60401b82549160401b169067ffffffffffffffff60401b1916179055565b50610e10420191824211610b5f576103e88302928084046103e81490151715610b5f576001600160401b0361031e931691611d35565b60603660031901126102b657611dbf613acb565b50611dc8613ae1565b6044357f0000000000000000000000000000000000000000000000000000000000000000906001600160a01b03831692835f52600c60205260405f206001600160401b0384165f526020528260ff60405f20541615611e5a575b5050825f52600a60205260ff60405f2054165f14611e4a576402540be4006103be9104616873565b6402540be4006104319104616873565b611e679161047282615423565b8382611e22565b346102b6576001600160401b0380600181611f49611e8b36613d31565b93929791611eb4896001600160a01b03165f52600a60205260405f20600160ff19825416179055565b6001600160a01b0360405199611ec98b613b9c565b8183168b528460208c01941684528460408c0197168752165f52600a6020526001600160a01b03600460405f200191165f526020526001600160a01b038060405f20995116166001600160a01b03198954161788555116869067ffffffffffffffff60a01b1967ffffffffffffffff60a01b83549260a01b169116179055565b5116920191166001600160401b03198254161790555f80f35b60603660031901126102b657611f76613acb565b611f7e613b0d565b611f86613b23565b916001600160a01b03811690815f52600a60205260ff60405f20541615612026575b815f52600c60205260405f206001600160401b0384165f526020528260ff60405f20541615612012575b50505f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0360405f2091166001600160401b03198254161790555f80f35b61201f9161047282615423565b8382611fd2565b61204b816001600160a01b03165f52600a60205260405f20600160ff19825416179055565b611fa8565b346102b65760203660031901126102b657602061207361206e613acb565b615827565b6001600160401b036040519151168152f35b346102b6575f3660031901126102b65761031e61579c565b60403660031901126102b6576120b1613acb565b6001600160a01b036120c1613b0d565b916120e7816001600160a01b03165f52600a60205260405f20600160ff19825416179055565b165f52600a6020526001600160401b03600360405f200191166001600160401b03198254161790555f80f35b346102b65760403660031901126102b65761212c613c44565b63ffffffff612139613b0d565b91165f5260116020526001600160401b0360405f2091166001600160401b03198254161790555f80f35b346102b65761217136613c66565b9061ffff825116805f52600f60205263ffffffff60405f20541615612fb5575b6001600160a01b03821690815f52600e60205260405f2061ffff82165f5260205260ff60405f20541615612e91575b5061ffff83511692815f52600a602052600660405f200161ffff85165f526020525f80604081209560ff604051976121f789613bd2565b548060070b89526001600160401b038160401c1660208a01528060801c60070b60408a015263ffffffff8160c01c1660608a015260e01c161596608088159101526040516020810191825260208152612251604082613c23565b51906108065afa612260614583565b9015612e82576020818051810103126102b65761228760206001600160401b039201616514565b169361228f57005b602081015115612999576001600160401b036040820151168411156122b057005b61ffff81511692825f52600a602052600660405f200161ffff85165f5260205260405f205460070b94835f52600a602052600660405f200161ffff86165f5260205263ffffffff60405f205460c01c169061230a81616873565b9382156102b6576060016001600160401b0381511680156102b65782156102b6576123389060070b89613f2c565b945f891261250b575061243692916001600160401b03828161240494511660070b895f52600a602052600660405f200161ffff8c165f5260205261238460405f2091825460070b613f2c565b83198254169084161790556123f361239f8484845116613fb3565b8a5f52600a602052600660405f200161ffff8d165f526020526123cc60405f209185835460401c16613f72565b67ffffffffffffffff60401b82549160401b169067ffffffffffffffff60401b1916179055565b612409856124048585855116613fb3565b613ebc565b895f52600a60205282612426600560405f2001928284541661437e565b1683198254161790555116613fb3565b835f52600a602052600760405f200161ffff86165f526020526001600160401b0361246860405f209282845416613f72565b166001600160401b03198254161790555b60101b75ffffffffffffffffffffffffffffffffffffffff00001661ffff841617931580806124ff575b156124c75750506124b661031e936177ec565b505f52601c60205260405f20617859565b1590816124f3575b506124d657005b6124e261031e93617893565b505f52601c60205260405f2061793e565b905060070b15846124cf565b508160070b15156124a3565b91508787875f600789900b1361277b57946124046125c76001600160401b036125936125716126f79998976125df9761273c9c5f52600a60205261ffff600660405f200191165f526020526125698460405f205460401c16916165db565b841690613ebc565b9761258d83808a511660070b921660070b848b1660070b613eee565b90613f15565b9551168b5f52600a6020528c61ffff600660405f200191165f526020526001600160401b0360405f205460401c1690613fb3565b6125d08d6165db565b6001600160401b031690613ebc565b90875f52600a602052600560405f20016001600160401b036126048482845416613f72565b166001600160401b03198254161790555f8160070b135f146127415761264d90885f52600a6020526001600160401b03600560405f20015416906001600160401b031690613f72565b5f888152600a6020908152604080832060058101805467ffffffffffffffff19166001600160401b0396871617905561ffff8d16845260070190915290208054909261269a91831661437e565b166001600160401b0319825416179055855f52600a602052600660405f200161ffff88165f5260205260405f206001600160401b0319815416866001600160401b03161790556126e9856165db565b6001600160401b0316613fb3565b845f52600a602052600660405f200161ffff87165f5260205260405f209067ffffffffffffffff60401b82549160401b169067ffffffffffffffff60401b1916179055565b612479565b61277690885f52600a6020526127676001600160401b03600560405f20015416916165db565b6001600160401b03169061437e565b61264d565b90506126f793925061273c9491505f52600a602052600660405f200161ffff89165f526020526127e66127c16001600160401b0360405f205460401c166125d08c6165db565b61258d6127cd8c6165db565b916001600160401b0380871660070b911660070b613eee565b5f8160070b135f1461296e5761281f90885f52600a6020526001600160401b03600560405f20015416906001600160401b031690613f72565b875f52600a6020526001600160401b03600560405f200191166001600160401b0319825416179055865f52600a602052600660405f200161ffff89165f5260205261287a816001600160401b0360405f205460401c16613ebc565b875f52600a6020526001600160401b0361289e600560405f20019282845416613f72565b166001600160401b03198254161790556128c6866001600160401b0316916124048484613fb3565b875f52600a602052600560405f20016001600160401b036128ea838284541661437e565b166001600160401b0319825416179055875f52600a602052600760405f200161ffff8a165f526020526001600160401b0361292c60405f209282845416613f72565b166001600160401b0319825416179055865f52600a602052600660405f200161ffff89165f5260205260405f20816001600160401b0319825416179055613fb3565b61299490885f52600a6020526127676001600160401b03600560405f20015416916165db565b61281f565b6001600160401b036040820151168410156129b057005b80515f838152600a6020908152604080832061ffff9094168084526006909401909152902054600781900b9591949163ffffffff60c083901c16916129f482616873565b9483156102b657606001906001600160401b0382511680156102b65783156102b657612a239060070b8a613eee565b955f8a13612a7057505061243692916001600160401b03828161240494511660070b895f52600a602052600660405f200161ffff8c165f5260205261238460405f2091825460070b613eee565b9250925f8660070b12155f14612c5a5790612b1f6126f7939261240461273c968a5f52600a602052600660405f200161ffff8d165f526020526124046001600160401b03612aeb612ace8260405f205460401c169483168095613ebc565b9861258d838a511660070b9184808d1660070b911660070b613eee565b9651168c5f52600a6020528d61ffff600660405f200191165f526020526001600160401b0360405f205460401c1690613fb3565b90875f52600a602052600560405f20016001600160401b03612b448482845416613f72565b166001600160401b03198254161790555f8160070b135f14612c2f57612b8d90885f52600a6020526001600160401b03600560405f20015416906001600160401b031690613f72565b5f888152600a6020908152604080832060058101805467ffffffffffffffff19166001600160401b0396871617905561ffff8d168452600701909152902080549092612bda91831661437e565b166001600160401b0319825416179055855f52600a602052600660405f200161ffff88165f5260205260405f206001600160401b0319815416866001600160401b0316179055846001600160401b0316613fb3565b612c5590885f52600a6020526127676001600160401b03600560405f20015416916165db565b612b8d565b6126f7929150612cbe612cb86001600160401b03612ca261273c978b5f52600a6020528c61ffff600660405f200191165f526020528260405f205460401c1690831690613ebc565b1660070b6001600160401b03851660070b613eee565b8a613f15565b5f8160070b135f14612e5757612cf790885f52600a6020526001600160401b03600560405f20015416906001600160401b031690613f72565b875f52600a6020526001600160401b03600560405f200191166001600160401b0319825416179055865f52600a602052600660405f200161ffff89165f52602052612d52816001600160401b0360405f205460401c16613ebc565b875f52600a6020526001600160401b03612d76600560405f20019282845416613f72565b166001600160401b0319825416179055612da6612d92876165db565b6001600160401b0316916124048484613fb3565b875f52600a602052600560405f20016001600160401b03612dca838284541661437e565b166001600160401b0319825416179055875f52600a602052600760405f200161ffff8a165f526020526001600160401b03612e0c60405f209282845416613f72565b166001600160401b0319825416179055865f52600a602052600660405f200161ffff89165f5260205260405f206001600160401b0319815416876001600160401b0316179055613fb3565b612e7d90885f52600a6020526127676001600160401b03600560405f20015416916165db565b612cf7565b63928da67360e01b5f5260045ffd5b612e9a83616c71565b815f52600e60205260405f2061ffff82165f5260205260405f20600160ff19825416179055612ec98184616c3a565b5f838152600a6020908152604080832061ffff909516835260069490940181529083902082518154928401516fffffffffffffffffffffffffffffffff199093166001600160401b03909116179190931b67ffffffffffffffff60401b1617825560408101519082547fffffff00000000000000000000000000ffffffffffffffffffffffffffffffff77ffffffffffffffff000000000000000000000000000000007bffffffff000000000000000000000000000000000000000000000000606085015160c01b1693608060ff60e01b910151151560e01b169460801b1691161717179055836121c0565b63ffffffff6060612fc583616b5e565b015116815f52600f60205263ffffffff60405f20911663ffffffff19825416179055612191565b346102b6575f3660031901126102b65760206040515f8152f35b346102b65760203660031901126102b6575f80613021613acb565b613029615778565b50613032615778565b506040516001600160a01b0360208201928484521660408201526040815261305b606082613c23565b519061080f5afa61306a614583565b90156130fe576080818051810103126102b65760809060405161308c81613bb7565b6001600160401b036130a060208401616b43565b92838352816130b160408301616514565b6020850190815260606130d7886130c9838701616514565b956040890196875201616b43565b95019485526040519560070b865251166020850152511660408301525160070b6060820152f35b633e7a7ff960e11b5f5260045ffd5b346102b65760203660031901126102b65761031e613129613b4f565b615423565b346102b65760203660031901126102b65760043561ffff81168091036102b6575f52600f602052602063ffffffff60405f205416604051908152f35b346102b65760803660031901126102b657613183613acb565b60603660231901126102b65760405161031e9161319f82613b9c565b6131a7613ae1565b82526131b1613b23565b60208301526131be613b39565b60408301526144a3565b346102b65760203660031901126102b65763ffffffff6131e6613c44565b165f52600960205260206131fd60405f2054614210565b1515604051908152f35b346102b65760603660031901126102b657613220613c44565b63ffffffff6127106001600160401b03613238613b0d565b613240613c57565b61324986616241565b90156132875761087561325b92613f54565b160491165f5260116020526001600160401b0360405f2091166001600160401b03198254161790555f80f35b61087561325b9261433e565b346102b65760203660031901126102b6576132ac613acb565b6132b461755c565b80516132bf81614478565b906132cd6040519283613c23565b8082526132dc601f1991614478565b015f5b8181106134285750506001600160a01b035f9316925b81518110156133b057806001600160a01b036133136001938661448f565b511661331f828561448f565b5152845f52600a602052600460405f20016001600160a01b0380613343848861448f565b5116165f526020526001600160401b0360405f206040519061336482613b9c565b604083868184546001600160a01b038116875260a01c169384602087015201541692019182526020613396858861448f565b510152511660406133a7838661448f565b510152016132f5565b506040518091602082016020835281518091526020604084019201905f5b8181106133dc575050500390f35b91935091602060608261341a60019488516001600160401b03604080926001600160a01b038151168552826020820151166020860152015116910152565b0194019101918493926133ce565b602090613436959495613dfe565b828286010152019392936132df565b346102b65760403660031901126102b6576040613471613463613acb565b61346b613ae1565b906143d3565b6001600160401b0360208351928281511684520151166020820152f35b346102b65761349c36613c66565b63ffffffff6134ad8183511661431e565b16916001600160401b036020806134d283826134c889616743565b0151511696616743565b01510151166001600160a01b03821693845f52600c60205260405f206001600160401b0382165f5260205260ff60405f20541615613a03575b50835f52600c60205260405f206001600160401b0382165f5260205260ff60405f205416156139ef575b505060206135506106e763ffffffff6106c28186511661431e565b01906001600160401b03825151165f52600960205260405f209260405161357681613b65565b6040516135878161072c8189614248565b8152600185019460405180602088549182815201975f5260205f20905f915b8160038401106139a357928981936135e393600397965491818110613989575b81811061396c575b81811061394f575b1061394157500382613c23565b60208401526001600160a01b0360028201546001600160401b038116604086015260401c16606084015201546001600160a01b038116608083015260a082019160ff8260a01c16835260e060c082019260ff8160a81c16845260b01c5f0b91015261365863ffffffff6108038187511661431e565b906136638286616846565b156138735760208501518690156137675761087061086b6136ab949560ff806001600160401b0361085c6060828060206108759b510151169f5151169d019a828c5116613fb3565b93825f52600a602052600160405f20016001600160401b0382165f526020526001600160401b0360405f2054166001600160401b03831611155f146102b657825f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0361372160405f20928284541661437e565b166001600160401b03198254161790555f52600a6020526001600160401b03600160405f200191165f526020526001600160401b036103f560405f209282845416613f72565b610bb16137a5939261087561087061086b60606001600160401b0360208180995151169e510151169b019860ff80888c5116965116915116906142f9565b93825f52600a602052600160405f20016001600160401b0382165f526020526001600160401b0360405f2054166001600160401b03831611155f146102b657825f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0361381b60405f20928284541661437e565b166001600160401b03198254161790555f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0361386160405f209282845416613f72565b166001600160401b0319825416179055005b50505091506040519161388583613b81565b825260208201908152601654600160401b811015610dee578060016138ad92016016556142c9565b9290926109b4576001600160801b0360c081936001600160a01b03806002955116166001600160a01b03198754161786556139276001870191519163ffffffff808451161663ffffffff19825416178155610d3e60208401511515829064ff00000000825491151560201b169064ff000000001916179055565b015116920191166001600160801b03198254161790555f80f35b60c01c81526020018a610786565b9260206001916001600160401b038560801c1681520193016135d6565b9260206001916001600160401b038560401c1681520193016135ce565b9260206001916001600160401b03851681520193016135c6565b98600160806004928c546001600160401b03811682526001600160401b038160401c1660208301526001600160401b0381841c16604083015260c01c6060820152019a019201916135a6565b6139fc9161047282615423565b8280613535565b80610ec3613a1092615423565b8461350b565b346102b65760203660031901126102b65761031e613a32613acb565b6001600160a01b03165f52600a60205260405f20600160ff19825416179055565b346102b65760203660031901126102b65760206118f5613a71613acb565b613fd6565b346102b65760403660031901126102b6576060613aa2613a94613acb565b613a9c613b0d565b90613e1c565b6001600160401b0360408051928281511684528260208201511660208501520151166040820152f35b600435906001600160a01b03821682036102b657565b602435906001600160a01b03821682036102b657565b604435906001600160a01b03821682036102b657565b602435906001600160401b03821682036102b657565b604435906001600160401b03821682036102b657565b606435906001600160401b03821682036102b657565b600435906001600160401b03821682036102b657565b61010081019081106001600160401b03821117610dee57604052565b604081019081106001600160401b03821117610dee57604052565b606081019081106001600160401b03821117610dee57604052565b608081019081106001600160401b03821117610dee57604052565b60a081019081106001600160401b03821117610dee57604052565b60e081019081106001600160401b03821117610dee57604052565b602081019081106001600160401b03821117610dee57604052565b90601f801991011681019081106001600160401b03821117610dee57604052565b6004359063ffffffff821682036102b657565b6044359081151582036102b657565b906101006003198301126102b6576004356001600160a01b03811681036102b65760e0909260231901126102b657604051613ca081613bed565b60243563ffffffff811681036102b657815260443580151581036102b65760208201526064356001600160401b03811681036102b65760408201526084356001600160401b03811681036102b657606082015260a43580151581036102b657608082015260c43560ff811681036102b65760a082015260e4356001600160801b03811681036102b65760c082015290565b60809060031901126102b6576004356001600160a01b03811681036102b657906024356001600160a01b03811681036102b657906044356001600160401b03811681036102b657906064356001600160401b03811681036102b65790565b60209060231901126102b65760405190613da882613c08565b602435826001600160401b03821682036102b65752565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b6001600160401b038111610dee57601f01601f191660200190565b60405190613e0b82613b9c565b5f6040838281528260208201520152565b613e24613dfe565b506001600160a01b03811690815f52600c60205260405f206001600160401b0384165f5260205260ff60405f20541615613ea257505f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0360405f20541660405190613e9182613b9c565b81525f60208201525f604082015290565b613ead929150616528565b90565b8015610b5f575f190190565b906001600160401b0316908115613eda576001600160401b03160490565b634e487b7160e01b5f52601260045260245ffd5b600791820b910b0390677fffffffffffffff198212677fffffffffffffff831317610b5f57565b9060070b9060070b02908160070b918203610b5f57565b9060070b9060070b0190677fffffffffffffff198212677fffffffffffffff831317610b5f57565b6001600160401b031661271001906001600160401b038211610b5f57565b906001600160401b03809116911601906001600160401b038211610b5f57565b6001600160401b036064911602906001600160401b038216918203610b5f57565b906001600160401b03809116911602906001600160401b038216918203610b5f57565b5f5f5f906001600160a01b035f941692835f52601c60205260405f2054805b61405257506001600160401b03161561404a5761403861403d926001600160401b03945f52600a6020528480600560405f2001541660070b911660070b90613f2c565b613f2c565b911660070b9060070b1290565b505050505f90565b845f52601c60205260405f205f19820190828211610b5f5761ffff9161407791617547565b90549060031b1c16855f52600a602052600660405f200161ffff82165f5260205260405f2090604051916140aa83613bd2565b54918260070b80825260ff60208301946001600160401b038160401c1686528060801c60070b604085015263ffffffff8160c01c16606085015260e01c1615156080830152614106575b50505061410090613eb0565b80613ff5565b909391959461411785999499616241565b915160070b96516001600160401b0316614130886165f3565b61413991613ebc565b6001600160401b031660070b6001600160401b03831660070b9061415c91613eee565b6141669088613f15565b61416f91613f2c565b94875f52600a60205260405f2060070161ffff86165f5260205260405f20546001600160401b03166141a091613f72565b956141aa906165f3565b906141b491613fb3565b90816141bf91613f72565b925f52600f60205260405f205463ffffffff16918215613eda576127106001600160401b036141ff6142079463ffffffff61410097611388041690613fb3565b160490613f72565b95905f806140f4565b90600182811c9216801561423e575b602083101461422a57565b634e487b7160e01b5f52602260045260245ffd5b91607f169161421f565b5f929181549161425783614210565b80835292600181169081156142ac575060011461427357505050565b5f9081526020812093945091925b838310614292575060209250010190565b600181602092949394548385870101520191019190614281565b915050602093945060ff929192191683830152151560051b010190565b6016548110156142e55760165f52600360205f20910201905f90565b634e487b7160e01b5f52603260045260245ffd5b9060ff8091169116039060ff8211610b5f57565b60ff16604d8111610b5f57600a0a90565b6001600160401b0361270f19911601906001600160401b038211610b5f57565b6001600160401b031661271003906001600160401b038211610b5f57565b6001600160401b036305f5e0ff19911601906001600160401b038211610b5f57565b906001600160401b03809116911603906001600160401b038211610b5f57565b604051906143ab82613b81565b5f6020838281520152565b81810292918115918404141715610b5f57565b8115613eda570490565b6001600160a01b03906143e461439e565b50165f52600a602052600260405f20016001600160a01b0382165f526020526001600160a01b0360405f20916001600160401b036040519361442585613b81565b54818116855260401c166020840152165f5260196020526001600160401b0360405f20541680614453575090565b670de0b6b3a76400006144716001600160401b0392838551166143b6565b0416815290565b6001600160401b038111610dee5760051b60200190565b80518210156142e55760209160051b010190565b906001600160a01b03821691825f52600a60205260ff60405f20541615614571576145489260208301906001600160401b03825116905f52600c60205260405f206001600160401b0382165f5260205260ff60405f2054161561455e575b506001600160401b036001600160a01b03845116915116815f52600c60205260405f206001600160401b0382165f5260205260ff60405f2054161561454a575b50506145c1565b565b6145579161047282615423565b5f80614541565b80610ec361456b92615423565b5f614501565b505050565b91908201809211610b5f57565b3d156145ad573d9061459482613de3565b916145a26040519384613c23565b82523d5f602084013e565b606090565b908160209103126102b6575190565b60408201908151915f916001600160a01b038116805f52600a602052600160405f20019460208701956001600160401b0380885116165f526020526001600160401b038060405f2054169116116102b6576001600160a01b038651165f52600a60205260ff60405f205416156151b8576146446001600160401b038651166168a4565b906001600160401b03845116905f52600a602052600160405f20016001600160401b0380885116165f526020526001600160401b0361468a60405f20928284541661437e565b825467ffffffffffffffff1916911617905585516001600160a01b03828116939116831461470f57505050600160406001600160401b03936001600160a01b0385809551169751168152600a6020522001925116165f526020526001600160401b036146fd60405f209282845416613f72565b166001600160401b0319825416179055565b6001600160401b0386939597949651166001600160401b037f000000000000000000000000000000000000000000000000000000000000000016146150775750506001600160401b03815116855260096020526001600160401b03806001600160a01b0360036040892001541695511691511685526009602052600360408620015460b01c9081860b80155f1461502f57509050915b6040516370a0823160e01b815260048101829052602081602481885afa80156150245784908790614fee575b6147db9250614576565b858060405160208101906370a0823160e01b825285602482015260248152614804604482613c23565b5190885afa50614824614815614583565b602080825183010191016145b2565b50846001600160a01b031960055416176005556370a0823163ffffffff196003541617600355600254600160401b811015614fda5761488561486f8260018694016002556002617547565b819391549060031b91821b915f19901b19161790565b90556001600160a01b036005541660035460e01b600454906148a56179fe565b906148c1846001600160a01b03165f52600160205260405f2090565b9063ffffffff60e01b1690818b5260205260408a2060405160208101906148fb816148ed8888866179e7565b03601f198101835282613c23565b5190208b5260205260ff600360408c2001541615614fcc575b61492f846001600160a01b03165f52600160205260405f2090565b908a526020526148ed61495160408b20936040519283916020830195866179e7565b51902088526020526040872060018101549260028201546149728186614576565b614e8e575b8254604051630667f9d760e41b81526001600160a01b038616600482015260248101829052959091906020876044815f51602061860a5f395f51905f525afa968715614e83578c97614e4f575b506001908201610100031b5f1901811b198616915f51602061860a5f395f51905f523b15614e4b576040516370ca10bb60e01b81526001600160a01b038716600482015260248101919091529083901b9190911760448201528981606481835f51602061860a5f395f51905f525af18015614e4057908a91614e27575b50508880602060035460e01b614a916024614a5c6001617a9a565b6040519485918183019563ffffffff60e01b1686528051918291018484015e810186838201520301601f198101845283613c23565b6001600160a01b03600554169151915afa90614aab614583565b916004548060051b906001600160fb1b03811603614e13578b938051602081115f14614e0d57506020905b8d925b828410614d82575050505015918215614d77575b5050614cf0575050506001600160a01b03196005541660055563ffffffff19600354166003556002548560025580614cae575b508460045560ff1960075416600755614b3a600854614210565b80614c2e575b505f51602061860a5f395f51905f523b15614c2a576040519063ca669fa760e01b825260048201528481602481835f51602061860a5f395f51905f525af18015614c1f57908591614c06575b50506001600160a01b03905116906040519163a9059cbb60e01b855260045260245260208360448180865af1906001845114821615614be5575b60405215614bd2575050565b635274afe760e01b825260045260249150fd5b906001811516614bfd57823b15153d15161690614bc6565b503d83823e3d90fd5b81614c1091613c23565b614c1b57835f614b8c565b8380fd5b6040513d87823e3d90fd5b8480fd5b601f8111600114614c455750846008555b5f614b40565b60088652614c9b90601f0160051c7ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee3017ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee461540d565b6008855284602081208160085555614c3f565b600286527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace908101905b818110614ce55750614b20565b868155600101614cd8565b8288928392545f51602061860a5f395f51905f523b15614d72576040516370ca10bb60e01b81526001600160a01b03929092166004830152602482015260448101919091528181606481835f51602061860a5f395f51905f525af18015614d6757614d585750fd5b81614d6291613c23565b505b80fd5b6040513d84823e3d90fd5b505050fd5b141590505f80614aed565b90919295614d908783614576565b8351811015614df8578301602001517fff0000000000000000000000000000000000000000000000000000000000000016600388901b881560088a8304141715614de2571c1795600101929190614ad9565b5050634e487b7160e01b8f52601160045260248ffd5b50634e487b7160e01b8f52603260045260248ffd5b90614ad6565b634e487b7160e01b8c52601160045260248cfd5b81614e3191613c23565b614e3c57885f614a41565b8880fd5b6040513d8c823e3d90fd5b8b80fd5b9096506020813d602011614e7b575b81614e6b60209383613c23565b810103126102b6575195816149c4565b3d9150614e5e565b6040513d8e823e3d90fd5b614e988186614576565b610100036101008111614fb85760ff8111614fb8576001901b60405163348051d760e11b81528160048201528b816024815f51602061860a5f395f51905f525afa908115614e8357606a614f89928e6020938192614f94575b506040519384927f73746453746f726167652066696e642853746453746f72616765293a20506163828501527f6b656420736c6f742e2057652063616e2774206669742076616c75652067726560408501527f61746572207468616e200000000000000000000000000000000000000000000060608501528051918291018585015e82019083820152030190601f1982018152613c23565b8210614977575b8980fd5b614fb19192503d8084833e614fa98183613c23565b810190616f75565b905f614ef1565b634e487b7160e01b8b52601160045260248bfd5b614fd4617c74565b50614914565b634e487b7160e01b87526041600452602487fd5b50506020813d60201161501c575b8161500960209383613c23565b810103126102b657836147db91516147d1565b3d9150614ffc565b6040513d88823e3d90fd5b86811315615053575061504761504d9260ff1661430d565b906143b6565b916147a5565b615072925061506461506c91616922565b60ff1661430d565b906143c9565b61504d565b939250936402540be40091506001600160401b0390511602926001600160401b038416938403610b5f576150ac848231614576565b905f51602061860a5f395f51905f523b156102b65760405163c88a5e6d60e01b81526001600160a01b0391909116600482015260248101919091525f81604481835f51602061860a5f395f51905f525af180156151ad57615198575b505f51602061860a5f395f51905f523b15614c1b576040519063ca669fa760e01b825260048201528381602481835f51602061860a5f395f51905f525af1801561518d5790849291615170575b508180938192617530f1615167614583565b5015614d645750565b8261517d91939293613c23565b6151895782905f615155565b8280fd5b6040513d86823e3d90fd5b6151a59194505f90613c23565b5f925f615108565b6040513d5f823e3d90fd5b919394925050805f52600a602052600160405f20015f80526020526305f5e1006001600160401b0360405f20541610155f146153a3576152dd6001600160a01b0393825f52600a602052600160405f20015f805260205260405f206001600160401b036152278183541661435c565b166001600160401b03198254161790555b848451165f52600a60205260405f20600160ff198254161790556001600160401b03815116835f52600a602052600160405f20016001600160401b0380895116165f526020526001600160401b0361529760405f20928284541661437e565b166001600160401b0319825416179055825f52601060205260405f206001600160401b0380885116165f526020526001600160401b038060405f20541691511690613f72565b838351165f52600a602052600160405f20016001600160401b0380875116165f526020526001600160401b0361531a60405f209282845416613f72565b166001600160401b03198254161790555f52601060205260405f206001600160401b0380855116165f5260205260405f206001600160401b03198154169055818151165f52600b60205260405f20600160ff1982541617905551165f52600c6020526001600160401b038060405f20925116165f5260205260405f20600160ff19825416179055565b805f52600a6020526305f5e1006001600160401b03600560405f2001541610155f146102b6576152dd6001600160a01b0393825f52600a602052600560405f20016001600160401b036153f88183541661435c565b166001600160401b0319825416179055615238565b818110615418575050565b5f815560010161540d565b6001600160401b03811690815f52600960205261544360405f2054614210565b6157745763ffffffff6154569116616954565b608081019160016001600160a01b0384511614614571575f52600960205260405f2081518051906001600160401b038211610dee576154958354614210565b601f8111615744575b50602090601f83116001146156e1576154cd92915f91836156d65750508160011b915f199060031b1c19161790565b81555b6001810160208301518051906001600160401b038211610dee57600160401b8211610dee5760209083548385558084106156a4575b5001915f5260205f208160021c915f5b83811061565f575060031981169003806155ff575b505050506001600160a01b0360038260028394016001600160401b0380604088015116166001600160401b031982541617815560608601517fffffffff0000000000000000000000000000000000000000ffffffffffffffff7bffffffffffffffffffffffffffffffffffffffff000000000000000083549260401b16911617905501935116166001600160a01b031983541617825560a081015190825462ffffff60a01b1960ff60a01b60e060ff60a81b60c086015160a81b1694015160b01b60ff60b01b169460a01b1691161717179055565b925f935f5b8181106156215750505001556001600160a01b036003815f61552a565b90919460206156556001926001600160401b03895116908560031b6001600160401b03809160031b9316831b921b19161790565b9601929101615604565b5f5f5b60048110615677575083820155600101615515565b86519096916001916020916001600160401b0360068b901b81811b199092169216901b1792019601615662565b6156d090855f52835f20600380870160021c820192601888831b168061127f57500160021c019061540d565b5f615505565b015190505f8061106d565b90601f19831691845f52815f20925f5b81811061572c5750908460019594939210615714575b505050811b0181556154d0565b01515f1960f88460031b161c191690555f8080615707565b929360206001819287860151815501950193016156f1565b61576e90845f5260205f20601f850160051c8101916020861061133d57601f0160051c019061540d565b5f61549e565b5050565b6040519061578582613bb7565b5f6060838281528260208201528260408201520152565b601a54801561582457805b6157ae5750565b5f198101818111610b5f57601a5411156142e557601a5f527f057c384a7d1c54f3a1b2e5e67b2617b8224fdfd1ea7234eea573a6ff665ff63d81015461580f919060101c6001600160a01b031661580481613fd6565b615815575b50613eb0565b806157a7565b61581e90616414565b5f615809565b50565b60405161583381613c08565b5f8152506001600160a01b03811690815f52600a60205260ff60405f2054161561588257505f52600a6020526001600160401b03600560405f200154166040519061587d82613c08565b815290565b613ead9150616e61565b6001600160a01b031690815f52600a60205260ff60405f20541615615774576001600160a01b038151165f52601860205260405f2054156102b6576040810151156159c357815f52600a602052600460405f20016001600160a01b0380835116165f52602052602060405f2091016001600160401b038151166001600160401b03835460a01c1610158061599a575b61592457505050565b6001600160401b03816145489482615973945116905f52600a60205282615955600360405f20019282845416613f72565b16831982541617905551166001600160401b03835460a01c1661437e565b67ffffffffffffffff60a01b1967ffffffffffffffff60a01b83549260a01b169116179055565b506103e842024281046103e81442151715610b5f576001600160401b036001840154161061591b565b602081016001600160401b03815116835f52600a6020526001600160401b03600360405f2001541610156159f657505050565b6001600160401b038181615a6a935116855f52600a60205282615a23600360405f2001928284541661437e565b1683198254161790555116835f52600a602052600460405f20016001600160a01b0380855116165f5260205261597360405f20916001600160401b03835460a01c16613f72565b62014a784201804211610b5f576103e88102908082046103e81490151715610b5f57615a9590616873565b915f52600a6020526001600160a01b0380600460405f2001925116165f526020526001600160401b03600160405f200191166001600160401b0319825416179055565b60405190615ae582613bd2565b5f6080838281528260208201528260408201528260608201520152565b63ffffffff16805f5260126020526001600160401b0360405f20541615615b3b575f5260126020526001600160401b0360405f20541690565b5f80916040516020810191825260208152615b57604082613c23565b51906108085afa615b66614583565b9015615b85576020818051810103126102b6576020613ead9101616514565b634c61a21360e11b5f5260045ffd5b6001600160a01b03811690815f52600a60205260ff60405f2054161561457157615c066001600160401b03916001600160a01b03855116845f52600d60205260405f206001600160a01b0382165f5260205260ff60405f20541615615ed0575b506001600160a01b03855116906143d3565b5116815f52600a602052600260405f20016001600160a01b0380855116165f526020526001600160401b0360405f2091166001600160401b0319825416179055602082015115155f14615da757604082016001600160401b03815116825f52600a6020526001600160401b03600560405f2001541610155f146102b6576001600160401b03815116825f52600a602052600260405f20016001600160a01b0380865116165f526020526001600160401b03615cc860405f209282845416613f72565b166001600160401b031982541617905562015180420190814211610b5f576103e88202918083046103e81490151715610b5f5782615d586001600160401b03936001600160a01b03955f52600a602052600260405f20018680895116165f526020528460405f20911667ffffffffffffffff60401b82549160401b169067ffffffffffffffff60401b1916179055565b82825116905f52600a60205282615d79600560405f2001928284541661437e565b16831982541617905551169151165f5260136020526001600160401b036146fd60405f209282845416613f72565b90815f52600a602052600260405f20016001600160a01b0380835116165f5260205260405f209060408101906001600160401b0382511680155f14615eba57506001600160a01b036001600160401b03808554165b169182845251165f5260136020526001600160401b036305f5e1008160405f2054160416116102b6576001600160401b038151169180546001600160401b038116809411159081615e94575b50156102b6576001600160401b03615e658194828551169061437e565b1683198254161790555116905f52600a6020526001600160401b036146fd600560405f20019282845416613f72565b6103e891506001600160401b039060401c16046001600160401b0342911611155f615e48565b6001600160401b036001600160a01b0391615dfc565b615f7090615edd83616c71565b855f52600d60205260405f206001600160a01b0382165f5260205260405f20600160ff19825416179055615f118184617725565b90865f52600a6020526001600160a01b03600260405f200191165f5260205284602060405f2092828082511616831985541617845501511667ffffffffffffffff60401b82549160401b169067ffffffffffffffff60401b1916179055565b5f615bf4565b6001600160a01b031690815f52600a60205260ff60405f20541615615774576001600160401b0381511690825f52600a602052600160405f2001917f0000000000000000000000000000000000000000000000000000000000000000926001600160401b0384165f526020526001600160401b0360405f2054161015615ffb57505050565b6001600160401b03918282511690845f52600a60205283600160405f200191165f526020528261603260405f20928284541661437e565b1683198254161790555116905f52600a6020526001600160401b036146fd600360405f20019282845416613f72565b6001600160a01b03811690815f52600a60205260ff60405f2054161561609457505f52600a60205260ff60405f20541690565b61609e9150616edb565b51151590565b604051906160b182613b65565b5f60e08360608152606060208201528260408201528260608201528260808201528260a08201528260c08201520152565b6001600160a01b03811691825f52600a60205260ff60405f20541615614571576001600160401b03815116835f52600a6020526001600160401b03600360405f20015416101561613157505050565b6001600160401b03815116835f52600a6020526001600160401b03616160600360405f2001928284541661437e565b166001600160401b03198254161790555162093a80420192834211610b5f5763ffffffff6040941693849181519061619782613b9c565b81526001600160401b03841660208201520152601454928360801c926001600160801b036001850195166001600160801b0386161461622f576bffffffffffffffff000000006162139360201b16906bffffffffffffffffffffffff199060601b161717916001600160801b03165f52601560205260405f2090565b556001600160801b036014549181199060801b16911617601455565b634e487b715f5260416020526024601cfd5b63ffffffff16805f5260116020526001600160401b0360405f2054161561627a575f5260116020526001600160401b0360405f20541690565b61629b9060405190602082015260208152616296604082613c23565b6171e7565b6020818051810103126102b6576020613ead9101616514565b6001600160a01b031690815f52600a60205260ff60405f205416156157745760208101511561638b576162f06001600160401b03825116613f92565b825f52600a602052600160405f20015f80526020526001600160401b038060405f20541691161115616320575050565b6001600160401b03818161635d935116845f52600a6020528261634d600560405f20019282845416613f72565b1683198254161790555116613f92565b905f52600a602052600160405f20015f80526020526001600160401b036146fd60405f20928284541661437e565b6001600160401b03815116825f52600a6020526001600160401b03600560405f2001541610156163b9575050565b6001600160401b0381816163e6935116845f52600a6020528261634d600560405f2001928284541661437e565b905f52600a602052600160405f20015f80526020526001600160401b036146fd60405f209282845416613f72565b6001600160a01b03811690815f52601c60205260405f2054805b6164525750505f52600a602052600560405f20016001600160401b03198154169055565b825f52601c60205260405f20905f19810191818311610b5f5761ffff61647e61650e9461580993617547565b90549060031b1c166164b061ffff821675ffffffffffffffffffffffffffffffffffffffff00008760101b1617617893565b505f868152600a6020908152604080832061ffff8516845260068101835281842080546fffffffffffffffffffffffffffffffff191690556007018252808320805467ffffffffffffffff19169055888352601c909152902061793e565b8061642e565b51906001600160401b03821682036102b657565b6001600160401b036165699261653c613dfe565b506001600160a01b036040519316602084015216604082015260408152616564606082613c23565b617247565b8051156165bc576060818051810103126102b6576165b460606040519261658f84613b9c565b61659b60208201616514565b84526165a960408201616514565b602085015201616514565b604082015290565b506040516165c981613b9c565b5f81525f60208201525f604082015290565b60070b677fffffffffffffff198114610b5f575f0390565b5f8160070b135f1461660b576001600160401b031690565b616614906165db565b6001600160401b031690565b6040519061662d82613b81565b8160608152602060405191616643604084613c23565b60403684370152565b92919261665882613de3565b916166666040519384613c23565b8294818452818301116102b6578281602093845f96015e010152565b9080601f830112156102b6578151613ead9260200161664c565b6020818303126102b6578051906001600160401b0382116102b657016060818303126102b657604051916166cf83613b81565b81516001600160401b0381116102b657816166eb918401616682565b835280603f830112156102b65760405191616707604084613c23565b8290606081019283116102b657602001905b82821061672b57505050602082015290565b6020809161673884616514565b815201910190616719565b5f809161674e616620565b506040516001600160401b03602082019216825260208152616771604082613c23565b519061080b5afa616780614583565b90156167995780602080613ead9351830101910161669c565b6387ae2f6360e01b5f5260045ffd5b906167b282616c71565b6001600160a01b03821691825f52600a60205260ff60405f2054161561457157616807826001600160401b0392855f52600c60205260405f208483165f5260205260405f20600160ff19825416179055616528565b5116915f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0360405f2091166001600160401b0319825416179055565b6001600160401b0360408192602081015115155f14616869570151169116111590565b0151169116101590565b6001600160401b03811161688d576001600160401b031690565b6306dfcc6560e41b5f52604060045260245260445ffd5b466103e60361690f5761ffff6001600160401b03610451925b16911681146168f657732000000000000000000000000000000000000000016001600160a01b038111610b5f576001600160a01b031690565b5073222222222222222222222222222222222222222290565b61ffff6001600160401b036096926168bd565b5f0b607f198114610b5f575f0390565b51906001600160a01b03821682036102b657565b519060ff821682036102b657565b616984906169606160a4565b5063ffffffff604051911660208201526020815261697f604082613c23565b6172a7565b90815115616ae0578151820160208101926020818303126102b6576020810151906001600160401b0382116102b657019061010090829003126102b657604051906169ce82613b65565b60208101516001600160401b0381116102b6578460206169f092840101616682565b825260408101516001600160401b0381116102b65760209082010184601f820112156102b657805194616a2286614478565b91616a306040519384613c23565b86835260208084019760051b8201019182116102b657602001955b818710616ac8575050829394506020610100930152616a6c60608201616514565b6040840152616a7d60808201616932565b6060840152616a8e60a08201616932565b6080840152616a9f60c08201616946565b60a0840152616ab060e08201616946565b60c08401520151805f0b81036102b65760e082015290565b60208091616ad589616514565b815201960195616a4b565b90506020604051616af18282613c23565b5f81525f36813760405191616b0583613b65565b604051616b128282613c23565b5f815283528201525f604082015260016060820152600160808201525f60a08201525f60c08201525f60e082015290565b51908160070b82036102b657565b519081151582036102b657565b616b9390616b6a615ad8565b5061ffff604051916001602084015216604082015260408152616b8e606082613c23565b617307565b805115616c0f5760a0818051810103126102b65760405190616bb482613bd2565b616bc060208201616b43565b8252616bce60408201616514565b6020830152616bdf60608201616b43565b6040830152608081015163ffffffff811681036102b6576060830152616c079060a001616b51565b608082015290565b50604051616c1c81613bd2565b5f81525f60208201525f60408201525f60608201525f608082015290565b61ffff616b9392616c49615ad8565b506001600160a01b036040519316602084015216604082015260408152616b8e606082613c23565b6001600160a01b03811690815f52600b60205260ff60405f20541661577457815f52600a60205260405f2091616ca682616edb565b51156145715780616d28915f52600b60205260405f20600160ff19825416179055600160ff198554161784556001600160401b03616ce384616e61565b51166001600160401b036005860191166001600160401b0319825416179055616d0a615778565b5060405190602082015260208152616d23604082613c23565b617367565b906080828051810103126102b657616dab91604051616d4681613bb7565b616d5260208301616514565b81526060616d846080616d6760408601616514565b94856020860152616d79848201616514565b604086015201616514565b9101526001600160401b0380600386019216166001600160401b03198254161790556175ec565b60045f9201915b81518110156145715780616dc86001928461448f565b516001600160a01b0380616ddc848761448f565b515116165f52846020526001600160401b0383816040805f20946001600160a01b0380825116166001600160a01b0319875416178655616e4583602083015116879067ffffffffffffffff60a01b1967ffffffffffffffff60a01b83549260a01b169116179055565b015116920191166001600160401b031982541617905501616db2565b616e9b90604051616e7181613c08565b5f8152506001600160a01b036040519116602082015260208152616e96604082613c23565b6173c7565b805115616ec7576020818051810103126102b65761587d602060405192616ec184613c08565b01616514565b50604051616ed481613c08565b602d815290565b616f13905f604051616eec81613c08565b526001600160a01b036040519116602082015260208152616f0e604082613c23565b617427565b6020818051810103126102b65761587d602060405192616f3284613c08565b01616b51565b90613ead91815f0b80155f14616f5057509050616873565b5f1215616f665761506c6108709260ff1661430d565b61504761506461087093616922565b906020828203126102b65781516001600160401b0381116102b657613ead9201616682565b604051632b65311f60e11b815261080b6004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c5575b505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b03815f51602061860a5f395f51905f525afa9081156151ad576170ce600c600a61712495602860205f97819789916171ab575b506040519788947f5b7b22746f223a22000000000000000000000000000000000000000000000000828701528051918291018587015e8401907f222c2264617461223a220000000000000000000000000000000000000000000084830152805192839101603283015e01017f227d2c226c6174657374225d0000000000000000000000000000000000000000838201520301601319810184520182613c23565b60405180938192630240d91560e31b835260406004840152600860448401527f6574685f63616c6c0000000000000000000000000000000000000000000000006064840152608060248401526084830190613dbf565b0381835f51602061860a5f395f51905f525af15f9181617159575b50613ead5750604051617153602082613c23565b5f815290565b9091503d805f833e61716b8183613c23565b8101906020818303126102b6578051906001600160401b0382116102b657019080601f830112156102b65781516171a49260200161664c565b905f61713f565b6171bf91503d808b833e614fa98183613c23565b5f61702e565b616ffb9192506171df5f913d8084833e614fa98183613c23565b929150616fd3565b604051632b65311f60e11b81526108066004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b81526108016004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b815261080c6004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b81526108006004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b81526108056004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b81526108036004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b81526108106004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b81526108046004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b604051632b65311f60e11b81526108026004820152905f826024815f51602061860a5f395f51905f525afa9182156151ad575f926171c557505f616ffb91604051809381926371aad10d60e01b8352602060048401526024830190613dbf565b80548210156142e5575f5260205f2001905f90565b60405190601754808352826020810160175f5260205f20925f5b81811061758b57505061454892500383613c23565b8454835260019485019487945060209093019201617576565b90604051918281549182825260208201905f5260205f20925f5b8181106175d357505061454892500383613c23565b84548352600194850194879450602090930192016175be565b617616906001600160a01b036040519116602082015260208152617611604082613c23565b617487565b8051156176ed578051810160208101916020818303126102b6576020810151906001600160401b0382116102b657019180603f840112156102b65760208301519161766083614478565b9361766e6040519586613c23565b83855260208060608188019602830101019283116102b657604001925b828410617699575050505090565b6060602085840301126102b65760206060916040516176b781613b9c565b6176c087616932565b81526176cd838801616514565b838201526176dd60408801616514565b604082015281520193019261768b565b506040516176fc602082613c23565b5f81525f805b81811061770e57505090565b602090617719613dfe565b82828601015201617702565b6001600160a01b0361776c9260405161773d81613b81565b5f81525f602082015250816040519316602084015216604082015260408152617767606082613c23565b6174e7565b8051156177ad576040818051810103126102b6576177a5604080519261779184613b81565b61779d60208201616514565b845201616514565b602082015290565b506040516177ba81613b81565b5f81525f602082015290565b805490600160401b821015610dee578161486f9160016177e894018155617547565b9055565b805f52601b60205260405f2054155f146178205761780b81601a6177c6565b601a54905f52601b60205260405f2055600190565b505f90565b805f52601860205260405f2054155f14617820576178448160176177c6565b601754905f52601860205260405f2055600190565b5f82815260018201602052604090205461788d578061787a836001936177c6565b8054925f520160205260405f2055600190565b50505f90565b5f818152601b6020526040902054801561788d575f198101818111610b5f57601a545f19810191908211610b5f57818103617906575b505050601a5480156109c7575f19016178e381601a617547565b8154905f199060031b1b19169055601a555f52601b6020525f6040812055600190565b61792861791761486f93601a617547565b90549060031b1c928392601a617547565b90555f52601b60205260405f20555f80806178c9565b906001820191815f528260205260405f20548015155f1461404a575f198101818111610b5f5782545f19810191908211610b5f578181036179b2575b505050805480156109c7575f1901906179938282617547565b8154905f199060031b1b19169055555f526020525f6040812055600190565b6179d26179c261486f9386617547565b90549060031b1c92839286617547565b90555f528360205260405f20555f808061797a565b60209291908391805192839101825e019081520190565b617a09600854614210565b617a8857617a1760026175a4565b9081518060051b9080820460201490151715610b5f57617a3681613de3565b90617a446040519283613c23565b808252617a53601f1991613de3565b013660208301375f5b8351811015617a835780617a726001928661448f565b5160208260051b8501015201617a5c565b509150565b604051613ead8161072c816008614248565b60078101617aa88154614210565b617b2557506001617ab991016175a4565b9081518060051b9080820460201490151715610b5f57617ad881613de3565b90617ae66040519283613c23565b808252617af5601f1991613de3565b013660208301375f5b8351811015617a835780617b146001928661448f565b5160208260051b8501015201617afe565b61072c9150613ead9060405192838092614248565b905f806020600285015460e01b617b556024614a5c88617a9a565b6001600160a01b036004870154169151915afa6003617b72614583565b9301548060051b906001600160fb1b03811603610b5f575f938051602081115f14617c1157506020905b5f925b828410617bae57505050509190565b90919295617bbc8783614576565b83518110156142e557830160200151600388901b91907fff0000000000000000000000000000000000000000000000000000000000000016881560088a8504141715610b5f576001921c179601929190617b9f565b90617b9c565b9080601f830112156102b6578151617c2e81614478565b92617c3c6040519485613c23565b81845260208085019260051b8201019283116102b657602001905b828210617c645750505090565b8151815260209182019101617c57565b5f906001600160a01b03600554169060035460e01b60045490617c976001617a9a565b90845f52600160205260405f209063ffffffff60e01b1690815f5260205260405f206040516020810190617cd0816148ed8888866179e7565b5190205f5260205260ff600360405f2001541661842e575f51602061860a5f395f51905f523b156102b65760405163266cf10960e01b81525f81600481835f51602061860a5f395f51905f525af180156151ad57618419575b50617d346001617b3a565b90506040516365bc948160e01b815286600482015287816024815f51602061860a5f395f51905f525afa9081156183af5788916183ba575b50805180617d78578880fd5b90617d89617dc79299979899613eb0565b906020617d96838361448f565b51604051630667f9d760e41b81526001600160a01b038d166004820152602481019190915293849081906044820190565b03815f51602061860a5f395f51905f525afa9283156183af57889361837c575b508215618331575b617df9828261448f565b51600554604051630667f9d760e41b81526001600160a01b03909116600482018190526024820183905291906020816044815f51602061860a5f395f51905f525afa908115618326578b916182f5575b50617e546001617b3a565b91909382155f146182ee575f19905b5f51602061860a5f395f51905f523b156182d5576040516370ca10bb60e01b81526001600160a01b039190911660048201526024810185905260448101919091528c81606481835f51602061860a5f395f51905f525af1801561826157908d916182d9575b5050617ed46001617b3a565b9390506001600160a01b03600554165f51602061860a5f395f51905f523b156182d5576040516370ca10bb60e01b81526001600160a01b03919091166004820152602481019190915260448101919091528b81606481835f51602061860a5f395f51905f525af18015614e8357908c916182bc575b5050826182b1575b5050156182a3578986888a968b9660ff6007541661810b575b6001898901610100031b5f1901881b16871c81036180f4575060806003969593617ff395936148ed617fc87f9c9555b1e3102e3cf48f427d79cb678f5d9bd1ed0ad574389461e255f95170ed956040519283916020830195866179e7565b519020617fd5868661448f565b51906040519283528b602084015260408301526060820152a161448f565b51906040519161800283613bb7565b825260208201938452604082019081526060820193600185528a8952600160205260408920868a52602052604089206040516020810190618048816148ed8d8d866179e7565b5190208a526020526040892092518355516001830155516002820155019051151560ff801983541691161790558584526001602052604084208185526020526040842060405160208101906180a2816148ed8888866179e7565b519020855260205260ff60036040862001541615614c1b5760409495845260016020528484209084526020526148ed6180e88585209386519283916020830195866179e7565b51902082526020522090565b96505050509150617d89617dc7915b929192613eb0565b97509250505061815a9350618120838361448f565b51600554604051630667f9d760e41b81526001600160a01b0390911660048201526024810182905290959094602090869081906044820190565b03815f51602061860a5f395f51905f525afa948515614e40578a95618270575b50618186866001618470565b959096618194816001618547565b9290916001600160a01b03600554165f51602061860a5f395f51905f523b1561826c576040516370ca10bb60e01b81526001600160a01b03919091166004820152602481019190915260448101919091528c81606481835f51602061860a5f395f51905f525af1801561826157928f95928e8d96938f9661823b575b50508a618233575b509798617f6a575096505050509150617d89617dc791618103565b99505f618218565b90939650839194975061824f929550613c23565b614e4b579289928b928f958e5f618210565b6040513d8f823e3d90fd5b8e80fd5b9094506020813d821161829b575b8161828b60209383613c23565b810103126102b65751935f61817a565b3d915061827e565b9150617d89617dc791618103565b141590505f80617f51565b816182c691613c23565b6182d1578a5f617f49565b8a80fd5b8d80fd5b816182e391613c23565b614e4b578b5f617ec8565b8c90617e63565b90506020813d821161831e575b8161830f60209383613c23565b810103126102b657515f617e49565b3d9150618302565b6040513d8d823e3d90fd5b7f080fc4a96620c4462e705b23f346413fe3796bb63c6f8d8591baec0e231577a561835c838361448f565b51604080516001600160a01b038e168152602081019290925290a1617def565b9092506020813d82116183a7575b8161839760209383613c23565b810103126102b65751915f617de7565b3d915061838a565b6040513d8a823e3d90fd5b90503d8089833e6183cb8183613c23565b810190604081830312614e3c5780516001600160401b038111614f9057826183f4918301617c17565b9160208201516001600160401b0381116182d1576184129201617c17565b505f617d6c565b6184269196505f90613c23565b5f945f617d29565b9193909294505f52600160205260405f20905f526020526148ed61846160405f20936040519283916020830195866179e7565b5190205f5260205260405f2090565b91905f5b610100811061848757505090505f905f90565b8060ff0360ff8111610b5f576001901b6001600160a01b036004860154165f51602061860a5f395f51905f523b156102b6576040516370ca10bb60e01b81526001600160a01b039190911660048201526024810184905260448101919091525f81606481835f51602061860a5f395f51905f525af180156151ad57618537575b5061851184617b3a565b8161852d575b5061852457600101618474565b92505060019190565b905015155f618517565b5f61854191613c23565b5f618507565b91905f5b610100811061855e57505090505f905f90565b6001811b6001600160a01b036004860154165f51602061860a5f395f51905f523b156102b6576040516370ca10bb60e01b81526001600160a01b039190911660048201526024810184905260448101919091525f81606481835f51602061860a5f395f51905f525af180156151ad576185f9575b506185dc84617b3a565b816185ef575b506185245760010161854b565b905015155f6185e2565b5f61860391613c23565b5f6185d256fe0000000000000000000000007109709ecfa91a80626ff3989d68f67f5b1dd12da26469706673582212207c6ead016b3d9ce35a2ff66de169d582e40ce952a4fe8937db28a95ceb627acc64736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"receive","stateMutability":"payable"}]}
1
+ {"abi":[{"type":"receive","stateMutability":"payable"}],"bytecode":"0x6080806040523460135760d3908160188239f35b5f80fdfe6080806040523615600e575f80fd5b7333333333333333333333333333333333333333333b1560995763ad1c3d8b60e01b81523360048201523360248201523460448201525f81606481347333333333333333333333333333333333333333335af18015608e57606b57005b67ffffffffffffffff10607a57005b634e487b7160e01b5f52604160045260245ffd5b6040513d5f823e3d90fd5b5f80fdfea264697066735822122053fef3ef36eda468adcd01bb63484090b550d19f5a5ebe09cc603651889c423364736f6c634300081e0033"}
@@ -1 +1 @@
1
- {"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"HYPE_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"USDC_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"forceAccountActivation","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceDelegation","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forcePerpBalance","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceSpot","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceStaking","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"},{"name":"name","type":"string","internalType":"string"},{"name":"evmContract","type":"address","internalType":"address"},{"name":"szDecimals","type":"uint8","internalType":"uint8"},{"name":"weiDecimals","type":"uint8","internalType":"uint8"},{"name":"evmExtraWeiDecimals","type":"int8","internalType":"int8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceVaultEquity","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"registerTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerValidator","inputs":[{"name":"validator","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"}]}
1
+ {"abi":[{"type":"constructor","inputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"HYPE_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"USDC_TOKEN_INDEX","inputs":[],"outputs":[{"name":"","type":"uint64","internalType":"uint64"}],"stateMutability":"view"},{"type":"function","name":"forceAccountActivation","inputs":[{"name":"account","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceDelegation","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"validator","type":"address","internalType":"address"},{"name":"amount","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forcePerpBalance","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceSpot","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"token","type":"uint64","internalType":"uint64"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceStaking","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"_wei","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"forceTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"},{"name":"name","type":"string","internalType":"string"},{"name":"evmContract","type":"address","internalType":"address"},{"name":"szDecimals","type":"uint8","internalType":"uint8"},{"name":"weiDecimals","type":"uint8","internalType":"uint8"},{"name":"evmExtraWeiDecimals","type":"int8","internalType":"int8"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"forceVaultEquity","inputs":[{"name":"account","type":"address","internalType":"address"},{"name":"vault","type":"address","internalType":"address"},{"name":"usd","type":"uint64","internalType":"uint64"},{"name":"lockedUntilTimestamp","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"payable"},{"type":"function","name":"registerTokenInfo","inputs":[{"name":"index","type":"uint64","internalType":"uint64"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"registerValidator","inputs":[{"name":"validator","type":"address","internalType":"address"}],"outputs":[],"stateMutability":"nonpayable"}],"bytecode":"0x60a08060405234603a57466103e60360315761ffff6104515b16608052611d2e908161003f82396080518161016e0152f35b61ffff60966018565b5f80fdfe60806040526004361015610011575f80fd5b5f3560e01c80630810bf0214610a6a578063554e110814610a495780635e3dcdab14610a2f578063668adf86146109b95780636c27e546146108bb57806371291d1b146107d15780637fa69383146105ff5780639fca5169146105d3578063da728ceb14610192578063faf2773a1461014f5763ff1e91b514610092575f80fd5b604036600319011261014b576100a6610aa7565b6100ae610ad3565b906001600160a01b03811690815f52600a60205260ff60405f20541615610121575b815f52600b60205260ff60405f20541615610112575b505f52600a6020526001600160401b03600560405f200191166001600160401b03198254161790555f80f35b61011b9061131f565b5f6100e6565b610146816001600160a01b03165f52600a60205260405f20600160ff19825416179055565b6100d0565b5f80fd5b3461014b575f36600319011261014b5760206040516001600160401b037f0000000000000000000000000000000000000000000000000000000000000000168152f35b3461014b5760c036600319011261014b576101ab610abd565b6024356001600160401b03811161014b573660238201121561014b5780600401356101d581610bd5565b916101e36040519384610bb4565b818352366024838301011161014b57815f926024602093018386013783010152604435916001600160a01b03831680930361014b5760643560ff811680910361014b576084359260ff841680940361014b5760a43592835f0b80940361014b576020906040516102538382610bb4565b5f81525f3681376040519361026785610b62565b845282840190815260408401925f84526001600160401b0360608601935f8552608087019a8b5260a0870197885260c08701998a5260e08701988952165f526009815260405f2094518051906001600160401b0382116105185781906102cd8854610bf0565b601f811161059a575b508390601f8311600114610537575f9261052c575b50508160011b915f199060031b1c19161785555b6001850191518051906001600160401b0382116105185768010000000000000000821161051857829084548386558084106104cc575b5001925f52815f20908060021c925f5b848110610488575060031982169091039081610424575b8b8b8b8b6001600160a01b038060038e8e8e6001600160401b038060028501935116166001600160401b0319835416178255517fffffffff0000000000000000000000000000000000000000ffffffffffffffff7bffffffffffffffffffffffffffffffffffffffff000000000000000083549260401b16911617905501955116166001600160a01b0319855416178455519162ffffff60a01b1960ff60a01b60ff60a81b8654935160a81b16935160b01b60ff60b01b169460a01b16911617171790555f80f35b93905f945f5b82811061044957505050500155828260036001600160a01b038061035c565b909192958261047d6001926001600160401b038a5116908560031b6001600160401b03809160031b9316831b921b19161790565b97019392910161042a565b5f5f5b600481106104a0575084820155600101610345565b875190979160019185916001600160401b0360068c901b81811b199092169216901b179201970161048b565b6104f990865f52835f20600380870160021c820192601888831b16806104ff575b500160021c0190610c28565b8c610335565b5f198501908154905f19908a03851b1c1690555f6104ed565b634e487b7160e01b5f52604160045260245ffd5b015190508b806102eb565b5f8981528581209350601f198516905b8682821061058457505090846001959493921061056c575b505050811b0185556102ff565b01515f1960f88460031b161c191690558b808061055f565b6001859682939686015181550195019301610547565b6105c390895f52855f20601f850160051c8101918786106105c9575b601f0160051c0190610c28565b8c6102d6565b90915081906105b6565b3461014b57602036600319011261014b576105fd6001600160a01b036105f7610aa7565b16611af1565b005b6001600160a01b0361061036610ae9565b919261063a819592956001600160a01b03165f52600a60205260405f20600160ff19825416179055565b1692835f52600a602052600260405f20016001600160a01b0384165f526020526001600160a01b036001600160401b0360405f205416931692835f52601360205260405f20906001600160401b03825416036001600160401b0381116107bd576001600160401b03166001600160401b0319825416179055825f52601360205260405f206001600160401b038154166001600160401b038316016001600160401b0381116107bd576001600160401b03166001600160401b0319825416179055835f52600a602052600260405f2001835f526020526001600160401b0360405f2091166001600160401b03198254161790556001600160401b03811615155f1461078c57915b5f52600a602052600260405f2001905f5260205260405f20906fffffffffffffffff000000000000000082549160401b16906fffffffffffffffff000000000000000019161790555f80f35b50610e1042018042116107bd576103e88102908082046103e814901517156107bd576001600160401b031691610740565b634e487b7160e01b5f52601160045260245ffd5b3461014b576001600160401b038060016107ea36610ae9565b916108128497946001600160a01b03165f52600a60205260405f20600160ff19825416179055565b6001600160a01b036040519761082789610b47565b81831689528560208a01941684528560408a0195168552165f52600a6020526001600160a01b03600460405f200191165f526020526001600160a01b038060405f20975116166001600160a01b03198754161786555167ffffffffffffffff60a01b1967ffffffffffffffff60a01b87549260a01b1691161785555116920191166001600160401b03198254161790555f80f35b606036600319011261014b576108cf610aa7565b6108d7610ad3565b604435916001600160401b038316830361014b576001600160a01b03811690815f52600a60205260ff60405f2054161561098f575b815f52600c60205260405f206001600160401b0384165f526020528260ff60405f20541615610976575b50505f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0360405f2091166001600160401b03198254161790555f80f35b6109889161098382610c3e565b611259565b8382610936565b6109b4816001600160a01b03165f52600a60205260405f20600160ff19825416179055565b61090c565b604036600319011261014b576109cd610aa7565b6001600160a01b036109dd610ad3565b91610a03816001600160a01b03165f52600a60205260405f20600160ff19825416179055565b165f52600a6020526001600160401b03600360405f200191166001600160401b03198254161790555f80f35b3461014b575f36600319011261014b5760206040515f8152f35b3461014b57602036600319011261014b576105fd610a65610abd565b610c3e565b3461014b57602036600319011261014b576105fd610a86610aa7565b6001600160a01b03165f52600a60205260405f20600160ff19825416179055565b600435906001600160a01b038216820361014b57565b600435906001600160401b038216820361014b57565b602435906001600160401b038216820361014b57565b608090600319011261014b576004356001600160a01b038116810361014b57906024356001600160a01b038116810361014b57906044356001600160401b038116810361014b57906064356001600160401b038116810361014b5790565b606081019081106001600160401b0382111761051857604052565b61010081019081106001600160401b0382111761051857604052565b602081019081106001600160401b0382111761051857604052565b608081019081106001600160401b0382111761051857604052565b90601f801991011681019081106001600160401b0382111761051857604052565b6001600160401b03811161051857601f01601f191660200190565b90600182811c92168015610c1e575b6020831014610c0a57565b634e487b7160e01b5f52602260045260245ffd5b91607f1691610bff565b818110610c33575050565b5f8155600101610c28565b6001600160401b03811690815f526009602052610c5e60405f2054610bf0565b610f935763ffffffff610c719116611037565b608081019160016001600160a01b0384511614610f8e575f52600960205260405f2081518051906001600160401b038211610518578190610cb28454610bf0565b601f8111610f5e575b50602090601f8311600114610efb575f92610ef0575b50508160011b915f199060031b1c19161781555b6001810160208301518051906001600160401b03821161051857680100000000000000008211610518576020908354838555808410610ebe575b5001915f5260205f208160021c915f5b838110610e7957506003198116900380610e19575b505050506001600160a01b0360038260028394016001600160401b0380604088015116166001600160401b031982541617815560608601517fffffffff0000000000000000000000000000000000000000ffffffffffffffff7bffffffffffffffffffffffffffffffffffffffff000000000000000083549260401b16911617905501935116166001600160a01b031983541617825560a081015190825462ffffff60a01b1960ff60a01b60e060ff60a81b60c086015160a81b1694015160b01b60ff60b01b169460a01b1691161717179055565b925f935f5b818110610e3b5750505001556001600160a01b036003815f610d44565b9091946020610e6f6001926001600160401b03895116908560031b6001600160401b03809160031b9316831b921b19161790565b9601929101610e1e565b5f5f5b60048110610e91575083820155600101610d2f565b86519096916001916020916001600160401b0360068b901b81811b199092169216901b1792019601610e7c565b610eea90855f52835f20600380870160021c820192601888831b16806104ff57500160021c0190610c28565b5f610d1f565b015190505f80610cd1565b5f8581528281209350601f198516905b818110610f465750908460019594939210610f2e575b505050811b018155610ce5565b01515f1960f88460031b161c191690555f8080610f21565b92936020600181928786015181550195019301610f0b565b610f8890855f5260205f20601f850160051c810191602086106105c957601f0160051c0190610c28565b5f610cbb565b505050565b5050565b6001600160401b0381116105185760051b60200190565b929192610fba82610bd5565b91610fc86040519384610bb4565b82948184528183011161014b578281602093845f96015e010152565b9080601f8301121561014b578151610ffe92602001610fae565b90565b51906001600160401b038216820361014b57565b51906001600160a01b038216820361014b57565b519060ff8216820361014b57565b61109a9060405161104781610b62565b60608152606060208201525f60408201525f60608201525f60808201525f60a08201525f60c08201525f60e08201525063ffffffff6040519116602082015260208152611095604082610bb4565b6115b3565b908151156111f65781518201602081019260208183031261014b576020810151906001600160401b03821161014b570190610100908290031261014b57604051906110e482610b62565b60208101516001600160401b03811161014b5784602061110692840101610fe4565b825260408101516001600160401b03811161014b5760209082010184601f8201121561014b5780519461113886610f97565b916111466040519384610bb4565b86835260208084019760051b82010191821161014b57602001955b8187106111de57505082939450602061010093015261118260608201611001565b604084015261119360808201611015565b60608401526111a460a08201611015565b60808401526111b560c08201611029565b60a08401526111c660e08201611029565b60c08401520151805f0b810361014b5760e082015290565b602080916111eb89611001565b815201960195611161565b905060206040516112078282610bb4565b5f81525f3681376040519161121b83610b62565b6040516112288282610bb4565b5f815283528201525f604082015260016060820152600160808201525f60a08201525f60c08201525f60e082015290565b906112638261131f565b6001600160a01b03821691825f52600a60205260ff60405f20541615610f8e576112b8826001600160401b0392855f52600c60205260405f208483165f5260205260405f20600160ff19825416179055611a2b565b5116915f52600a6020526001600160401b03600160405f200191165f526020526001600160401b0360405f2091166001600160401b0319825416179055565b805182101561130b5760209160051b010190565b634e487b7160e01b5f52603260045260245ffd5b6001600160a01b03811690815f52600b60205260ff60405f205416610f9357815f52600a60205260405f20915f60405161135881610b7e565b5261137960405182602082015260208152611374604082610bb4565b611828565b60208180518101031261014b5760206040519161139583610b7e565b01518015918215820361014b5752610f8e578061143a915f52600b60205260405f20600160ff19825416179055600160ff198554161784556001600160401b036113de84611b69565b51166001600160401b036005860191166001600160401b03198254161790555f606060405161140c81610b99565b828152826020820152826040820152015260405190602082015260208152611435604082610bb4565b61188f565b9060808280518101031261014b576114bd9160405161145881610b99565b61146460208301611001565b81526060611496608061147960408601611001565b9485602086015261148b848201611001565b604086015201611001565b9101526001600160401b0380600386019216166001600160401b0319825416179055611be8565b60045f9201915b8151811015610f8e57806114da600192846112f7565b516001600160a01b03806114ee84876112f7565b515116165f52846020526001600160401b0383816040805f20946001600160a01b0380825116166001600160a01b0319875416178655602081015167ffffffffffffffff60a01b1967ffffffffffffffff60a01b88549260a01b169116178655015116920191166001600160401b0319825416179055016114c4565b9060208282031261014b5781516001600160401b03811161014b57610ffe9201610fe4565b805180835260209291819084018484015e5f828201840152601f01601f1916010190565b604051632b65311f60e11b815261080c6004820152905f82602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa9182156117fb575f92611806575b505f61161b91604051809381926371aad10d60e01b835260206004840152602483019061158f565b0381737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa9081156117fb576116f5600c600a61174b95602860205f97819789916117d9575b506040519788947f5b7b22746f223a22000000000000000000000000000000000000000000000000828701528051918291018587015e8401907f222c2264617461223a220000000000000000000000000000000000000000000084830152805192839101603283015e01017f227d2c226c6174657374225d0000000000000000000000000000000000000000838201520301601319810184520182610bb4565b60405180938192630240d91560e31b835260406004840152600860448401527f6574685f63616c6c000000000000000000000000000000000000000000000000606484015260806024840152608483019061158f565b038183737109709ecfa91a80626ff3989d68f67f5b1dd12d5af15f9181611787575b50610ffe5750604051611781602082610bb4565b5f815290565b9091503d805f833e6117998183610bb4565b81019060208183031261014b578051906001600160401b03821161014b57019080601f8301121561014b5781516117d292602001610fae565b905f61176d565b6117f591503d808b833e6117ed8183610bb4565b81019061156a565b5f611655565b6040513d5f823e3d90fd5b61161b9192506118205f913d8084833e6117ed8183610bb4565b9291506115f3565b604051632b65311f60e11b81526108106004820152905f82602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa9182156117fb575f9261180657505f61161b91604051809381926371aad10d60e01b835260206004840152602483019061158f565b604051632b65311f60e11b81526108056004820152905f82602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa9182156117fb575f9261180657505f61161b91604051809381926371aad10d60e01b835260206004840152602483019061158f565b604051632b65311f60e11b81526108016004820152905f82602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa9182156117fb575f9261180657505f61161b91604051809381926371aad10d60e01b835260206004840152602483019061158f565b604051632b65311f60e11b81526108036004820152905f82602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa9182156117fb575f9261180657505f61161b91604051809381926371aad10d60e01b835260206004840152602483019061158f565b604051632b65311f60e11b81526108046004820152905f82602481737109709ecfa91a80626ff3989d68f67f5b1dd12d5afa9182156117fb575f9261180657505f61161b91604051809381926371aad10d60e01b835260206004840152602483019061158f565b6001600160401b03611a7f92604051611a4381610b47565b5f81525f60208201525f6040820152506001600160a01b036040519316602084015216604082015260408152611a7a606082610bb4565b6118f6565b805115611ad25760608180518101031261014b57611aca606060405192611aa584610b47565b611ab160208201611001565b8452611abf60408201611001565b602085015201611001565b604082015290565b50604051611adf81610b47565b5f81525f60208201525f604082015290565b805f52601860205260405f2054155f14611b64576017546801000000000000000081101561051857600181018060175581101561130b577fc624b66cc0138b8fabc209247f72d758e1cf3343756d543badbf24212bed8c15018190556017545f9182526018602052604090912055600190565b505f90565b611ba390604051611b7981610b7e565b5f8152506001600160a01b036040519116602082015260208152611b9e604082610bb4565b61195d565b805115611bd45760208180518101031261014b57611bcf602060405192611bc984610b7e565b01611001565b815290565b50604051611be181610b7e565b602d815290565b611c12906001600160a01b036040519116602082015260208152611c0d604082610bb4565b6119c4565b805115611ce95780518101602081019160208183031261014b576020810151906001600160401b03821161014b57019180603f8401121561014b57602083015191611c5c83610f97565b93611c6a6040519586610bb4565b838552602080606081880196028301010192831161014b57604001925b828410611c95575050505090565b60606020858403011261014b576020606091604051611cb381610b47565b611cbc87611015565b8152611cc9838801611001565b83820152611cd960408801611001565b6040820152815201930192611c87565b50604051611781602082610bb456fea2646970667358221220f67b65acdbaacfa4719cd082f7ebb3e544b12d7b04dc6ad4de57d368460000b164736f6c634300081e0033"}