@hyperlane-xyz/core 1.4.0 → 1.4.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.
- package/contracts/interfaces/IInterchainSecurityModule.sol +2 -2
- package/dist/factories/contracts/Mailbox__factory.d.ts +1 -1
- package/dist/factories/contracts/Mailbox__factory.js +1 -1
- package/dist/factories/contracts/ValidatorAnnounce__factory.d.ts +1 -1
- package/dist/factories/contracts/ValidatorAnnounce__factory.js +1 -1
- package/dist/factories/contracts/hooks/ERC5164/ERC5164MessageHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/ERC5164/ERC5164MessageHook__factory.js +1 -1
- package/dist/factories/contracts/hooks/OptimismMessageHook__factory.d.ts +1 -1
- package/dist/factories/contracts/hooks/OptimismMessageHook__factory.js +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/aggregation/StaticAggregationIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/hook/ERC5164ISM__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/hook/ERC5164ISM__factory.js +1 -1
- package/dist/factories/contracts/isms/hook/optimism/OptimismISM__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/hook/optimism/OptimismISM__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/LegacyMultisigIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMerkleRootMultisigIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/multisig/StaticMultisigIsm.sol/StaticMessageIdMultisigIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsmFactory__factory.js +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/routing/DomainRoutingIsm__factory.js +1 -1
- package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/isms/routing/InterchainAccountIsm__factory.js +1 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/InterchainAccountRouter__factory.js +1 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/InterchainQueryRouter__factory.js +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/LiquidityLayerRouter__factory.js +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter__factory.js +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.d.ts +1 -1
- package/dist/factories/contracts/middleware/liquidity-layer/adapters/PortalAdapter__factory.js +1 -1
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.d.ts +1 -1
- package/dist/factories/contracts/mock/MockHyperlaneEnvironment__factory.js +1 -1
- package/dist/factories/contracts/mock/MockMailbox__factory.d.ts +1 -1
- package/dist/factories/contracts/mock/MockMailbox__factory.js +1 -1
- package/dist/factories/contracts/test/LightTestRecipient__factory.d.ts +1 -1
- package/dist/factories/contracts/test/LightTestRecipient__factory.js +1 -1
- package/dist/factories/contracts/test/TestGasRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestGasRouter__factory.js +1 -1
- package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestHyperlaneConnectionClient__factory.js +1 -1
- package/dist/factories/contracts/test/TestLegacyMultisigIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestLegacyMultisigIsm__factory.js +1 -1
- package/dist/factories/contracts/test/TestMailbox__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestMailbox__factory.js +1 -1
- package/dist/factories/contracts/test/TestMultisigIsm__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestMultisigIsm__factory.js +1 -1
- package/dist/factories/contracts/test/TestQuery__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestQuery__factory.js +1 -1
- package/dist/factories/contracts/test/TestRecipient__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestRecipient__factory.js +1 -1
- package/dist/factories/contracts/test/TestRouter__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestRouter__factory.js +1 -1
- package/dist/factories/contracts/test/TestSendReceiver__factory.d.ts +1 -1
- package/dist/factories/contracts/test/TestSendReceiver__factory.js +1 -1
- package/docs/book.css +13 -0
- package/docs/book.toml +12 -0
- package/docs/solidity.min.js +74 -0
- package/docs/src/README.md +15 -0
- package/docs/src/SUMMARY.md +139 -0
- package/docs/src/contracts/GasRouter.sol/abstract.GasRouter.md +124 -0
- package/docs/src/contracts/HyperlaneConnectionClient.sol/abstract.HyperlaneConnectionClient.md +191 -0
- package/docs/src/contracts/Mailbox.sol/contract.Mailbox.md +251 -0
- package/docs/src/contracts/OwnableMulticall.sol/contract.OwnableMulticall.md +41 -0
- package/docs/src/contracts/PausableReentrancyGuard.sol/abstract.PausableReentrancyGuardUpgradeable.md +100 -0
- package/docs/src/contracts/README.md +19 -0
- package/docs/src/contracts/Router.sol/abstract.Router.md +255 -0
- package/docs/src/contracts/ValidatorAnnounce.sol/contract.ValidatorAnnounce.md +117 -0
- package/docs/src/contracts/hooks/ERC5164/ERC5164MessageHook.sol/contract.ERC5164MessageHook.md +64 -0
- package/docs/src/contracts/hooks/ERC5164/README.md +5 -0
- package/docs/src/contracts/hooks/ERC5164/interfaces/IMessageDispatcher.sol/interface.IMessageDispatcher.md +25 -0
- package/docs/src/contracts/hooks/ERC5164/interfaces/README.md +4 -0
- package/docs/src/contracts/hooks/OptimismMessageHook.sol/contract.OptimismMessageHook.md +71 -0
- package/docs/src/contracts/hooks/README.md +5 -0
- package/docs/src/contracts/igps/InterchainGasPaymaster.sol/contract.InterchainGasPaymaster.md +231 -0
- package/docs/src/contracts/igps/OverheadIgp.sol/contract.OverheadIgp.md +161 -0
- package/docs/src/contracts/igps/README.md +6 -0
- package/docs/src/contracts/igps/gas-oracles/README.md +4 -0
- package/docs/src/contracts/igps/gas-oracles/StorageGasOracle.sol/contract.StorageGasOracle.md +114 -0
- package/docs/src/contracts/interfaces/IGasOracle.sol/interface.IGasOracle.md +25 -0
- package/docs/src/contracts/interfaces/IHyperlaneConnectionClient.sol/interface.IHyperlaneConnectionClient.md +43 -0
- package/docs/src/contracts/interfaces/IInterchainGasPaymaster.sol/interface.IInterchainGasPaymaster.md +33 -0
- package/docs/src/contracts/interfaces/IInterchainSecurityModule.sol/interface.IInterchainSecurityModule.md +55 -0
- package/docs/src/contracts/interfaces/IInterchainSecurityModule.sol/interface.ISpecifiesInterchainSecurityModule.md +12 -0
- package/docs/src/contracts/interfaces/ILiquidityLayerMessageRecipient.sol/interface.ILiquidityLayerMessageRecipient.md +13 -0
- package/docs/src/contracts/interfaces/ILiquidityLayerRouter.sol/interface.ILiquidityLayerRouter.md +19 -0
- package/docs/src/contracts/interfaces/IMailbox.sol/interface.IMailbox.md +103 -0
- package/docs/src/contracts/interfaces/IMessageRecipient.sol/interface.IMessageRecipient.md +12 -0
- package/docs/src/contracts/interfaces/IRouter.sol/interface.IRouter.md +33 -0
- package/docs/src/contracts/interfaces/IValidatorAnnounce.sol/interface.IValidatorAnnounce.md +78 -0
- package/docs/src/contracts/interfaces/README.md +17 -0
- package/docs/src/contracts/interfaces/hooks/IMessageHook.sol/interface.IMessageHook.md +12 -0
- package/docs/src/contracts/interfaces/hooks/README.md +4 -0
- package/docs/src/contracts/interfaces/isms/IAggregationIsm.sol/interface.IAggregationIsm.md +36 -0
- package/docs/src/contracts/interfaces/isms/IMultisigIsm.sol/interface.IMultisigIsm.md +36 -0
- package/docs/src/contracts/interfaces/isms/IRoutingIsm.sol/interface.IRoutingIsm.md +31 -0
- package/docs/src/contracts/interfaces/isms/README.md +6 -0
- package/docs/src/contracts/interfaces/middleware/IInterchainAccountRouter.sol/interface.IInterchainAccountRouter.md +64 -0
- package/docs/src/contracts/interfaces/middleware/IInterchainQueryRouter.sol/interface.IInterchainQueryRouter.md +21 -0
- package/docs/src/contracts/interfaces/middleware/README.md +5 -0
- package/docs/src/contracts/isms/README.md +7 -0
- package/docs/src/contracts/isms/aggregation/AbstractAggregationIsm.sol/abstract.AbstractAggregationIsm.md +60 -0
- package/docs/src/contracts/isms/aggregation/README.md +6 -0
- package/docs/src/contracts/isms/aggregation/StaticAggregationIsm.sol/contract.StaticAggregationIsm.md +30 -0
- package/docs/src/contracts/isms/aggregation/StaticAggregationIsmFactory.sol/contract.StaticAggregationIsmFactory.md +15 -0
- package/docs/src/contracts/isms/hook/AbstractHookISM.sol/abstract.AbstractHookISM.md +44 -0
- package/docs/src/contracts/isms/hook/CrossChainEnabled.sol/abstract.CrossChainEnabled.md +74 -0
- package/docs/src/contracts/isms/hook/ERC5164ISM.sol/contract.ERC5164ISM.md +57 -0
- package/docs/src/contracts/isms/hook/README.md +7 -0
- package/docs/src/contracts/isms/hook/optimism/CrossChainEnabledOptimism.sol/abstract.CrossChainEnabledOptimism.md +53 -0
- package/docs/src/contracts/isms/hook/optimism/LibOptimism.sol/library.LibOptimism.md +39 -0
- package/docs/src/contracts/isms/hook/optimism/OptimismISM.sol/contract.OptimismISM.md +66 -0
- package/docs/src/contracts/isms/hook/optimism/README.md +6 -0
- package/docs/src/contracts/isms/multisig/AbstractMerkleRootMultisigIsm.sol/abstract.AbstractMerkleRootMultisigIsm.md +78 -0
- package/docs/src/contracts/isms/multisig/AbstractMessageIdMultisigIsm.sol/abstract.AbstractMessageIdMultisigIsm.md +69 -0
- package/docs/src/contracts/isms/multisig/AbstractMultisigIsm.sol/abstract.AbstractMultisigIsm.md +102 -0
- package/docs/src/contracts/isms/multisig/LegacyMultisigIsm.sol/contract.LegacyMultisigIsm.md +355 -0
- package/docs/src/contracts/isms/multisig/README.md +12 -0
- package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/abstract.AbstractMetaProxyMultisigIsm.md +36 -0
- package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMerkleRootMultisigIsm.md +11 -0
- package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMerkleRootMultisigIsmFactory.md +15 -0
- package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMessageIdMultisigIsm.md +10 -0
- package/docs/src/contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMessageIdMultisigIsmFactory.md +15 -0
- package/docs/src/contracts/isms/routing/AbstractRoutingIsm.sol/abstract.AbstractRoutingIsm.md +55 -0
- package/docs/src/contracts/isms/routing/DomainRoutingIsm.sol/contract.DomainRoutingIsm.md +112 -0
- package/docs/src/contracts/isms/routing/DomainRoutingIsmFactory.sol/contract.DomainRoutingIsmFactory.md +47 -0
- package/docs/src/contracts/isms/routing/InterchainAccountIsm.sol/contract.InterchainAccountIsm.md +44 -0
- package/docs/src/contracts/isms/routing/README.md +7 -0
- package/docs/src/contracts/libs/Call.sol/library.CallLib.md +124 -0
- package/docs/src/contracts/libs/CheckpointLib.sol/library.CheckpointLib.md +61 -0
- package/docs/src/contracts/libs/EnumerableMapExtended.sol/library.EnumerableMapExtended.md +63 -0
- package/docs/src/contracts/libs/LegacyCheckpointLib.sol/library.LegacyCheckpointLib.md +55 -0
- package/docs/src/contracts/libs/Merkle.sol/library.MerkleLib.md +354 -0
- package/docs/src/contracts/libs/Message.sol/library.Message.md +304 -0
- package/docs/src/contracts/libs/MetaProxy.sol/library.MetaProxy.md +36 -0
- package/docs/src/contracts/libs/MinimalProxy.sol/library.MinimalProxy.md +34 -0
- package/docs/src/contracts/libs/README.md +16 -0
- package/docs/src/contracts/libs/StaticMOfNAddressSetFactory.sol/abstract.StaticMOfNAddressSetFactory.md +123 -0
- package/docs/src/contracts/libs/TypeCasts.sol/library.TypeCasts.md +19 -0
- package/docs/src/contracts/libs/ValidatorAnnouncements.sol/library.ValidatorAnnouncements.md +31 -0
- package/docs/src/contracts/libs/isms/AggregationIsmMetadata.sol/library.AggregationIsmMetadata.md +97 -0
- package/docs/src/contracts/libs/isms/LegacyMultisigIsmMetadata.sol/library.LegacyMultisigIsmMetadata.md +296 -0
- package/docs/src/contracts/libs/isms/MerkleRootMultisigIsmMetadata.sol/library.MerkleRootMultisigIsmMetadata.md +177 -0
- package/docs/src/contracts/libs/isms/MessageIdMultisigIsmMetadata.sol/library.MessageIdMultisigIsmMetadata.md +109 -0
- package/docs/src/contracts/libs/isms/README.md +7 -0
- package/docs/src/contracts/libs/middleware/InterchainAccountMessage.sol/library.InterchainAccountMessage.md +134 -0
- package/docs/src/contracts/libs/middleware/InterchainQueryMessage.sol/library.InterchainQueryMessage.md +203 -0
- package/docs/src/contracts/libs/middleware/README.md +5 -0
- package/docs/src/contracts/middleware/InterchainAccountRouter.sol/contract.InterchainAccountRouter.md +542 -0
- package/docs/src/contracts/middleware/InterchainQueryRouter.sol/contract.InterchainQueryRouter.md +119 -0
- package/docs/src/contracts/middleware/README.md +6 -0
- package/docs/src/contracts/middleware/liquidity-layer/LiquidityLayerRouter.sol/contract.LiquidityLayerRouter.md +81 -0
- package/docs/src/contracts/middleware/liquidity-layer/README.md +6 -0
- package/docs/src/contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.sol/contract.CircleBridgeAdapter.md +197 -0
- package/docs/src/contracts/middleware/liquidity-layer/adapters/PortalAdapter.sol/contract.PortalAdapter.md +189 -0
- package/docs/src/contracts/middleware/liquidity-layer/adapters/README.md +5 -0
- package/docs/src/contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter.sol/interface.ILiquidityLayerAdapter.md +23 -0
- package/docs/src/contracts/middleware/liquidity-layer/interfaces/README.md +6 -0
- package/docs/src/contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter.sol/interface.ICircleMessageTransmitter.md +54 -0
- package/docs/src/contracts/middleware/liquidity-layer/interfaces/circle/ITokenMessenger.sol/interface.ITokenMessenger.md +92 -0
- package/docs/src/contracts/middleware/liquidity-layer/interfaces/circle/README.md +5 -0
- package/docs/src/contracts/middleware/liquidity-layer/interfaces/portal/IPortalTokenBridge.sol/interface.IPortalTokenBridge.md +131 -0
- package/docs/src/contracts/middleware/liquidity-layer/interfaces/portal/README.md +4 -0
- package/docs/src/contracts/mock/MockCircleMessageTransmitter.sol/contract.MockCircleMessageTransmitter.md +58 -0
- package/docs/src/contracts/mock/MockCircleTokenMessenger.sol/contract.MockCircleTokenMessenger.md +44 -0
- package/docs/src/contracts/mock/MockERC5164.sol/contract.MockMessageDispatcher.md +15 -0
- package/docs/src/contracts/mock/MockERC5164.sol/contract.MockMessageExecutor.md +11 -0
- package/docs/src/contracts/mock/MockHyperlaneEnvironment.sol/contract.MockHyperlaneEnvironment.md +69 -0
- package/docs/src/contracts/mock/MockMailbox.sol/contract.MockMailbox.md +137 -0
- package/docs/src/contracts/mock/MockPortalBridge.sol/contract.MockPortalBridge.md +82 -0
- package/docs/src/contracts/mock/MockToken.sol/contract.MockToken.md +22 -0
- package/docs/src/contracts/mock/README.md +11 -0
- package/docs/src/contracts/test/LightTestRecipient.sol/contract.LightTestRecipient.md +15 -0
- package/docs/src/contracts/test/README.md +20 -0
- package/docs/src/contracts/test/TestGasRouter.sol/contract.TestGasRouter.md +27 -0
- package/docs/src/contracts/test/TestHyperlaneConnectionClient.sol/contract.TestHyperlaneConnectionClient.md +29 -0
- package/docs/src/contracts/test/TestInterchainGasPaymaster.sol/contract.TestInterchainGasPaymaster.md +30 -0
- package/docs/src/contracts/test/TestLegacyMultisigIsm.sol/contract.TestLegacyMultisigIsm.md +15 -0
- package/docs/src/contracts/test/TestLiquidityLayerMessageRecipient.sol/contract.TestLiquidityLayerMessageRecipient.md +23 -0
- package/docs/src/contracts/test/TestMailbox.sol/contract.TestMailbox.md +29 -0
- package/docs/src/contracts/test/TestMerkle.sol/contract.TestMerkle.md +50 -0
- package/docs/src/contracts/test/TestMessage.sol/contract.TestMessage.md +68 -0
- package/docs/src/contracts/test/TestMultisigIsm.sol/contract.TestMultisigIsm.md +51 -0
- package/docs/src/contracts/test/TestQuery.sol/contract.TestQuery.md +45 -0
- package/docs/src/contracts/test/TestQuerySender.sol/contract.TestQuerySender.md +128 -0
- package/docs/src/contracts/test/TestRecipient.sol/contract.TestRecipient.md +78 -0
- package/docs/src/contracts/test/TestRouter.sol/contract.TestRouter.md +63 -0
- package/docs/src/contracts/test/TestSendReceiver.sol/contract.TestSendReceiver.md +49 -0
- package/docs/src/contracts/test/TestTokenRecipient.sol/contract.TestTokenRecipient.md +80 -0
- package/docs/src/contracts/test/bad-recipient/BadRecipient1.sol/contract.BadRecipient1.md +15 -0
- package/docs/src/contracts/test/bad-recipient/BadRecipient2.sol/contract.BadRecipient2.md +12 -0
- package/docs/src/contracts/test/bad-recipient/BadRecipient3.sol/contract.BadRecipient3.md +15 -0
- package/docs/src/contracts/test/bad-recipient/BadRecipient5.sol/contract.BadRecipient5.md +15 -0
- package/docs/src/contracts/test/bad-recipient/BadRecipient6.sol/contract.BadRecipient6.md +15 -0
- package/docs/src/contracts/test/bad-recipient/README.md +8 -0
- package/docs/src/contracts/upgrade/README.md +4 -0
- package/docs/src/contracts/upgrade/Versioned.sol/contract.Versioned.md +14 -0
- package/package.json +3 -3
|
@@ -12,7 +12,7 @@ export declare class TestRouter__factory extends ContractFactory {
|
|
|
12
12
|
}): TransactionRequest;
|
|
13
13
|
attach(address: string): TestRouter;
|
|
14
14
|
connect(signer: Signer): TestRouter__factory;
|
|
15
|
-
static readonly bytecode = "0x608060405234801561001057600080fd5b506119ae806100206000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100c0578063de523cf311610074578063f1bd6f0a11610059578063f1bd6f0a146103af578063f2fde38b146103cf578063f3c61d6b146103ef57600080fd5b8063de523cf314610362578063e9198bf91461038f57600080fd5b80638da5cb5b116100a55780638da5cb5b146102ea578063b49c53a714610315578063d5438eae1461033557600080fd5b8063715018a6146102b55780637249609f146102ca57600080fd5b806339bb4ad911610117578063485cc955116100fc578063485cc95514610262578063563e81e51461028257806356d5d4751461029557600080fd5b806339bb4ad9146101ee578063440df4f41461024057600080fd5b80630e72cc0614610149578063133b79a91461016b5780632e6a9e4b1461019e5780632ead72f6146101ce575b600080fd5b34801561015557600080fd5b50610169610164366004611404565b61040f565b005b34801561017757600080fd5b5061018b610186366004611433565b610423565b6040519081526020015b60405180910390f35b3480156101aa57600080fd5b506101be6101b936600461144e565b610434565b6040519015158152602001610195565b3480156101da57600080fd5b5061018b6101e9366004611433565b610447565b3480156101fa57600080fd5b5060665461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610195565b34801561024c57600080fd5b50610255610483565b6040516101959190611478565b34801561026e57600080fd5b5061016961027d3660046114c2565b61053e565b6101696102903660046115cf565b610702565b3480156102a157600080fd5b506101696102b0366004611641565b610717565b3480156102c157600080fd5b506101696107fb565b3480156102d657600080fd5b506101696102e53660046116c8565b61080f565b3480156102f657600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff1661021b565b34801561032157600080fd5b5061016961033036600461144e565b610819565b34801561034157600080fd5b5060655461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561036e57600080fd5b5060675461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561039b57600080fd5b506101696103aa366004611762565b61082f565b3480156103bb57600080fd5b506101696103ca366004611404565b610906565b3480156103db57600080fd5b506101696103ea366004611404565b610917565b3480156103fb57600080fd5b5061016961040a366004611404565b6109cb565b6104176109dc565b61042081610a5d565b50565b600061042e82610b6b565b92915050565b60006104408383610bd6565b9392505050565b600061045d609863ffffffff80851690610bea16565b156104765761042e609863ffffffff80851690610bf616565b506000919050565b919050565b609880546060919060008167ffffffffffffffff8111156104a6576104a66114f5565b6040519080825280602002602001820160405280156104cf578160200160208202803683370190505b50905060005b82811015610536578381815481106104ef576104ef6117ce565b906000526020600020015460001c82828151811061050f5761050f6117ce565b63ffffffff909216602092830291909101909101528061052e8161182c565b9150506104d5565b509392505050565b600054610100900460ff161580801561055e5750600054600160ff909116105b806105785750303b158015610578575060005460ff166001145b610609576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561066757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6106718383610c02565b6040517fb5673f91a88e1d934867629094eedba1c72a382fbe5f32a41bacb5098900fdf990600090a180156106fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b61070f8585858585610cab565b505050505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610798576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f216d61696c626f780000000000000000000000000000000000000000000000006044820152606401610600565b83836107a48282610bd6565b60405180608001604052806043815260200161193660439139906107f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b5061070f565b6108036109dc565b61080d6000610d69565b565b6106fd8282610de0565b6108216109dc565b61082b8282610e92565b5050565b6108376109dc565b8281146108a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610600565b8260005b8181101561070f576108f48686838181106108c1576108c16117ce565b90506020020160208101906108d69190611433565b8585848181106108e8576108e86117ce565b90506020020135610e92565b6108ff6001826118db565b90506108a4565b61090e6109dc565b61042081610eec565b61091f6109dc565b73ffffffffffffffffffffffffffffffffffffffff81166109c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610600565b61042081610d69565b6109d36109dc565b61042081610fdb565b60335473ffffffffffffffffffffffffffffffffffffffff16331461080d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610600565b73ffffffffffffffffffffffffffffffffffffffff81161580610a96575073ffffffffffffffffffffffffffffffffffffffff81163b15155b610afc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517ffec811ed4e60aebdaf7a79cad8a97196bf56e35362f039705598226d30c9d24890600090a250565b6000610b7682610447565b90506000801b8114156040518060800160405280604381526020016119366043913990610bd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b50919050565b600081610be284610447565b149392505050565b600061044083836110ca565b600061044083836110d6565b600054610100900460ff16610c99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b610ca281610eec565b61082b82611160565b6000610cb78686610de0565b6066546040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810183905263ffffffff891660248201526044810187905273ffffffffffffffffffffffffffffffffffffffff85811660648301529293509116906311bf2c189085906084016000604051808303818588803b158015610d4157600080fd5b505af1158015610d55573d6000803e3d6000fd5b505050505095945050505050565b50505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080610dec84610b6b565b6065546040517ffa31de0100000000000000000000000000000000000000000000000000000000815291925073ffffffffffffffffffffffffffffffffffffffff169063fa31de0190610e47908790859088906004016118ee565b6020604051808303816000875af1158015610e66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8a919061191c565b949350505050565b610ea8609863ffffffff80851690849061120816565b8163ffffffff167f97fd51fef1f80c854cbd0150c248e8b2ac4ecdc97cc05e742b5f61c9f4dc645882604051610ee091815260200190565b60405180910390a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b610f6b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517fb87f5a0bface22cde699143559fb99f990ae54eea236995fc54178af91af859f90600090a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b61105a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517f7a61e573722ff8b205c8962b59d37e7d30573f368965597a844a94872204ebd790600090a25050565b60006104408383611213565b6000818152600283016020526040812054801515806110fa57506110fa84846110ca565b610440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f456e756d657261626c654d61703a206e6f6e6578697374656e74206b657900006044820152606401610600565b600054610100900460ff166111f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61120081610fdb565b61042061122b565b610d638383836112ca565b60008181526001830160205260408120541515610440565b600054610100900460ff166112c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d6112e7565b60008281526002840160205260408120829055610e8a8484611387565b600054610100900460ff1661137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d33610d69565b6000818152600183016020526040812054610440908490849084906113d85750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561042e565b50600061042e565b803573ffffffffffffffffffffffffffffffffffffffff8116811461047e57600080fd5b60006020828403121561141657600080fd5b610440826113e0565b803563ffffffff8116811461047e57600080fd5b60006020828403121561144557600080fd5b6104408261141f565b6000806040838503121561146157600080fd5b61146a8361141f565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156114b657835163ffffffff1683529284019291840191600101611494565b50909695505050505050565b600080604083850312156114d557600080fd5b6114de836113e0565b91506114ec602084016113e0565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261153557600080fd5b813567ffffffffffffffff80821115611550576115506114f5565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611596576115966114f5565b816040528381528660208588010111156115af57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a086880312156115e757600080fd5b6115f08661141f565b9450602086013567ffffffffffffffff81111561160c57600080fd5b61161888828901611524565b9450506040860135925060608601359150611635608087016113e0565b90509295509295909350565b6000806000806060858703121561165757600080fd5b6116608561141f565b935060208501359250604085013567ffffffffffffffff8082111561168457600080fd5b818701915087601f83011261169857600080fd5b8135818111156116a757600080fd5b8860208285010111156116b957600080fd5b95989497505060200194505050565b600080604083850312156116db57600080fd5b6116e48361141f565b9150602083013567ffffffffffffffff81111561170057600080fd5b61170c85828601611524565b9150509250929050565b60008083601f84011261172857600080fd5b50813567ffffffffffffffff81111561174057600080fd5b6020830191508360208260051b850101111561175b57600080fd5b9250929050565b6000806000806040858703121561177857600080fd5b843567ffffffffffffffff8082111561179057600080fd5b61179c88838901611716565b909650945060208701359150808211156117b557600080fd5b506117c287828801611716565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361185d5761185d6117fd565b5060010190565b6000815180845260005b8181101561188a5760208185018101518683018201520161186e565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6020815260006104406020830184611864565b8082018082111561042e5761042e6117fd565b63ffffffff841681528260208201526060604082015260006119136060830184611864565b95945050505050565b60006020828403121561192e57600080fd5b505191905056fe4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e2e2044696420796f7520737065636966792074686520726967687420646f6d61696e2049443fa264697066735822122003b1b08209a522b5a4a68cae1f85d190bda648dfd74942faf275ea54d642057164736f6c63430008110033";
|
|
15
|
+
static readonly bytecode = "0x608060405234801561001057600080fd5b506119ae806100206000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100c0578063de523cf311610074578063f1bd6f0a11610059578063f1bd6f0a146103af578063f2fde38b146103cf578063f3c61d6b146103ef57600080fd5b8063de523cf314610362578063e9198bf91461038f57600080fd5b80638da5cb5b116100a55780638da5cb5b146102ea578063b49c53a714610315578063d5438eae1461033557600080fd5b8063715018a6146102b55780637249609f146102ca57600080fd5b806339bb4ad911610117578063485cc955116100fc578063485cc95514610262578063563e81e51461028257806356d5d4751461029557600080fd5b806339bb4ad9146101ee578063440df4f41461024057600080fd5b80630e72cc0614610149578063133b79a91461016b5780632e6a9e4b1461019e5780632ead72f6146101ce575b600080fd5b34801561015557600080fd5b50610169610164366004611404565b61040f565b005b34801561017757600080fd5b5061018b610186366004611433565b610423565b6040519081526020015b60405180910390f35b3480156101aa57600080fd5b506101be6101b936600461144e565b610434565b6040519015158152602001610195565b3480156101da57600080fd5b5061018b6101e9366004611433565b610447565b3480156101fa57600080fd5b5060665461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610195565b34801561024c57600080fd5b50610255610483565b6040516101959190611478565b34801561026e57600080fd5b5061016961027d3660046114c2565b61053e565b6101696102903660046115cf565b610702565b3480156102a157600080fd5b506101696102b0366004611641565b610717565b3480156102c157600080fd5b506101696107fb565b3480156102d657600080fd5b506101696102e53660046116c8565b61080f565b3480156102f657600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff1661021b565b34801561032157600080fd5b5061016961033036600461144e565b610819565b34801561034157600080fd5b5060655461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561036e57600080fd5b5060675461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561039b57600080fd5b506101696103aa366004611762565b61082f565b3480156103bb57600080fd5b506101696103ca366004611404565b610906565b3480156103db57600080fd5b506101696103ea366004611404565b610917565b3480156103fb57600080fd5b5061016961040a366004611404565b6109cb565b6104176109dc565b61042081610a5d565b50565b600061042e82610b6b565b92915050565b60006104408383610bd6565b9392505050565b600061045d609863ffffffff80851690610bea16565b156104765761042e609863ffffffff80851690610bf616565b506000919050565b919050565b609880546060919060008167ffffffffffffffff8111156104a6576104a66114f5565b6040519080825280602002602001820160405280156104cf578160200160208202803683370190505b50905060005b82811015610536578381815481106104ef576104ef6117ce565b906000526020600020015460001c82828151811061050f5761050f6117ce565b63ffffffff909216602092830291909101909101528061052e8161182c565b9150506104d5565b509392505050565b600054610100900460ff161580801561055e5750600054600160ff909116105b806105785750303b158015610578575060005460ff166001145b610609576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561066757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6106718383610c02565b6040517fb5673f91a88e1d934867629094eedba1c72a382fbe5f32a41bacb5098900fdf990600090a180156106fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b61070f8585858585610cab565b505050505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610798576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f216d61696c626f780000000000000000000000000000000000000000000000006044820152606401610600565b83836107a48282610bd6565b60405180608001604052806043815260200161193660439139906107f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b5061070f565b6108036109dc565b61080d6000610d69565b565b6106fd8282610de0565b6108216109dc565b61082b8282610e92565b5050565b6108376109dc565b8281146108a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610600565b8260005b8181101561070f576108f48686838181106108c1576108c16117ce565b90506020020160208101906108d69190611433565b8585848181106108e8576108e86117ce565b90506020020135610e92565b6108ff6001826118db565b90506108a4565b61090e6109dc565b61042081610eec565b61091f6109dc565b73ffffffffffffffffffffffffffffffffffffffff81166109c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610600565b61042081610d69565b6109d36109dc565b61042081610fdb565b60335473ffffffffffffffffffffffffffffffffffffffff16331461080d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610600565b73ffffffffffffffffffffffffffffffffffffffff81161580610a96575073ffffffffffffffffffffffffffffffffffffffff81163b15155b610afc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517ffec811ed4e60aebdaf7a79cad8a97196bf56e35362f039705598226d30c9d24890600090a250565b6000610b7682610447565b90506000801b8114156040518060800160405280604381526020016119366043913990610bd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b50919050565b600081610be284610447565b149392505050565b600061044083836110ca565b600061044083836110d6565b600054610100900460ff16610c99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b610ca281610eec565b61082b82611160565b6000610cb78686610de0565b6066546040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810183905263ffffffff891660248201526044810187905273ffffffffffffffffffffffffffffffffffffffff85811660648301529293509116906311bf2c189085906084016000604051808303818588803b158015610d4157600080fd5b505af1158015610d55573d6000803e3d6000fd5b505050505095945050505050565b50505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080610dec84610b6b565b6065546040517ffa31de0100000000000000000000000000000000000000000000000000000000815291925073ffffffffffffffffffffffffffffffffffffffff169063fa31de0190610e47908790859088906004016118ee565b6020604051808303816000875af1158015610e66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8a919061191c565b949350505050565b610ea8609863ffffffff80851690849061120816565b8163ffffffff167f97fd51fef1f80c854cbd0150c248e8b2ac4ecdc97cc05e742b5f61c9f4dc645882604051610ee091815260200190565b60405180910390a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b610f6b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517fb87f5a0bface22cde699143559fb99f990ae54eea236995fc54178af91af859f90600090a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b61105a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517f7a61e573722ff8b205c8962b59d37e7d30573f368965597a844a94872204ebd790600090a25050565b60006104408383611213565b6000818152600283016020526040812054801515806110fa57506110fa84846110ca565b610440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f456e756d657261626c654d61703a206e6f6e6578697374656e74206b657900006044820152606401610600565b600054610100900460ff166111f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61120081610fdb565b61042061122b565b610d638383836112ca565b60008181526001830160205260408120541515610440565b600054610100900460ff166112c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d6112e7565b60008281526002840160205260408120829055610e8a8484611387565b600054610100900460ff1661137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d33610d69565b6000818152600183016020526040812054610440908490849084906113d85750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561042e565b50600061042e565b803573ffffffffffffffffffffffffffffffffffffffff8116811461047e57600080fd5b60006020828403121561141657600080fd5b610440826113e0565b803563ffffffff8116811461047e57600080fd5b60006020828403121561144557600080fd5b6104408261141f565b6000806040838503121561146157600080fd5b61146a8361141f565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156114b657835163ffffffff1683529284019291840191600101611494565b50909695505050505050565b600080604083850312156114d557600080fd5b6114de836113e0565b91506114ec602084016113e0565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261153557600080fd5b813567ffffffffffffffff80821115611550576115506114f5565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611596576115966114f5565b816040528381528660208588010111156115af57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a086880312156115e757600080fd5b6115f08661141f565b9450602086013567ffffffffffffffff81111561160c57600080fd5b61161888828901611524565b9450506040860135925060608601359150611635608087016113e0565b90509295509295909350565b6000806000806060858703121561165757600080fd5b6116608561141f565b935060208501359250604085013567ffffffffffffffff8082111561168457600080fd5b818701915087601f83011261169857600080fd5b8135818111156116a757600080fd5b8860208285010111156116b957600080fd5b95989497505060200194505050565b600080604083850312156116db57600080fd5b6116e48361141f565b9150602083013567ffffffffffffffff81111561170057600080fd5b61170c85828601611524565b9150509250929050565b60008083601f84011261172857600080fd5b50813567ffffffffffffffff81111561174057600080fd5b6020830191508360208260051b850101111561175b57600080fd5b9250929050565b6000806000806040858703121561177857600080fd5b843567ffffffffffffffff8082111561179057600080fd5b61179c88838901611716565b909650945060208701359150808211156117b557600080fd5b506117c287828801611716565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361185d5761185d6117fd565b5060010190565b6000815180845260005b8181101561188a5760208185018101518683018201520161186e565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6020815260006104406020830184611864565b8082018082111561042e5761042e6117fd565b63ffffffff841681528260208201526060604082015260006119136060830184611864565b95945050505050565b60006020828403121561192e57600080fd5b505191905056fe4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e2e2044696420796f7520737065636966792074686520726967687420646f6d61696e2049443fa2646970667358221220007f2e75f7dc70e77a0e720bd90ef8775c37aaa6931c69e12ae225a4d8dd9c8c64736f6c63430008110033";
|
|
16
16
|
static readonly abi: ({
|
|
17
17
|
anonymous: boolean;
|
|
18
18
|
inputs: {
|
|
@@ -415,7 +415,7 @@ const _abi = [
|
|
|
415
415
|
type: "function",
|
|
416
416
|
},
|
|
417
417
|
];
|
|
418
|
-
const _bytecode = "0x608060405234801561001057600080fd5b506119ae806100206000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100c0578063de523cf311610074578063f1bd6f0a11610059578063f1bd6f0a146103af578063f2fde38b146103cf578063f3c61d6b146103ef57600080fd5b8063de523cf314610362578063e9198bf91461038f57600080fd5b80638da5cb5b116100a55780638da5cb5b146102ea578063b49c53a714610315578063d5438eae1461033557600080fd5b8063715018a6146102b55780637249609f146102ca57600080fd5b806339bb4ad911610117578063485cc955116100fc578063485cc95514610262578063563e81e51461028257806356d5d4751461029557600080fd5b806339bb4ad9146101ee578063440df4f41461024057600080fd5b80630e72cc0614610149578063133b79a91461016b5780632e6a9e4b1461019e5780632ead72f6146101ce575b600080fd5b34801561015557600080fd5b50610169610164366004611404565b61040f565b005b34801561017757600080fd5b5061018b610186366004611433565b610423565b6040519081526020015b60405180910390f35b3480156101aa57600080fd5b506101be6101b936600461144e565b610434565b6040519015158152602001610195565b3480156101da57600080fd5b5061018b6101e9366004611433565b610447565b3480156101fa57600080fd5b5060665461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610195565b34801561024c57600080fd5b50610255610483565b6040516101959190611478565b34801561026e57600080fd5b5061016961027d3660046114c2565b61053e565b6101696102903660046115cf565b610702565b3480156102a157600080fd5b506101696102b0366004611641565b610717565b3480156102c157600080fd5b506101696107fb565b3480156102d657600080fd5b506101696102e53660046116c8565b61080f565b3480156102f657600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff1661021b565b34801561032157600080fd5b5061016961033036600461144e565b610819565b34801561034157600080fd5b5060655461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561036e57600080fd5b5060675461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561039b57600080fd5b506101696103aa366004611762565b61082f565b3480156103bb57600080fd5b506101696103ca366004611404565b610906565b3480156103db57600080fd5b506101696103ea366004611404565b610917565b3480156103fb57600080fd5b5061016961040a366004611404565b6109cb565b6104176109dc565b61042081610a5d565b50565b600061042e82610b6b565b92915050565b60006104408383610bd6565b9392505050565b600061045d609863ffffffff80851690610bea16565b156104765761042e609863ffffffff80851690610bf616565b506000919050565b919050565b609880546060919060008167ffffffffffffffff8111156104a6576104a66114f5565b6040519080825280602002602001820160405280156104cf578160200160208202803683370190505b50905060005b82811015610536578381815481106104ef576104ef6117ce565b906000526020600020015460001c82828151811061050f5761050f6117ce565b63ffffffff909216602092830291909101909101528061052e8161182c565b9150506104d5565b509392505050565b600054610100900460ff161580801561055e5750600054600160ff909116105b806105785750303b158015610578575060005460ff166001145b610609576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561066757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6106718383610c02565b6040517fb5673f91a88e1d934867629094eedba1c72a382fbe5f32a41bacb5098900fdf990600090a180156106fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b61070f8585858585610cab565b505050505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610798576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f216d61696c626f780000000000000000000000000000000000000000000000006044820152606401610600565b83836107a48282610bd6565b60405180608001604052806043815260200161193660439139906107f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b5061070f565b6108036109dc565b61080d6000610d69565b565b6106fd8282610de0565b6108216109dc565b61082b8282610e92565b5050565b6108376109dc565b8281146108a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610600565b8260005b8181101561070f576108f48686838181106108c1576108c16117ce565b90506020020160208101906108d69190611433565b8585848181106108e8576108e86117ce565b90506020020135610e92565b6108ff6001826118db565b90506108a4565b61090e6109dc565b61042081610eec565b61091f6109dc565b73ffffffffffffffffffffffffffffffffffffffff81166109c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610600565b61042081610d69565b6109d36109dc565b61042081610fdb565b60335473ffffffffffffffffffffffffffffffffffffffff16331461080d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610600565b73ffffffffffffffffffffffffffffffffffffffff81161580610a96575073ffffffffffffffffffffffffffffffffffffffff81163b15155b610afc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517ffec811ed4e60aebdaf7a79cad8a97196bf56e35362f039705598226d30c9d24890600090a250565b6000610b7682610447565b90506000801b8114156040518060800160405280604381526020016119366043913990610bd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b50919050565b600081610be284610447565b149392505050565b600061044083836110ca565b600061044083836110d6565b600054610100900460ff16610c99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b610ca281610eec565b61082b82611160565b6000610cb78686610de0565b6066546040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810183905263ffffffff891660248201526044810187905273ffffffffffffffffffffffffffffffffffffffff85811660648301529293509116906311bf2c189085906084016000604051808303818588803b158015610d4157600080fd5b505af1158015610d55573d6000803e3d6000fd5b505050505095945050505050565b50505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080610dec84610b6b565b6065546040517ffa31de0100000000000000000000000000000000000000000000000000000000815291925073ffffffffffffffffffffffffffffffffffffffff169063fa31de0190610e47908790859088906004016118ee565b6020604051808303816000875af1158015610e66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8a919061191c565b949350505050565b610ea8609863ffffffff80851690849061120816565b8163ffffffff167f97fd51fef1f80c854cbd0150c248e8b2ac4ecdc97cc05e742b5f61c9f4dc645882604051610ee091815260200190565b60405180910390a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b610f6b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517fb87f5a0bface22cde699143559fb99f990ae54eea236995fc54178af91af859f90600090a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b61105a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517f7a61e573722ff8b205c8962b59d37e7d30573f368965597a844a94872204ebd790600090a25050565b60006104408383611213565b6000818152600283016020526040812054801515806110fa57506110fa84846110ca565b610440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f456e756d657261626c654d61703a206e6f6e6578697374656e74206b657900006044820152606401610600565b600054610100900460ff166111f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61120081610fdb565b61042061122b565b610d638383836112ca565b60008181526001830160205260408120541515610440565b600054610100900460ff166112c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d6112e7565b60008281526002840160205260408120829055610e8a8484611387565b600054610100900460ff1661137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d33610d69565b6000818152600183016020526040812054610440908490849084906113d85750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561042e565b50600061042e565b803573ffffffffffffffffffffffffffffffffffffffff8116811461047e57600080fd5b60006020828403121561141657600080fd5b610440826113e0565b803563ffffffff8116811461047e57600080fd5b60006020828403121561144557600080fd5b6104408261141f565b6000806040838503121561146157600080fd5b61146a8361141f565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156114b657835163ffffffff1683529284019291840191600101611494565b50909695505050505050565b600080604083850312156114d557600080fd5b6114de836113e0565b91506114ec602084016113e0565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261153557600080fd5b813567ffffffffffffffff80821115611550576115506114f5565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611596576115966114f5565b816040528381528660208588010111156115af57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a086880312156115e757600080fd5b6115f08661141f565b9450602086013567ffffffffffffffff81111561160c57600080fd5b61161888828901611524565b9450506040860135925060608601359150611635608087016113e0565b90509295509295909350565b6000806000806060858703121561165757600080fd5b6116608561141f565b935060208501359250604085013567ffffffffffffffff8082111561168457600080fd5b818701915087601f83011261169857600080fd5b8135818111156116a757600080fd5b8860208285010111156116b957600080fd5b95989497505060200194505050565b600080604083850312156116db57600080fd5b6116e48361141f565b9150602083013567ffffffffffffffff81111561170057600080fd5b61170c85828601611524565b9150509250929050565b60008083601f84011261172857600080fd5b50813567ffffffffffffffff81111561174057600080fd5b6020830191508360208260051b850101111561175b57600080fd5b9250929050565b6000806000806040858703121561177857600080fd5b843567ffffffffffffffff8082111561179057600080fd5b61179c88838901611716565b909650945060208701359150808211156117b557600080fd5b506117c287828801611716565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361185d5761185d6117fd565b5060010190565b6000815180845260005b8181101561188a5760208185018101518683018201520161186e565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6020815260006104406020830184611864565b8082018082111561042e5761042e6117fd565b63ffffffff841681528260208201526060604082015260006119136060830184611864565b95945050505050565b60006020828403121561192e57600080fd5b505191905056fe4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e2e2044696420796f7520737065636966792074686520726967687420646f6d61696e2049443fa264697066735822122003b1b08209a522b5a4a68cae1f85d190bda648dfd74942faf275ea54d642057164736f6c63430008110033";
|
|
418
|
+
const _bytecode = "0x608060405234801561001057600080fd5b506119ae806100206000396000f3fe6080604052600436106101445760003560e01c8063715018a6116100c0578063de523cf311610074578063f1bd6f0a11610059578063f1bd6f0a146103af578063f2fde38b146103cf578063f3c61d6b146103ef57600080fd5b8063de523cf314610362578063e9198bf91461038f57600080fd5b80638da5cb5b116100a55780638da5cb5b146102ea578063b49c53a714610315578063d5438eae1461033557600080fd5b8063715018a6146102b55780637249609f146102ca57600080fd5b806339bb4ad911610117578063485cc955116100fc578063485cc95514610262578063563e81e51461028257806356d5d4751461029557600080fd5b806339bb4ad9146101ee578063440df4f41461024057600080fd5b80630e72cc0614610149578063133b79a91461016b5780632e6a9e4b1461019e5780632ead72f6146101ce575b600080fd5b34801561015557600080fd5b50610169610164366004611404565b61040f565b005b34801561017757600080fd5b5061018b610186366004611433565b610423565b6040519081526020015b60405180910390f35b3480156101aa57600080fd5b506101be6101b936600461144e565b610434565b6040519015158152602001610195565b3480156101da57600080fd5b5061018b6101e9366004611433565b610447565b3480156101fa57600080fd5b5060665461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610195565b34801561024c57600080fd5b50610255610483565b6040516101959190611478565b34801561026e57600080fd5b5061016961027d3660046114c2565b61053e565b6101696102903660046115cf565b610702565b3480156102a157600080fd5b506101696102b0366004611641565b610717565b3480156102c157600080fd5b506101696107fb565b3480156102d657600080fd5b506101696102e53660046116c8565b61080f565b3480156102f657600080fd5b5060335473ffffffffffffffffffffffffffffffffffffffff1661021b565b34801561032157600080fd5b5061016961033036600461144e565b610819565b34801561034157600080fd5b5060655461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561036e57600080fd5b5060675461021b9073ffffffffffffffffffffffffffffffffffffffff1681565b34801561039b57600080fd5b506101696103aa366004611762565b61082f565b3480156103bb57600080fd5b506101696103ca366004611404565b610906565b3480156103db57600080fd5b506101696103ea366004611404565b610917565b3480156103fb57600080fd5b5061016961040a366004611404565b6109cb565b6104176109dc565b61042081610a5d565b50565b600061042e82610b6b565b92915050565b60006104408383610bd6565b9392505050565b600061045d609863ffffffff80851690610bea16565b156104765761042e609863ffffffff80851690610bf616565b506000919050565b919050565b609880546060919060008167ffffffffffffffff8111156104a6576104a66114f5565b6040519080825280602002602001820160405280156104cf578160200160208202803683370190505b50905060005b82811015610536578381815481106104ef576104ef6117ce565b906000526020600020015460001c82828151811061050f5761050f6117ce565b63ffffffff909216602092830291909101909101528061052e8161182c565b9150506104d5565b509392505050565b600054610100900460ff161580801561055e5750600054600160ff909116105b806105785750303b158015610578575060005460ff166001145b610609576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00166001179055801561066757600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b6106718383610c02565b6040517fb5673f91a88e1d934867629094eedba1c72a382fbe5f32a41bacb5098900fdf990600090a180156106fd57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b505050565b61070f8585858585610cab565b505050505050565b60655473ffffffffffffffffffffffffffffffffffffffff163314610798576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600860248201527f216d61696c626f780000000000000000000000000000000000000000000000006044820152606401610600565b83836107a48282610bd6565b60405180608001604052806043815260200161193660439139906107f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b5061070f565b6108036109dc565b61080d6000610d69565b565b6106fd8282610de0565b6108216109dc565b61082b8282610e92565b5050565b6108376109dc565b8281146108a0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600760248201527f216c656e677468000000000000000000000000000000000000000000000000006044820152606401610600565b8260005b8181101561070f576108f48686838181106108c1576108c16117ce565b90506020020160208101906108d69190611433565b8585848181106108e8576108e86117ce565b90506020020135610e92565b6108ff6001826118db565b90506108a4565b61090e6109dc565b61042081610eec565b61091f6109dc565b73ffffffffffffffffffffffffffffffffffffffff81166109c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201527f64647265737300000000000000000000000000000000000000000000000000006064820152608401610600565b61042081610d69565b6109d36109dc565b61042081610fdb565b60335473ffffffffffffffffffffffffffffffffffffffff16331461080d576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610600565b73ffffffffffffffffffffffffffffffffffffffff81161580610a96575073ffffffffffffffffffffffffffffffffffffffff81163b15155b610afc576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606780547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff83169081179091556040517ffec811ed4e60aebdaf7a79cad8a97196bf56e35362f039705598226d30c9d24890600090a250565b6000610b7682610447565b90506000801b8114156040518060800160405280604381526020016119366043913990610bd0576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161060091906118c8565b50919050565b600081610be284610447565b149392505050565b600061044083836110ca565b600061044083836110d6565b600054610100900460ff16610c99576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b610ca281610eec565b61082b82611160565b6000610cb78686610de0565b6066546040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810183905263ffffffff891660248201526044810187905273ffffffffffffffffffffffffffffffffffffffff85811660648301529293509116906311bf2c189085906084016000604051808303818588803b158015610d4157600080fd5b505af1158015610d55573d6000803e3d6000fd5b505050505095945050505050565b50505050565b6033805473ffffffffffffffffffffffffffffffffffffffff8381167fffffffffffffffffffffffff0000000000000000000000000000000000000000831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600080610dec84610b6b565b6065546040517ffa31de0100000000000000000000000000000000000000000000000000000000815291925073ffffffffffffffffffffffffffffffffffffffff169063fa31de0190610e47908790859088906004016118ee565b6020604051808303816000875af1158015610e66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e8a919061191c565b949350505050565b610ea8609863ffffffff80851690849061120816565b8163ffffffff167f97fd51fef1f80c854cbd0150c248e8b2ac4ecdc97cc05e742b5f61c9f4dc645882604051610ee091815260200190565b60405180910390a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b610f6b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606680547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517fb87f5a0bface22cde699143559fb99f990ae54eea236995fc54178af91af859f90600090a25050565b8073ffffffffffffffffffffffffffffffffffffffff81163b61105a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600960248201527f21636f6e747261637400000000000000000000000000000000000000000000006044820152606401610600565b606580547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040517f7a61e573722ff8b205c8962b59d37e7d30573f368965597a844a94872204ebd790600090a25050565b60006104408383611213565b6000818152600283016020526040812054801515806110fa57506110fa84846110ca565b610440576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601e60248201527f456e756d657261626c654d61703a206e6f6e6578697374656e74206b657900006044820152606401610600565b600054610100900460ff166111f7576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61120081610fdb565b61042061122b565b610d638383836112ca565b60008181526001830160205260408120541515610440565b600054610100900460ff166112c2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d6112e7565b60008281526002840160205260408120829055610e8a8484611387565b600054610100900460ff1661137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610600565b61080d33610d69565b6000818152600183016020526040812054610440908490849084906113d85750815460018181018455600084815260208082209093018490558454848252828601909352604090209190915561042e565b50600061042e565b803573ffffffffffffffffffffffffffffffffffffffff8116811461047e57600080fd5b60006020828403121561141657600080fd5b610440826113e0565b803563ffffffff8116811461047e57600080fd5b60006020828403121561144557600080fd5b6104408261141f565b6000806040838503121561146157600080fd5b61146a8361141f565b946020939093013593505050565b6020808252825182820181905260009190848201906040850190845b818110156114b657835163ffffffff1683529284019291840191600101611494565b50909695505050505050565b600080604083850312156114d557600080fd5b6114de836113e0565b91506114ec602084016113e0565b90509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600082601f83011261153557600080fd5b813567ffffffffffffffff80821115611550576115506114f5565b604051601f83017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0908116603f01168101908282118183101715611596576115966114f5565b816040528381528660208588010111156115af57600080fd5b836020870160208301376000602085830101528094505050505092915050565b600080600080600060a086880312156115e757600080fd5b6115f08661141f565b9450602086013567ffffffffffffffff81111561160c57600080fd5b61161888828901611524565b9450506040860135925060608601359150611635608087016113e0565b90509295509295909350565b6000806000806060858703121561165757600080fd5b6116608561141f565b935060208501359250604085013567ffffffffffffffff8082111561168457600080fd5b818701915087601f83011261169857600080fd5b8135818111156116a757600080fd5b8860208285010111156116b957600080fd5b95989497505060200194505050565b600080604083850312156116db57600080fd5b6116e48361141f565b9150602083013567ffffffffffffffff81111561170057600080fd5b61170c85828601611524565b9150509250929050565b60008083601f84011261172857600080fd5b50813567ffffffffffffffff81111561174057600080fd5b6020830191508360208260051b850101111561175b57600080fd5b9250929050565b6000806000806040858703121561177857600080fd5b843567ffffffffffffffff8082111561179057600080fd5b61179c88838901611716565b909650945060208701359150808211156117b557600080fd5b506117c287828801611716565b95989497509550505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff820361185d5761185d6117fd565b5060010190565b6000815180845260005b8181101561188a5760208185018101518683018201520161186e565b5060006020828601015260207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f83011685010191505092915050565b6020815260006104406020830184611864565b8082018082111561042e5761042e6117fd565b63ffffffff841681528260208201526060604082015260006119136060830184611864565b95945050505050565b60006020828403121561192e57600080fd5b505191905056fe4e6f20726f7574657220656e726f6c6c656420666f7220646f6d61696e2e2044696420796f7520737065636966792074686520726967687420646f6d61696e2049443fa2646970667358221220007f2e75f7dc70e77a0e720bd90ef8775c37aaa6931c69e12ae225a4d8dd9c8c64736f6c63430008110033";
|
|
419
419
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
420
420
|
class TestRouter__factory extends ethers_1.ContractFactory {
|
|
421
421
|
constructor(...args) {
|
|
@@ -12,7 +12,7 @@ export declare class TestSendReceiver__factory extends ContractFactory {
|
|
|
12
12
|
}): TransactionRequest;
|
|
13
13
|
attach(address: string): TestSendReceiver;
|
|
14
14
|
connect(signer: Signer): TestSendReceiver__factory;
|
|
15
|
-
static readonly bytecode = "
|
|
15
|
+
static readonly bytecode = "0x608060405234801561001057600080fd5b506106ef806100206000396000f3fe6080604052600436106100345760003560e01c806312f762221461003957806356d5d47514610061578063a778af8714610083575b600080fd5b34801561004557600080fd5b5061004f61c35081565b60405190815260200160405180910390f35b34801561006d57600080fd5b5061008161007c3660046104af565b610096565b005b61008161009136600461052e565b610159565b60006100a061043a565b905060006100af6010836105d7565b159050801561011e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f626c6f636b206861736820656e647320696e2030000000000000000000000000604482015260640160405180910390fd5b6040518281527f1e8284519093f867c8c8de794693d723718c98d6ad442f387dfd50dd1e3d93ba9060200160405180910390a1505050505050565b6040517ffa31de0100000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff87169063fa31de01906101b49087903090889088906004016105eb565b6020604051808303816000875af11580156101d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f7919061064c565b9050600061020361043a565b9050346102116005836105d7565b600003610393576000610225600283610665565b90506000610236600261c350610665565b6040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810187905263ffffffff8a1660248201526044810182905233606482015290915073ffffffffffffffffffffffffffffffffffffffff8a16906311bf2c189084906084016000604051808303818588803b1580156102bb57600080fd5b505af11580156102cf573d6000803e3d6000fd5b50505050508873ffffffffffffffffffffffffffffffffffffffff166311bf2c1883856102fc9190610679565b878b61030a8661c350610679565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b168152600481019390935263ffffffff91909116602483015260448201523360648201526084016000604051808303818588803b15801561037357600080fd5b505af1158015610387573d6000803e3d6000fd5b50505050505050610430565b6040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810184905263ffffffff8716602482015261c350604482015233606482015273ffffffffffffffffffffffffffffffffffffffff8816906311bf2c189083906084016000604051808303818588803b15801561041657600080fd5b505af115801561042a573d6000803e3d6000fd5b50505050505b5050505050505050565b6000610447600143610679565b40905090565b803563ffffffff8116811461046157600080fd5b919050565b60008083601f84011261047857600080fd5b50813567ffffffffffffffff81111561049057600080fd5b6020830191508360208285010111156104a857600080fd5b9250929050565b600080600080606085870312156104c557600080fd5b6104ce8561044d565b935060208501359250604085013567ffffffffffffffff8111156104f157600080fd5b6104fd87828801610466565b95989497509550505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461052b57600080fd5b50565b60008060008060006080868803121561054657600080fd5b853561055181610509565b9450602086013561056181610509565b935061056f6040870161044d565b9250606086013567ffffffffffffffff81111561058b57600080fd5b61059788828901610466565b969995985093965092949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826105e6576105e66105a8565b500690565b63ffffffff8516815283602082015260606040820152816060820152818360808301376000818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b60006020828403121561065e57600080fd5b5051919050565b600082610674576106746105a8565b500490565b818103818111156106b3577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea26469706673582212202a4f687b010151e11880730ac39eb2d970f48acd8e0fe91198b2363592d48e1264736f6c63430008110033";
|
|
16
16
|
static readonly abi: ({
|
|
17
17
|
anonymous: boolean;
|
|
18
18
|
inputs: {
|
|
@@ -82,7 +82,7 @@ const _abi = [
|
|
|
82
82
|
type: "function",
|
|
83
83
|
},
|
|
84
84
|
];
|
|
85
|
-
const _bytecode = "
|
|
85
|
+
const _bytecode = "0x608060405234801561001057600080fd5b506106ef806100206000396000f3fe6080604052600436106100345760003560e01c806312f762221461003957806356d5d47514610061578063a778af8714610083575b600080fd5b34801561004557600080fd5b5061004f61c35081565b60405190815260200160405180910390f35b34801561006d57600080fd5b5061008161007c3660046104af565b610096565b005b61008161009136600461052e565b610159565b60006100a061043a565b905060006100af6010836105d7565b159050801561011e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f626c6f636b206861736820656e647320696e2030000000000000000000000000604482015260640160405180910390fd5b6040518281527f1e8284519093f867c8c8de794693d723718c98d6ad442f387dfd50dd1e3d93ba9060200160405180910390a1505050505050565b6040517ffa31de0100000000000000000000000000000000000000000000000000000000815260009073ffffffffffffffffffffffffffffffffffffffff87169063fa31de01906101b49087903090889088906004016105eb565b6020604051808303816000875af11580156101d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101f7919061064c565b9050600061020361043a565b9050346102116005836105d7565b600003610393576000610225600283610665565b90506000610236600261c350610665565b6040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810187905263ffffffff8a1660248201526044810182905233606482015290915073ffffffffffffffffffffffffffffffffffffffff8a16906311bf2c189084906084016000604051808303818588803b1580156102bb57600080fd5b505af11580156102cf573d6000803e3d6000fd5b50505050508873ffffffffffffffffffffffffffffffffffffffff166311bf2c1883856102fc9190610679565b878b61030a8661c350610679565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e087901b168152600481019390935263ffffffff91909116602483015260448201523360648201526084016000604051808303818588803b15801561037357600080fd5b505af1158015610387573d6000803e3d6000fd5b50505050505050610430565b6040517f11bf2c180000000000000000000000000000000000000000000000000000000081526004810184905263ffffffff8716602482015261c350604482015233606482015273ffffffffffffffffffffffffffffffffffffffff8816906311bf2c189083906084016000604051808303818588803b15801561041657600080fd5b505af115801561042a573d6000803e3d6000fd5b50505050505b5050505050505050565b6000610447600143610679565b40905090565b803563ffffffff8116811461046157600080fd5b919050565b60008083601f84011261047857600080fd5b50813567ffffffffffffffff81111561049057600080fd5b6020830191508360208285010111156104a857600080fd5b9250929050565b600080600080606085870312156104c557600080fd5b6104ce8561044d565b935060208501359250604085013567ffffffffffffffff8111156104f157600080fd5b6104fd87828801610466565b95989497509550505050565b73ffffffffffffffffffffffffffffffffffffffff8116811461052b57600080fd5b50565b60008060008060006080868803121561054657600080fd5b853561055181610509565b9450602086013561056181610509565b935061056f6040870161044d565b9250606086013567ffffffffffffffff81111561058b57600080fd5b61059788828901610466565b969995985093965092949392505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000826105e6576105e66105a8565b500690565b63ffffffff8516815283602082015260606040820152816060820152818360808301376000818301608090810191909152601f9092017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01601019392505050565b60006020828403121561065e57600080fd5b5051919050565b600082610674576106746105a8565b500490565b818103818111156106b3577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b9291505056fea26469706673582212202a4f687b010151e11880730ac39eb2d970f48acd8e0fe91198b2363592d48e1264736f6c63430008110033";
|
|
86
86
|
const isSuperArgs = (xs) => xs.length > 1;
|
|
87
87
|
class TestSendReceiver__factory extends ethers_1.ContractFactory {
|
|
88
88
|
constructor(...args) {
|
package/docs/book.css
ADDED
package/docs/book.toml
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
[book]
|
|
2
|
+
src = "src"
|
|
3
|
+
title = ""
|
|
4
|
+
|
|
5
|
+
[output.html]
|
|
6
|
+
no-section-label = true
|
|
7
|
+
additional-js = ["solidity.min.js"]
|
|
8
|
+
additional-css = ["book.css"]
|
|
9
|
+
git-repository-url = "https://github.com/hyperlane-xyz/hyperlane-monorepo"
|
|
10
|
+
|
|
11
|
+
[output.html.fold]
|
|
12
|
+
enable = true
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
hljs.registerLanguage("solidity",(()=>{"use strict";function e(){try{return!0
|
|
2
|
+
}catch(e){return!1}}
|
|
3
|
+
var a=/-?(\b0[xX]([a-fA-F0-9]_?)*[a-fA-F0-9]|(\b[1-9](_?\d)*(\.((\d_?)*\d)?)?|\.\d(_?\d)*)([eE][-+]?\d(_?\d)*)?|\b0)(?!\w|\$)/
|
|
4
|
+
;e()&&(a=a.source.replace(/\\b/g,"(?<!\\$)\\b"));var s={className:"number",
|
|
5
|
+
begin:a,relevance:0},n={
|
|
6
|
+
keyword:"assembly let function if switch case default for leave break continue u256 jump jumpi stop return revert selfdestruct invalid",
|
|
7
|
+
built_in:"add sub mul div sdiv mod smod exp not lt gt slt sgt eq iszero and or xor byte shl shr sar addmod mulmod signextend keccak256 pc pop dup1 dup2 dup3 dup4 dup5 dup6 dup7 dup8 dup9 dup10 dup11 dup12 dup13 dup14 dup15 dup16 swap1 swap2 swap3 swap4 swap5 swap6 swap7 swap8 swap9 swap10 swap11 swap12 swap13 swap14 swap15 swap16 mload mstore mstore8 sload sstore msize gas address balance selfbalance caller callvalue calldataload calldatasize calldatacopy codesize codecopy extcodesize extcodecopy returndatasize returndatacopy extcodehash create create2 call callcode delegatecall staticcall log0 log1 log2 log3 log4 chainid origin gasprice basefee blockhash coinbase timestamp number difficulty gaslimit",
|
|
8
|
+
literal:"true false"},i={className:"string",
|
|
9
|
+
begin:/\bhex'(([0-9a-fA-F]{2}_?)*[0-9a-fA-F]{2})?'/},t={className:"string",
|
|
10
|
+
begin:/\bhex"(([0-9a-fA-F]{2}_?)*[0-9a-fA-F]{2})?"/};function r(e){
|
|
11
|
+
return e.inherit(e.APOS_STRING_MODE,{begin:/(\bunicode)?'/})}function l(e){
|
|
12
|
+
return e.inherit(e.QUOTE_STRING_MODE,{begin:/(\bunicode)?"/})}var o={
|
|
13
|
+
SOL_ASSEMBLY_KEYWORDS:n,baseAssembly:e=>{
|
|
14
|
+
var a=r(e),o=l(e),c=/[A-Za-z_$][A-Za-z_$0-9.]*/,d=e.inherit(e.TITLE_MODE,{
|
|
15
|
+
begin:/[A-Za-z$_][0-9A-Za-z$_]*/,lexemes:c,keywords:n}),u={className:"params",
|
|
16
|
+
begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,lexemes:c,keywords:n,
|
|
17
|
+
contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,o,s]},_={
|
|
18
|
+
className:"operator",begin:/:=|->/};return{keywords:n,lexemes:c,
|
|
19
|
+
contains:[a,o,i,t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,s,_,{
|
|
20
|
+
className:"function",lexemes:c,beginKeywords:"function",end:"{",excludeEnd:!0,
|
|
21
|
+
contains:[d,u,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,_]}]}},
|
|
22
|
+
solAposStringMode:r,solQuoteStringMode:l,HEX_APOS_STRING_MODE:i,
|
|
23
|
+
HEX_QUOTE_STRING_MODE:t,SOL_NUMBER:s,isNegativeLookbehindAvailable:e}
|
|
24
|
+
;const{baseAssembly:c,solAposStringMode:d,solQuoteStringMode:u,HEX_APOS_STRING_MODE:_,HEX_QUOTE_STRING_MODE:m,SOL_NUMBER:b,isNegativeLookbehindAvailable:E}=o
|
|
25
|
+
;return e=>{for(var a=d(e),s=u(e),n=[],i=0;i<32;i++)n[i]=i+1
|
|
26
|
+
;var t=n.map((e=>8*e)),r=[];for(i=0;i<=80;i++)r[i]=i
|
|
27
|
+
;var l=n.map((e=>"bytes"+e)).join(" ")+" ",o=t.map((e=>"uint"+e)).join(" ")+" ",g=t.map((e=>"int"+e)).join(" ")+" ",M=[].concat.apply([],t.map((e=>r.map((a=>e+"x"+a))))),p={
|
|
28
|
+
keyword:"var bool string int uint "+g+o+"byte bytes "+l+"fixed ufixed "+M.map((e=>"fixed"+e)).join(" ")+" "+M.map((e=>"ufixed"+e)).join(" ")+" enum struct mapping address new delete if else for while continue break return throw emit try catch revert unchecked _ function modifier event constructor fallback receive error virtual override constant immutable anonymous indexed storage memory calldata external public internal payable pure view private returns import from as using pragma contract interface library is abstract type assembly",
|
|
29
|
+
literal:"true false wei gwei szabo finney ether seconds minutes hours days weeks years",
|
|
30
|
+
built_in:"self this super selfdestruct suicide now msg block tx abi blockhash gasleft assert require Error Panic sha3 sha256 keccak256 ripemd160 ecrecover addmod mulmod log0 log1 log2 log3 log4"
|
|
31
|
+
},O={className:"operator",begin:/[+\-!~*\/%<>&^|=]/
|
|
32
|
+
},C=/[A-Za-z_$][A-Za-z_$0-9]*/,N={className:"params",begin:/\(/,end:/\)/,
|
|
33
|
+
excludeBegin:!0,excludeEnd:!0,lexemes:C,keywords:p,
|
|
34
|
+
contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,a,s,b,"self"]},f={
|
|
35
|
+
begin:/\.\s*/,end:/[^A-Za-z0-9$_\.]/,excludeBegin:!0,excludeEnd:!0,keywords:{
|
|
36
|
+
built_in:"gas value selector address length push pop send transfer call callcode delegatecall staticcall balance code codehash wrap unwrap name creationCode runtimeCode interfaceId min max"
|
|
37
|
+
},relevance:2},y=e.inherit(e.TITLE_MODE,{begin:/[A-Za-z$_][0-9A-Za-z$_]*/,
|
|
38
|
+
lexemes:C,keywords:p}),w={className:"built_in",
|
|
39
|
+
begin:(E()?"(?<!\\$)\\b":"\\b")+"(gas|value|salt)(?=:)"};function x(e,a){return{
|
|
40
|
+
begin:(E()?"(?<!\\$)\\b":"\\b")+e+"\\.\\s*",end:/[^A-Za-z0-9$_\.]/,
|
|
41
|
+
excludeBegin:!1,excludeEnd:!0,lexemes:C,keywords:{built_in:e+" "+a},
|
|
42
|
+
contains:[f],relevance:10}}var h=c(e),v=e.inherit(h,{
|
|
43
|
+
contains:h.contains.concat([{begin:/\./,end:/[^A-Za-z0-9$.]/,excludeBegin:!0,
|
|
44
|
+
excludeEnd:!0,keywords:{built_in:"slot offset length address selector"},
|
|
45
|
+
relevance:2},{begin:/_/,end:/[^A-Za-z0-9$.]/,excludeBegin:!0,excludeEnd:!0,
|
|
46
|
+
keywords:{built_in:"slot offset"},relevance:2}])});return{aliases:["sol"],
|
|
47
|
+
keywords:p,lexemes:C,
|
|
48
|
+
contains:[a,s,_,m,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,b,w,O,{
|
|
49
|
+
className:"function",lexemes:C,
|
|
50
|
+
beginKeywords:"function modifier event constructor fallback receive error",
|
|
51
|
+
end:/[{;]/,excludeEnd:!0,
|
|
52
|
+
contains:[y,N,w,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:/%/
|
|
53
|
+
},x("msg","gas value data sender sig"),x("block","blockhash coinbase difficulty gaslimit basefee number timestamp chainid"),x("tx","gasprice origin"),x("abi","decode encode encodePacked encodeWithSelector encodeWithSignature encodeCall"),x("bytes","concat"),f,{
|
|
54
|
+
className:"class",lexemes:C,beginKeywords:"contract interface library",end:"{",
|
|
55
|
+
excludeEnd:!0,illegal:/[:"\[\]]/,contains:[{beginKeywords:"is",lexemes:C
|
|
56
|
+
},y,N,w,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{lexemes:C,
|
|
57
|
+
beginKeywords:"struct enum",end:"{",excludeEnd:!0,illegal:/[:"\[\]]/,
|
|
58
|
+
contains:[y,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{
|
|
59
|
+
beginKeywords:"import",end:";",lexemes:C,keywords:"import from as",
|
|
60
|
+
contains:[y,a,s,_,m,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,O]},{
|
|
61
|
+
beginKeywords:"using",end:";",lexemes:C,keywords:"using for",
|
|
62
|
+
contains:[y,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,O]},{className:"meta",
|
|
63
|
+
beginKeywords:"pragma",end:";",lexemes:C,keywords:{
|
|
64
|
+
keyword:"pragma solidity experimental abicoder",
|
|
65
|
+
built_in:"ABIEncoderV2 SMTChecker v1 v2"},
|
|
66
|
+
contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(a,{
|
|
67
|
+
className:"meta-string"}),e.inherit(s,{className:"meta-string"})]},{
|
|
68
|
+
beginKeywords:"assembly",end:/\b\B/,
|
|
69
|
+
contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.inherit(v,{begin:"{",
|
|
70
|
+
end:"}",endsParent:!0,contains:v.contains.concat([e.inherit(v,{begin:"{",
|
|
71
|
+
end:"}",contains:v.contains.concat(["self"])})])})]}],illegal:/#/}}})());
|
|
72
|
+
|
|
73
|
+
// Ugly hack to reload HLJS
|
|
74
|
+
hljs.initHighlightingOnLoad();
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
# Summary
|
|
2
|
+
- [Home](README.md)
|
|
3
|
+
# contracts
|
|
4
|
+
- [❱ hooks](contracts/hooks/README.md)
|
|
5
|
+
- [❱ ERC5164](contracts/hooks/ERC5164/README.md)
|
|
6
|
+
- [❱ interfaces](contracts/hooks/ERC5164/interfaces/README.md)
|
|
7
|
+
- [IMessageDispatcher](contracts/hooks/ERC5164/interfaces/IMessageDispatcher.sol/interface.IMessageDispatcher.md)
|
|
8
|
+
- [ERC5164MessageHook](contracts/hooks/ERC5164/ERC5164MessageHook.sol/contract.ERC5164MessageHook.md)
|
|
9
|
+
- [OptimismMessageHook](contracts/hooks/OptimismMessageHook.sol/contract.OptimismMessageHook.md)
|
|
10
|
+
- [❱ igps](contracts/igps/README.md)
|
|
11
|
+
- [❱ gas-oracles](contracts/igps/gas-oracles/README.md)
|
|
12
|
+
- [StorageGasOracle](contracts/igps/gas-oracles/StorageGasOracle.sol/contract.StorageGasOracle.md)
|
|
13
|
+
- [InterchainGasPaymaster](contracts/igps/InterchainGasPaymaster.sol/contract.InterchainGasPaymaster.md)
|
|
14
|
+
- [OverheadIgp](contracts/igps/OverheadIgp.sol/contract.OverheadIgp.md)
|
|
15
|
+
- [❱ interfaces](contracts/interfaces/README.md)
|
|
16
|
+
- [❱ hooks](contracts/interfaces/hooks/README.md)
|
|
17
|
+
- [IMessageHook](contracts/interfaces/hooks/IMessageHook.sol/interface.IMessageHook.md)
|
|
18
|
+
- [❱ isms](contracts/interfaces/isms/README.md)
|
|
19
|
+
- [IAggregationIsm](contracts/interfaces/isms/IAggregationIsm.sol/interface.IAggregationIsm.md)
|
|
20
|
+
- [IMultisigIsm](contracts/interfaces/isms/IMultisigIsm.sol/interface.IMultisigIsm.md)
|
|
21
|
+
- [IRoutingIsm](contracts/interfaces/isms/IRoutingIsm.sol/interface.IRoutingIsm.md)
|
|
22
|
+
- [❱ middleware](contracts/interfaces/middleware/README.md)
|
|
23
|
+
- [IInterchainAccountRouter](contracts/interfaces/middleware/IInterchainAccountRouter.sol/interface.IInterchainAccountRouter.md)
|
|
24
|
+
- [IInterchainQueryRouter](contracts/interfaces/middleware/IInterchainQueryRouter.sol/interface.IInterchainQueryRouter.md)
|
|
25
|
+
- [IGasOracle](contracts/interfaces/IGasOracle.sol/interface.IGasOracle.md)
|
|
26
|
+
- [IHyperlaneConnectionClient](contracts/interfaces/IHyperlaneConnectionClient.sol/interface.IHyperlaneConnectionClient.md)
|
|
27
|
+
- [IInterchainGasPaymaster](contracts/interfaces/IInterchainGasPaymaster.sol/interface.IInterchainGasPaymaster.md)
|
|
28
|
+
- [IInterchainSecurityModule](contracts/interfaces/IInterchainSecurityModule.sol/interface.IInterchainSecurityModule.md)
|
|
29
|
+
- [ISpecifiesInterchainSecurityModule](contracts/interfaces/IInterchainSecurityModule.sol/interface.ISpecifiesInterchainSecurityModule.md)
|
|
30
|
+
- [ILiquidityLayerMessageRecipient](contracts/interfaces/ILiquidityLayerMessageRecipient.sol/interface.ILiquidityLayerMessageRecipient.md)
|
|
31
|
+
- [ILiquidityLayerRouter](contracts/interfaces/ILiquidityLayerRouter.sol/interface.ILiquidityLayerRouter.md)
|
|
32
|
+
- [IMailbox](contracts/interfaces/IMailbox.sol/interface.IMailbox.md)
|
|
33
|
+
- [IMessageRecipient](contracts/interfaces/IMessageRecipient.sol/interface.IMessageRecipient.md)
|
|
34
|
+
- [IRouter](contracts/interfaces/IRouter.sol/interface.IRouter.md)
|
|
35
|
+
- [IValidatorAnnounce](contracts/interfaces/IValidatorAnnounce.sol/interface.IValidatorAnnounce.md)
|
|
36
|
+
- [❱ isms](contracts/isms/README.md)
|
|
37
|
+
- [❱ aggregation](contracts/isms/aggregation/README.md)
|
|
38
|
+
- [AbstractAggregationIsm](contracts/isms/aggregation/AbstractAggregationIsm.sol/abstract.AbstractAggregationIsm.md)
|
|
39
|
+
- [StaticAggregationIsm](contracts/isms/aggregation/StaticAggregationIsm.sol/contract.StaticAggregationIsm.md)
|
|
40
|
+
- [StaticAggregationIsmFactory](contracts/isms/aggregation/StaticAggregationIsmFactory.sol/contract.StaticAggregationIsmFactory.md)
|
|
41
|
+
- [❱ hook](contracts/isms/hook/README.md)
|
|
42
|
+
- [❱ optimism](contracts/isms/hook/optimism/README.md)
|
|
43
|
+
- [CrossChainEnabledOptimism](contracts/isms/hook/optimism/CrossChainEnabledOptimism.sol/abstract.CrossChainEnabledOptimism.md)
|
|
44
|
+
- [LibOptimism](contracts/isms/hook/optimism/LibOptimism.sol/library.LibOptimism.md)
|
|
45
|
+
- [OptimismISM](contracts/isms/hook/optimism/OptimismISM.sol/contract.OptimismISM.md)
|
|
46
|
+
- [AbstractHookISM](contracts/isms/hook/AbstractHookISM.sol/abstract.AbstractHookISM.md)
|
|
47
|
+
- [CrossChainEnabled](contracts/isms/hook/CrossChainEnabled.sol/abstract.CrossChainEnabled.md)
|
|
48
|
+
- [ERC5164ISM](contracts/isms/hook/ERC5164ISM.sol/contract.ERC5164ISM.md)
|
|
49
|
+
- [❱ multisig](contracts/isms/multisig/README.md)
|
|
50
|
+
- [AbstractMerkleRootMultisigIsm](contracts/isms/multisig/AbstractMerkleRootMultisigIsm.sol/abstract.AbstractMerkleRootMultisigIsm.md)
|
|
51
|
+
- [AbstractMessageIdMultisigIsm](contracts/isms/multisig/AbstractMessageIdMultisigIsm.sol/abstract.AbstractMessageIdMultisigIsm.md)
|
|
52
|
+
- [AbstractMultisigIsm](contracts/isms/multisig/AbstractMultisigIsm.sol/abstract.AbstractMultisigIsm.md)
|
|
53
|
+
- [LegacyMultisigIsm](contracts/isms/multisig/LegacyMultisigIsm.sol/contract.LegacyMultisigIsm.md)
|
|
54
|
+
- [AbstractMetaProxyMultisigIsm](contracts/isms/multisig/StaticMultisigIsm.sol/abstract.AbstractMetaProxyMultisigIsm.md)
|
|
55
|
+
- [StaticMerkleRootMultisigIsm](contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMerkleRootMultisigIsm.md)
|
|
56
|
+
- [StaticMessageIdMultisigIsm](contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMessageIdMultisigIsm.md)
|
|
57
|
+
- [StaticMerkleRootMultisigIsmFactory](contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMerkleRootMultisigIsmFactory.md)
|
|
58
|
+
- [StaticMessageIdMultisigIsmFactory](contracts/isms/multisig/StaticMultisigIsm.sol/contract.StaticMessageIdMultisigIsmFactory.md)
|
|
59
|
+
- [❱ routing](contracts/isms/routing/README.md)
|
|
60
|
+
- [AbstractRoutingIsm](contracts/isms/routing/AbstractRoutingIsm.sol/abstract.AbstractRoutingIsm.md)
|
|
61
|
+
- [DomainRoutingIsm](contracts/isms/routing/DomainRoutingIsm.sol/contract.DomainRoutingIsm.md)
|
|
62
|
+
- [DomainRoutingIsmFactory](contracts/isms/routing/DomainRoutingIsmFactory.sol/contract.DomainRoutingIsmFactory.md)
|
|
63
|
+
- [InterchainAccountIsm](contracts/isms/routing/InterchainAccountIsm.sol/contract.InterchainAccountIsm.md)
|
|
64
|
+
- [❱ libs](contracts/libs/README.md)
|
|
65
|
+
- [❱ isms](contracts/libs/isms/README.md)
|
|
66
|
+
- [AggregationIsmMetadata](contracts/libs/isms/AggregationIsmMetadata.sol/library.AggregationIsmMetadata.md)
|
|
67
|
+
- [LegacyMultisigIsmMetadata](contracts/libs/isms/LegacyMultisigIsmMetadata.sol/library.LegacyMultisigIsmMetadata.md)
|
|
68
|
+
- [MerkleRootMultisigIsmMetadata](contracts/libs/isms/MerkleRootMultisigIsmMetadata.sol/library.MerkleRootMultisigIsmMetadata.md)
|
|
69
|
+
- [MessageIdMultisigIsmMetadata](contracts/libs/isms/MessageIdMultisigIsmMetadata.sol/library.MessageIdMultisigIsmMetadata.md)
|
|
70
|
+
- [❱ middleware](contracts/libs/middleware/README.md)
|
|
71
|
+
- [InterchainAccountMessage](contracts/libs/middleware/InterchainAccountMessage.sol/library.InterchainAccountMessage.md)
|
|
72
|
+
- [InterchainQueryMessage](contracts/libs/middleware/InterchainQueryMessage.sol/library.InterchainQueryMessage.md)
|
|
73
|
+
- [CallLib](contracts/libs/Call.sol/library.CallLib.md)
|
|
74
|
+
- [CheckpointLib](contracts/libs/CheckpointLib.sol/library.CheckpointLib.md)
|
|
75
|
+
- [EnumerableMapExtended](contracts/libs/EnumerableMapExtended.sol/library.EnumerableMapExtended.md)
|
|
76
|
+
- [LegacyCheckpointLib](contracts/libs/LegacyCheckpointLib.sol/library.LegacyCheckpointLib.md)
|
|
77
|
+
- [MerkleLib](contracts/libs/Merkle.sol/library.MerkleLib.md)
|
|
78
|
+
- [Message](contracts/libs/Message.sol/library.Message.md)
|
|
79
|
+
- [MetaProxy](contracts/libs/MetaProxy.sol/library.MetaProxy.md)
|
|
80
|
+
- [MinimalProxy](contracts/libs/MinimalProxy.sol/library.MinimalProxy.md)
|
|
81
|
+
- [StaticMOfNAddressSetFactory](contracts/libs/StaticMOfNAddressSetFactory.sol/abstract.StaticMOfNAddressSetFactory.md)
|
|
82
|
+
- [TypeCasts](contracts/libs/TypeCasts.sol/library.TypeCasts.md)
|
|
83
|
+
- [ValidatorAnnouncements](contracts/libs/ValidatorAnnouncements.sol/library.ValidatorAnnouncements.md)
|
|
84
|
+
- [❱ middleware](contracts/middleware/README.md)
|
|
85
|
+
- [❱ liquidity-layer](contracts/middleware/liquidity-layer/README.md)
|
|
86
|
+
- [❱ adapters](contracts/middleware/liquidity-layer/adapters/README.md)
|
|
87
|
+
- [CircleBridgeAdapter](contracts/middleware/liquidity-layer/adapters/CircleBridgeAdapter.sol/contract.CircleBridgeAdapter.md)
|
|
88
|
+
- [PortalAdapter](contracts/middleware/liquidity-layer/adapters/PortalAdapter.sol/contract.PortalAdapter.md)
|
|
89
|
+
- [❱ interfaces](contracts/middleware/liquidity-layer/interfaces/README.md)
|
|
90
|
+
- [❱ circle](contracts/middleware/liquidity-layer/interfaces/circle/README.md)
|
|
91
|
+
- [ICircleMessageTransmitter](contracts/middleware/liquidity-layer/interfaces/circle/ICircleMessageTransmitter.sol/interface.ICircleMessageTransmitter.md)
|
|
92
|
+
- [ITokenMessenger](contracts/middleware/liquidity-layer/interfaces/circle/ITokenMessenger.sol/interface.ITokenMessenger.md)
|
|
93
|
+
- [❱ portal](contracts/middleware/liquidity-layer/interfaces/portal/README.md)
|
|
94
|
+
- [IPortalTokenBridge](contracts/middleware/liquidity-layer/interfaces/portal/IPortalTokenBridge.sol/interface.IPortalTokenBridge.md)
|
|
95
|
+
- [ILiquidityLayerAdapter](contracts/middleware/liquidity-layer/interfaces/ILiquidityLayerAdapter.sol/interface.ILiquidityLayerAdapter.md)
|
|
96
|
+
- [LiquidityLayerRouter](contracts/middleware/liquidity-layer/LiquidityLayerRouter.sol/contract.LiquidityLayerRouter.md)
|
|
97
|
+
- [InterchainAccountRouter](contracts/middleware/InterchainAccountRouter.sol/contract.InterchainAccountRouter.md)
|
|
98
|
+
- [InterchainQueryRouter](contracts/middleware/InterchainQueryRouter.sol/contract.InterchainQueryRouter.md)
|
|
99
|
+
- [❱ mock](contracts/mock/README.md)
|
|
100
|
+
- [MockCircleMessageTransmitter](contracts/mock/MockCircleMessageTransmitter.sol/contract.MockCircleMessageTransmitter.md)
|
|
101
|
+
- [MockCircleTokenMessenger](contracts/mock/MockCircleTokenMessenger.sol/contract.MockCircleTokenMessenger.md)
|
|
102
|
+
- [MockMessageDispatcher](contracts/mock/MockERC5164.sol/contract.MockMessageDispatcher.md)
|
|
103
|
+
- [MockMessageExecutor](contracts/mock/MockERC5164.sol/contract.MockMessageExecutor.md)
|
|
104
|
+
- [MockHyperlaneEnvironment](contracts/mock/MockHyperlaneEnvironment.sol/contract.MockHyperlaneEnvironment.md)
|
|
105
|
+
- [MockMailbox](contracts/mock/MockMailbox.sol/contract.MockMailbox.md)
|
|
106
|
+
- [MockPortalBridge](contracts/mock/MockPortalBridge.sol/contract.MockPortalBridge.md)
|
|
107
|
+
- [MockToken](contracts/mock/MockToken.sol/contract.MockToken.md)
|
|
108
|
+
- [❱ test](contracts/test/README.md)
|
|
109
|
+
- [❱ bad-recipient](contracts/test/bad-recipient/README.md)
|
|
110
|
+
- [BadRecipient1](contracts/test/bad-recipient/BadRecipient1.sol/contract.BadRecipient1.md)
|
|
111
|
+
- [BadRecipient2](contracts/test/bad-recipient/BadRecipient2.sol/contract.BadRecipient2.md)
|
|
112
|
+
- [BadRecipient3](contracts/test/bad-recipient/BadRecipient3.sol/contract.BadRecipient3.md)
|
|
113
|
+
- [BadRecipient5](contracts/test/bad-recipient/BadRecipient5.sol/contract.BadRecipient5.md)
|
|
114
|
+
- [BadRecipient6](contracts/test/bad-recipient/BadRecipient6.sol/contract.BadRecipient6.md)
|
|
115
|
+
- [LightTestRecipient](contracts/test/LightTestRecipient.sol/contract.LightTestRecipient.md)
|
|
116
|
+
- [TestGasRouter](contracts/test/TestGasRouter.sol/contract.TestGasRouter.md)
|
|
117
|
+
- [TestHyperlaneConnectionClient](contracts/test/TestHyperlaneConnectionClient.sol/contract.TestHyperlaneConnectionClient.md)
|
|
118
|
+
- [TestInterchainGasPaymaster](contracts/test/TestInterchainGasPaymaster.sol/contract.TestInterchainGasPaymaster.md)
|
|
119
|
+
- [TestLegacyMultisigIsm](contracts/test/TestLegacyMultisigIsm.sol/contract.TestLegacyMultisigIsm.md)
|
|
120
|
+
- [TestLiquidityLayerMessageRecipient](contracts/test/TestLiquidityLayerMessageRecipient.sol/contract.TestLiquidityLayerMessageRecipient.md)
|
|
121
|
+
- [TestMailbox](contracts/test/TestMailbox.sol/contract.TestMailbox.md)
|
|
122
|
+
- [TestMerkle](contracts/test/TestMerkle.sol/contract.TestMerkle.md)
|
|
123
|
+
- [TestMessage](contracts/test/TestMessage.sol/contract.TestMessage.md)
|
|
124
|
+
- [TestMultisigIsm](contracts/test/TestMultisigIsm.sol/contract.TestMultisigIsm.md)
|
|
125
|
+
- [TestQuery](contracts/test/TestQuery.sol/contract.TestQuery.md)
|
|
126
|
+
- [TestQuerySender](contracts/test/TestQuerySender.sol/contract.TestQuerySender.md)
|
|
127
|
+
- [TestRecipient](contracts/test/TestRecipient.sol/contract.TestRecipient.md)
|
|
128
|
+
- [TestRouter](contracts/test/TestRouter.sol/contract.TestRouter.md)
|
|
129
|
+
- [TestSendReceiver](contracts/test/TestSendReceiver.sol/contract.TestSendReceiver.md)
|
|
130
|
+
- [TestTokenRecipient](contracts/test/TestTokenRecipient.sol/contract.TestTokenRecipient.md)
|
|
131
|
+
- [❱ upgrade](contracts/upgrade/README.md)
|
|
132
|
+
- [Versioned](contracts/upgrade/Versioned.sol/contract.Versioned.md)
|
|
133
|
+
- [GasRouter](contracts/GasRouter.sol/abstract.GasRouter.md)
|
|
134
|
+
- [HyperlaneConnectionClient](contracts/HyperlaneConnectionClient.sol/abstract.HyperlaneConnectionClient.md)
|
|
135
|
+
- [Mailbox](contracts/Mailbox.sol/contract.Mailbox.md)
|
|
136
|
+
- [OwnableMulticall](contracts/OwnableMulticall.sol/contract.OwnableMulticall.md)
|
|
137
|
+
- [PausableReentrancyGuardUpgradeable](contracts/PausableReentrancyGuard.sol/abstract.PausableReentrancyGuardUpgradeable.md)
|
|
138
|
+
- [Router](contracts/Router.sol/abstract.Router.md)
|
|
139
|
+
- [ValidatorAnnounce](contracts/ValidatorAnnounce.sol/contract.ValidatorAnnounce.md)
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
# GasRouter
|
|
2
|
+
[Git Source](https://github.com/hyperlane-xyz/hyperlane-monorepo/blob/a5209dbd9b0f5eb34e0bc9df2ba157dda2b454d3/contracts/GasRouter.sol)
|
|
3
|
+
|
|
4
|
+
**Inherits:**
|
|
5
|
+
[Router](/contracts/Router.sol/abstract.Router.md)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## State Variables
|
|
9
|
+
### destinationGas
|
|
10
|
+
|
|
11
|
+
```solidity
|
|
12
|
+
mapping(uint32 => uint256) public destinationGas;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
## Functions
|
|
17
|
+
### setDestinationGas
|
|
18
|
+
|
|
19
|
+
Sets the gas amount dispatched for each configured domain.
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
```solidity
|
|
23
|
+
function setDestinationGas(GasRouterConfig[] calldata gasConfigs) external onlyOwner;
|
|
24
|
+
```
|
|
25
|
+
**Parameters**
|
|
26
|
+
|
|
27
|
+
|Name|Type|Description|
|
|
28
|
+
|----|----|-----------|
|
|
29
|
+
|`gasConfigs`|`GasRouterConfig[]`|The array of GasRouterConfig structs|
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
### quoteGasPayment
|
|
33
|
+
|
|
34
|
+
Returns the gas payment required to dispatch a message to the given domain's router.
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
```solidity
|
|
38
|
+
function quoteGasPayment(uint32 _destinationDomain) external view returns (uint256 _gasPayment);
|
|
39
|
+
```
|
|
40
|
+
**Parameters**
|
|
41
|
+
|
|
42
|
+
|Name|Type|Description|
|
|
43
|
+
|----|----|-----------|
|
|
44
|
+
|`_destinationDomain`|`uint32`|The domain of the router.|
|
|
45
|
+
|
|
46
|
+
**Returns**
|
|
47
|
+
|
|
48
|
+
|Name|Type|Description|
|
|
49
|
+
|----|----|-----------|
|
|
50
|
+
|`_gasPayment`|`uint256`|Payment computed by the registered InterchainGasPaymaster.|
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
### _setDestinationGas
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
```solidity
|
|
57
|
+
function _setDestinationGas(uint32 domain, uint256 gas) internal;
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
### _dispatchWithGas
|
|
61
|
+
|
|
62
|
+
Dispatches a message to an enrolled router via the local router's Mailbox
|
|
63
|
+
and pays for it to be relayed to the destination.
|
|
64
|
+
|
|
65
|
+
*Uses the destinationGas mapping to populate the gas amount for the message.*
|
|
66
|
+
|
|
67
|
+
*Reverts if there is no enrolled router for _destinationDomain.*
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
```solidity
|
|
71
|
+
function _dispatchWithGas(
|
|
72
|
+
uint32 _destinationDomain,
|
|
73
|
+
bytes memory _messageBody,
|
|
74
|
+
uint256 _gasPayment,
|
|
75
|
+
address _gasPaymentRefundAddress
|
|
76
|
+
) internal returns (bytes32 _messageId);
|
|
77
|
+
```
|
|
78
|
+
**Parameters**
|
|
79
|
+
|
|
80
|
+
|Name|Type|Description|
|
|
81
|
+
|----|----|-----------|
|
|
82
|
+
|`_destinationDomain`|`uint32`|The domain of the chain to which to send the message.|
|
|
83
|
+
|`_messageBody`|`bytes`|Raw bytes content of message.|
|
|
84
|
+
|`_gasPayment`|`uint256`|The amount of native tokens to pay for the message to be relayed.|
|
|
85
|
+
|`_gasPaymentRefundAddress`|`address`|The address to refund any gas overpayment to.|
|
|
86
|
+
|
|
87
|
+
|
|
88
|
+
### _dispatchWithGas
|
|
89
|
+
|
|
90
|
+
*Passes `msg.value` as gas payment and `msg.sender` as gas payment refund address.*
|
|
91
|
+
|
|
92
|
+
*Uses the destinationGas mapping to populate the gas amount for the message.*
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
```solidity
|
|
96
|
+
function _dispatchWithGas(uint32 _destinationDomain, bytes memory _messageBody) internal returns (bytes32 _messageId);
|
|
97
|
+
```
|
|
98
|
+
**Parameters**
|
|
99
|
+
|
|
100
|
+
|Name|Type|Description|
|
|
101
|
+
|----|----|-----------|
|
|
102
|
+
|`_destinationDomain`|`uint32`|The domain of the chain to send the message.|
|
|
103
|
+
|`_messageBody`|`bytes`|Raw bytes content of message.|
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
## Events
|
|
107
|
+
### DestinationGasSet
|
|
108
|
+
Emitted when a domain's destination gas is set.
|
|
109
|
+
|
|
110
|
+
|
|
111
|
+
```solidity
|
|
112
|
+
event DestinationGasSet(uint32 indexed domain, uint256 gas);
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Structs
|
|
116
|
+
### GasRouterConfig
|
|
117
|
+
|
|
118
|
+
```solidity
|
|
119
|
+
struct GasRouterConfig {
|
|
120
|
+
uint32 domain;
|
|
121
|
+
uint256 gas;
|
|
122
|
+
}
|
|
123
|
+
```
|
|
124
|
+
|