@layerzerolabs/protocol-v2-messagelib-evm-contracts 1.2.95 → 1.2.97
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/README.md +1 -1
- package/artifacts/contracts/Executor.sol/Executor.json +1413 -0
- package/artifacts/contracts/Executor.sol/ILayerZeroEndpointV2.json +230 -0
- package/artifacts/contracts/ExecutorFeeLib.sol/ExecutorFeeLib.json +546 -0
- package/artifacts/contracts/MessageLibBase.sol/MessageLibBase.json +16 -0
- package/artifacts/contracts/PriceFeed.sol/PriceFeed.json +694 -0
- package/artifacts/contracts/ReceiveLibBaseE2.sol/ReceiveLibBaseE2.json +154 -0
- package/artifacts/contracts/SendLibBase.sol/SendLibBase.json +381 -0
- package/artifacts/contracts/SendLibBaseE2.sol/SendLibBaseE2.json +819 -0
- package/artifacts/contracts/SimpleReadExecutor.sol/ILayerZeroEndpointV2.json +139 -0
- package/artifacts/contracts/SimpleReadExecutor.sol/SimpleReadExecutor.json +260 -0
- package/artifacts/contracts/Treasury.sol/Treasury.json +309 -0
- package/artifacts/contracts/Worker.sol/Worker.json +579 -0
- package/artifacts/contracts/decompressor/DVNDecoder.sol/DVNDecoder.json +10 -0
- package/artifacts/contracts/decompressor/DVNDecompressor.sol/DVNDecompressor.json +329 -0
- package/artifacts/contracts/decompressor/DecompressorExtension.sol/DecompressorExtension.json +92 -0
- package/artifacts/contracts/decompressor/ExecutorDecoder.sol/ExecutorDecoder.json +10 -0
- package/artifacts/contracts/decompressor/ExecutorDecompressor.sol/ExecutorDecompressor.json +220 -0
- package/artifacts/contracts/interfaces/IExecutor.sol/IExecutor.json +487 -0
- package/artifacts/contracts/interfaces/IExecutorFeeLib.sol/IExecutorFeeLib.json +410 -0
- package/artifacts/contracts/interfaces/ILayerZeroExecutor.sol/ILayerZeroExecutor.json +79 -0
- package/artifacts/contracts/interfaces/ILayerZeroPriceFeed.sol/ILayerZeroPriceFeed.json +222 -0
- package/artifacts/contracts/interfaces/ILayerZeroReadExecutor.sol/ILayerZeroReadExecutor.json +59 -0
- package/artifacts/contracts/interfaces/ILayerZeroTreasury.sol/ILayerZeroTreasury.json +79 -0
- package/artifacts/contracts/interfaces/IWorker.sol/IWorker.json +221 -0
- package/artifacts/contracts/libs/ExecutorOptions.sol/ExecutorOptions.json +31 -0
- package/artifacts/contracts/libs/SafeCall.sol/SafeCall.json +10 -0
- package/artifacts/contracts/lowlat/EssenceDVNWrapper.sol/EssenceDVNWrapper.json +369 -0
- package/artifacts/contracts/lowlat/MultiCall.sol/MultiCall.json +120 -0
- package/artifacts/contracts/mocks/DVNMock.sol/DVNMock.json +135 -0
- package/artifacts/contracts/mocks/ExecutorMock.sol/ExecutorMock.json +397 -0
- package/artifacts/contracts/uln/LzExecutor.sol/IReceiveUlnView.json +35 -0
- package/artifacts/contracts/uln/LzExecutor.sol/LzExecutor.json +515 -0
- package/artifacts/contracts/uln/ReceiveUlnBase.sol/ReceiveUlnBase.json +551 -0
- package/artifacts/contracts/uln/SendUlnBase.sol/SendUlnBase.json +412 -0
- package/artifacts/contracts/uln/UlnBase.sol/UlnBase.json +387 -0
- package/artifacts/contracts/uln/dvn/DVN.sol/DVN.json +1509 -0
- package/artifacts/contracts/uln/dvn/DVNFeeLib.sol/DVNFeeLib.json +695 -0
- package/artifacts/contracts/uln/dvn/DeadDVN.sol/DeadDVN.json +164 -0
- package/artifacts/contracts/uln/dvn/MultiSig.sol/MultiSig.json +217 -0
- package/artifacts/contracts/uln/dvn/SimpleReadDVN.sol/SimpleReadDVN.json +231 -0
- package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapter.sol/CCIPDVNAdapter.json +1040 -0
- package/artifacts/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapterFeeLib.sol/CCIPDVNAdapterFeeLib.json +417 -0
- package/artifacts/contracts/uln/dvn/adapters/DVNAdapterBase.sol/DVNAdapterBase.json +789 -0
- package/artifacts/contracts/uln/dvn/adapters/DVNAdapterBase.sol/IReceiveUln.json +34 -0
- package/artifacts/contracts/uln/dvn/adapters/DVNAdapterBase.sol/ISendLibBase.json +30 -0
- package/artifacts/contracts/uln/dvn/adapters/arbitrum/ArbitrumDVNAdapterL1.sol/ArbitrumDVNAdapterL1.json +936 -0
- package/artifacts/contracts/uln/dvn/adapters/arbitrum/ArbitrumDVNAdapterL2.sol/ArbitrumDVNAdapterL2.json +868 -0
- package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/AxelarDVNAdapter.json +1171 -0
- package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/ISendLibBase.json +30 -0
- package/artifacts/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol/AxelarDVNAdapterFeeLib.json +574 -0
- package/artifacts/contracts/uln/dvn/adapters/libs/DVNAdapterMessageCodec.sol/DVNAdapterMessageCodec.json +16 -0
- package/artifacts/contracts/uln/dvn/adapters/optimism/OptimismDVNAdapterL1.sol/OptimismDVNAdapterL1.json +924 -0
- package/artifacts/contracts/uln/dvn/adapters/optimism/OptimismDVNAdapterL2.sol/OptimismDVNAdapterL2.json +891 -0
- package/artifacts/contracts/uln/interfaces/IDVN.sol/IDVN.json +438 -0
- package/artifacts/contracts/uln/interfaces/IDVNFeeLib.sol/IDVNFeeLib.json +374 -0
- package/artifacts/contracts/uln/interfaces/ILayerZeroDVN.sol/ILayerZeroDVN.json +96 -0
- package/artifacts/contracts/uln/interfaces/ILayerZeroReadDVN.sol/ILayerZeroReadDVN.json +79 -0
- package/artifacts/contracts/uln/interfaces/IReceiveUlnE2.sol/IReceiveUlnE2.json +52 -0
- package/artifacts/contracts/uln/interfaces/adapters/IAxelarDVNAdapter.sol/IAxelarDVNAdapter.json +160 -0
- package/artifacts/contracts/uln/interfaces/adapters/IAxelarDVNAdapterFeeLib.sol/IAxelarDVNAdapterFeeLib.json +293 -0
- package/artifacts/contracts/uln/interfaces/adapters/ICCIPDVNAdapter.sol/ICCIPDVNAdapter.json +78 -0
- package/artifacts/contracts/uln/interfaces/adapters/ICCIPDVNAdapterFeeLib.sol/ICCIPDVNAdapterFeeLib.json +301 -0
- package/artifacts/contracts/uln/libs/DVNOptions.sol/DVNOptions.json +27 -0
- package/artifacts/contracts/uln/libs/ReadCmdCodecV1.sol/ReadCmdCodecV1.json +26 -0
- package/artifacts/contracts/uln/libs/SupportedCmdTypes.sol/SupportedCmdTypesLib.json +16 -0
- package/artifacts/contracts/uln/libs/UlnOptions.sol/UlnOptions.json +54 -0
- package/artifacts/contracts/uln/readlib/ReadLib1002.sol/ReadLib1002.json +1288 -0
- package/artifacts/contracts/uln/readlib/ReadLib1002View.sol/ReadLib1002View.json +285 -0
- package/artifacts/contracts/uln/readlib/ReadLibBase.sol/ReadLibBase.json +387 -0
- package/artifacts/contracts/uln/uln301/AddressSizeConfig.sol/AddressSizeConfig.json +129 -0
- package/artifacts/contracts/uln/uln301/ReceiveLibBaseE1.sol/ILayerZeroReceiveLibrary.json +68 -0
- package/artifacts/contracts/uln/uln301/ReceiveLibBaseE1.sol/ReceiveLibBaseE1.json +416 -0
- package/artifacts/contracts/uln/uln301/ReceiveUln301.sol/ReceiveUln301.json +1000 -0
- package/artifacts/contracts/uln/uln301/ReceiveUln301View.sol/IReceiveUln301.json +178 -0
- package/artifacts/contracts/uln/uln301/ReceiveUln301View.sol/ReceiveUln301View.json +126 -0
- package/artifacts/contracts/uln/uln301/SendLibBaseE1.sol/SendLibBaseE1.json +804 -0
- package/artifacts/contracts/uln/uln301/SendUln301.sol/SendUln301.json +1278 -0
- package/artifacts/contracts/uln/uln301/TreasuryFeeHandler.sol/TreasuryFeeHandler.json +94 -0
- package/artifacts/contracts/uln/uln301/interfaces/IMessageLibE1.sol/IMessageLibE1.json +247 -0
- package/artifacts/contracts/uln/uln301/interfaces/INonceContract.sol/INonceContract.json +40 -0
- package/artifacts/contracts/uln/uln301/interfaces/ITreasuryFeeHandler.sol/ITreasuryFeeHandler.json +44 -0
- package/artifacts/contracts/uln/uln301/interfaces/IUltraLightNode301.sol/IUltraLightNode301.json +29 -0
- package/artifacts/contracts/uln/uln301/mocks/NonceContractMock.sol/NonceContractMock.json +93 -0
- package/artifacts/contracts/uln/uln302/ReceiveUln302.sol/ReceiveUln302.json +757 -0
- package/artifacts/contracts/uln/uln302/ReceiveUln302View.sol/IReceiveUln302.json +146 -0
- package/artifacts/contracts/uln/uln302/ReceiveUln302View.sol/ReceiveUln302View.json +251 -0
- package/artifacts/contracts/uln/uln302/SendUln302.sol/SendUln302.json +1259 -0
- package/artifacts/contracts/upgradeable/WorkerUpgradeable.sol/WorkerUpgradeable.json +592 -0
- package/artifacts/contracts/upgradeable/proxy/ProxyAdmin.sol/ProxyAdmin.json +181 -0
- package/artifacts/contracts/upgradeable/proxy/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +160 -0
- package/artifacts-tron/contracts/Executor.sol/Executor.json +1413 -0
- package/artifacts-tron/contracts/Executor.sol/ILayerZeroEndpointV2.json +230 -0
- package/artifacts-tron/contracts/ExecutorFeeLib.sol/ExecutorFeeLib.json +546 -0
- package/artifacts-tron/contracts/MessageLibBase.sol/MessageLibBase.json +16 -0
- package/artifacts-tron/contracts/PriceFeed.sol/PriceFeed.json +694 -0
- package/artifacts-tron/contracts/ReceiveLibBaseE2.sol/ReceiveLibBaseE2.json +154 -0
- package/artifacts-tron/contracts/SendLibBase.sol/SendLibBase.json +381 -0
- package/artifacts-tron/contracts/SendLibBaseE2.sol/SendLibBaseE2.json +819 -0
- package/artifacts-tron/contracts/SimpleReadExecutor.sol/ILayerZeroEndpointV2.json +139 -0
- package/artifacts-tron/contracts/SimpleReadExecutor.sol/SimpleReadExecutor.json +260 -0
- package/artifacts-tron/contracts/Treasury.sol/Treasury.json +309 -0
- package/artifacts-tron/contracts/Worker.sol/Worker.json +579 -0
- package/artifacts-tron/contracts/decompressor/DVNDecoder.sol/DVNDecoder.json +10 -0
- package/artifacts-tron/contracts/decompressor/DVNDecompressor.sol/DVNDecompressor.json +329 -0
- package/artifacts-tron/contracts/decompressor/DecompressorExtension.sol/DecompressorExtension.json +92 -0
- package/artifacts-tron/contracts/decompressor/ExecutorDecoder.sol/ExecutorDecoder.json +10 -0
- package/artifacts-tron/contracts/decompressor/ExecutorDecompressor.sol/ExecutorDecompressor.json +220 -0
- package/artifacts-tron/contracts/interfaces/IExecutor.sol/IExecutor.json +487 -0
- package/artifacts-tron/contracts/interfaces/IExecutorFeeLib.sol/IExecutorFeeLib.json +410 -0
- package/artifacts-tron/contracts/interfaces/ILayerZeroExecutor.sol/ILayerZeroExecutor.json +79 -0
- package/artifacts-tron/contracts/interfaces/ILayerZeroPriceFeed.sol/ILayerZeroPriceFeed.json +222 -0
- package/artifacts-tron/contracts/interfaces/ILayerZeroReadExecutor.sol/ILayerZeroReadExecutor.json +59 -0
- package/artifacts-tron/contracts/interfaces/ILayerZeroTreasury.sol/ILayerZeroTreasury.json +79 -0
- package/artifacts-tron/contracts/interfaces/IWorker.sol/IWorker.json +221 -0
- package/artifacts-tron/contracts/libs/ExecutorOptions.sol/ExecutorOptions.json +31 -0
- package/artifacts-tron/contracts/libs/SafeCall.sol/SafeCall.json +10 -0
- package/artifacts-tron/contracts/lowlat/EssenceDVNWrapper.sol/EssenceDVNWrapper.json +369 -0
- package/artifacts-tron/contracts/lowlat/MultiCall.sol/MultiCall.json +120 -0
- package/artifacts-tron/contracts/mocks/DVNMock.sol/DVNMock.json +135 -0
- package/artifacts-tron/contracts/mocks/ExecutorMock.sol/ExecutorMock.json +397 -0
- package/artifacts-tron/contracts/uln/LzExecutor.sol/IReceiveUlnView.json +35 -0
- package/artifacts-tron/contracts/uln/LzExecutor.sol/LzExecutor.json +515 -0
- package/artifacts-tron/contracts/uln/ReceiveUlnBase.sol/ReceiveUlnBase.json +551 -0
- package/artifacts-tron/contracts/uln/SendUlnBase.sol/SendUlnBase.json +412 -0
- package/artifacts-tron/contracts/uln/UlnBase.sol/UlnBase.json +387 -0
- package/artifacts-tron/contracts/uln/dvn/DVN.sol/DVN.json +1509 -0
- package/artifacts-tron/contracts/uln/dvn/DVNFeeLib.sol/DVNFeeLib.json +695 -0
- package/artifacts-tron/contracts/uln/dvn/DeadDVN.sol/DeadDVN.json +164 -0
- package/artifacts-tron/contracts/uln/dvn/MultiSig.sol/MultiSig.json +217 -0
- package/artifacts-tron/contracts/uln/dvn/SimpleReadDVN.sol/SimpleReadDVN.json +231 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapter.sol/CCIPDVNAdapter.json +1040 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapterFeeLib.sol/CCIPDVNAdapterFeeLib.json +417 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/DVNAdapterBase.sol/DVNAdapterBase.json +789 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/DVNAdapterBase.sol/IReceiveUln.json +34 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/DVNAdapterBase.sol/ISendLibBase.json +30 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/arbitrum/ArbitrumDVNAdapterL1.sol/ArbitrumDVNAdapterL1.json +936 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/arbitrum/ArbitrumDVNAdapterL2.sol/ArbitrumDVNAdapterL2.json +868 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/AxelarDVNAdapter.json +1171 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/ISendLibBase.json +30 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol/AxelarDVNAdapterFeeLib.json +574 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/libs/DVNAdapterMessageCodec.sol/DVNAdapterMessageCodec.json +16 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/optimism/OptimismDVNAdapterL1.sol/OptimismDVNAdapterL1.json +924 -0
- package/artifacts-tron/contracts/uln/dvn/adapters/optimism/OptimismDVNAdapterL2.sol/OptimismDVNAdapterL2.json +891 -0
- package/artifacts-tron/contracts/uln/interfaces/IDVN.sol/IDVN.json +438 -0
- package/artifacts-tron/contracts/uln/interfaces/IDVNFeeLib.sol/IDVNFeeLib.json +374 -0
- package/artifacts-tron/contracts/uln/interfaces/ILayerZeroDVN.sol/ILayerZeroDVN.json +96 -0
- package/artifacts-tron/contracts/uln/interfaces/ILayerZeroReadDVN.sol/ILayerZeroReadDVN.json +79 -0
- package/artifacts-tron/contracts/uln/interfaces/IReceiveUlnE2.sol/IReceiveUlnE2.json +52 -0
- package/artifacts-tron/contracts/uln/interfaces/adapters/IAxelarDVNAdapter.sol/IAxelarDVNAdapter.json +160 -0
- package/artifacts-tron/contracts/uln/interfaces/adapters/IAxelarDVNAdapterFeeLib.sol/IAxelarDVNAdapterFeeLib.json +293 -0
- package/artifacts-tron/contracts/uln/interfaces/adapters/ICCIPDVNAdapter.sol/ICCIPDVNAdapter.json +78 -0
- package/artifacts-tron/contracts/uln/interfaces/adapters/ICCIPDVNAdapterFeeLib.sol/ICCIPDVNAdapterFeeLib.json +301 -0
- package/artifacts-tron/contracts/uln/libs/DVNOptions.sol/DVNOptions.json +27 -0
- package/artifacts-tron/contracts/uln/libs/ReadCmdCodecV1.sol/ReadCmdCodecV1.json +26 -0
- package/artifacts-tron/contracts/uln/libs/SupportedCmdTypes.sol/SupportedCmdTypesLib.json +16 -0
- package/artifacts-tron/contracts/uln/libs/UlnOptions.sol/UlnOptions.json +54 -0
- package/artifacts-tron/contracts/uln/readlib/ReadLib1002.sol/ReadLib1002.json +1288 -0
- package/artifacts-tron/contracts/uln/readlib/ReadLib1002View.sol/ReadLib1002View.json +285 -0
- package/artifacts-tron/contracts/uln/readlib/ReadLibBase.sol/ReadLibBase.json +387 -0
- package/artifacts-tron/contracts/uln/uln301/AddressSizeConfig.sol/AddressSizeConfig.json +129 -0
- package/artifacts-tron/contracts/uln/uln301/ReceiveLibBaseE1.sol/ILayerZeroReceiveLibrary.json +68 -0
- package/artifacts-tron/contracts/uln/uln301/ReceiveLibBaseE1.sol/ReceiveLibBaseE1.json +416 -0
- package/artifacts-tron/contracts/uln/uln301/ReceiveUln301.sol/ReceiveUln301.json +1000 -0
- package/artifacts-tron/contracts/uln/uln301/ReceiveUln301View.sol/IReceiveUln301.json +178 -0
- package/artifacts-tron/contracts/uln/uln301/ReceiveUln301View.sol/ReceiveUln301View.json +126 -0
- package/artifacts-tron/contracts/uln/uln301/SendLibBaseE1.sol/SendLibBaseE1.json +804 -0
- package/artifacts-tron/contracts/uln/uln301/SendUln301.sol/SendUln301.json +1278 -0
- package/artifacts-tron/contracts/uln/uln301/TreasuryFeeHandler.sol/TreasuryFeeHandler.json +94 -0
- package/artifacts-tron/contracts/uln/uln301/interfaces/IMessageLibE1.sol/IMessageLibE1.json +247 -0
- package/artifacts-tron/contracts/uln/uln301/interfaces/INonceContract.sol/INonceContract.json +40 -0
- package/artifacts-tron/contracts/uln/uln301/interfaces/ITreasuryFeeHandler.sol/ITreasuryFeeHandler.json +44 -0
- package/artifacts-tron/contracts/uln/uln301/interfaces/IUltraLightNode301.sol/IUltraLightNode301.json +29 -0
- package/artifacts-tron/contracts/uln/uln301/mocks/NonceContractMock.sol/NonceContractMock.json +93 -0
- package/artifacts-tron/contracts/uln/uln302/ReceiveUln302.sol/ReceiveUln302.json +757 -0
- package/artifacts-tron/contracts/uln/uln302/ReceiveUln302View.sol/IReceiveUln302.json +146 -0
- package/artifacts-tron/contracts/uln/uln302/ReceiveUln302View.sol/ReceiveUln302View.json +251 -0
- package/artifacts-tron/contracts/uln/uln302/SendUln302.sol/SendUln302.json +1259 -0
- package/artifacts-tron/contracts/upgradeable/WorkerUpgradeable.sol/WorkerUpgradeable.json +592 -0
- package/artifacts-tron/contracts/upgradeable/proxy/ProxyAdmin.sol/ProxyAdmin.json +181 -0
- package/artifacts-tron/contracts/upgradeable/proxy/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +160 -0
- package/artifacts-zk/contracts/Executor.sol/Executor.json +1414 -0
- package/artifacts-zk/contracts/Executor.sol/ILayerZeroEndpointV2.json +231 -0
- package/artifacts-zk/contracts/ExecutorFeeLib.sol/ExecutorFeeLib.json +547 -0
- package/artifacts-zk/contracts/MessageLibBase.sol/MessageLibBase.json +17 -0
- package/artifacts-zk/contracts/PriceFeed.sol/PriceFeed.json +695 -0
- package/artifacts-zk/contracts/ReceiveLibBaseE2.sol/ReceiveLibBaseE2.json +155 -0
- package/artifacts-zk/contracts/SendLibBase.sol/SendLibBase.json +382 -0
- package/artifacts-zk/contracts/SendLibBaseE2.sol/SendLibBaseE2.json +820 -0
- package/artifacts-zk/contracts/SimpleReadExecutor.sol/ILayerZeroEndpointV2.json +140 -0
- package/artifacts-zk/contracts/SimpleReadExecutor.sol/SimpleReadExecutor.json +261 -0
- package/artifacts-zk/contracts/Treasury.sol/Treasury.json +310 -0
- package/artifacts-zk/contracts/Worker.sol/Worker.json +580 -0
- package/artifacts-zk/contracts/decompressor/DVNDecoder.sol/DVNDecoder.json +11 -0
- package/artifacts-zk/contracts/decompressor/DVNDecompressor.sol/DVNDecompressor.json +330 -0
- package/artifacts-zk/contracts/decompressor/DecompressorExtension.sol/DecompressorExtension.json +93 -0
- package/artifacts-zk/contracts/decompressor/ExecutorDecoder.sol/ExecutorDecoder.json +11 -0
- package/artifacts-zk/contracts/decompressor/ExecutorDecompressor.sol/ExecutorDecompressor.json +221 -0
- package/artifacts-zk/contracts/interfaces/IExecutor.sol/IExecutor.json +488 -0
- package/artifacts-zk/contracts/interfaces/IExecutorFeeLib.sol/IExecutorFeeLib.json +411 -0
- package/artifacts-zk/contracts/interfaces/ILayerZeroExecutor.sol/ILayerZeroExecutor.json +80 -0
- package/artifacts-zk/contracts/interfaces/ILayerZeroPriceFeed.sol/ILayerZeroPriceFeed.json +223 -0
- package/artifacts-zk/contracts/interfaces/ILayerZeroReadExecutor.sol/ILayerZeroReadExecutor.json +60 -0
- package/artifacts-zk/contracts/interfaces/ILayerZeroTreasury.sol/ILayerZeroTreasury.json +80 -0
- package/artifacts-zk/contracts/interfaces/IWorker.sol/IWorker.json +222 -0
- package/artifacts-zk/contracts/libs/ExecutorOptions.sol/ExecutorOptions.json +32 -0
- package/artifacts-zk/contracts/libs/SafeCall.sol/SafeCall.json +11 -0
- package/artifacts-zk/contracts/lowlat/EssenceDVNWrapper.sol/EssenceDVNWrapper.json +370 -0
- package/artifacts-zk/contracts/lowlat/MultiCall.sol/MultiCall.json +121 -0
- package/artifacts-zk/contracts/mocks/DVNMock.sol/DVNMock.json +136 -0
- package/artifacts-zk/contracts/mocks/ExecutorMock.sol/ExecutorMock.json +398 -0
- package/artifacts-zk/contracts/uln/LzExecutor.sol/IReceiveUlnView.json +36 -0
- package/artifacts-zk/contracts/uln/LzExecutor.sol/LzExecutor.json +516 -0
- package/artifacts-zk/contracts/uln/ReceiveUlnBase.sol/ReceiveUlnBase.json +552 -0
- package/artifacts-zk/contracts/uln/SendUlnBase.sol/SendUlnBase.json +413 -0
- package/artifacts-zk/contracts/uln/UlnBase.sol/UlnBase.json +388 -0
- package/artifacts-zk/contracts/uln/dvn/DVN.sol/DVN.json +1510 -0
- package/artifacts-zk/contracts/uln/dvn/DVNFeeLib.sol/DVNFeeLib.json +696 -0
- package/artifacts-zk/contracts/uln/dvn/DeadDVN.sol/DeadDVN.json +165 -0
- package/artifacts-zk/contracts/uln/dvn/MultiSig.sol/MultiSig.json +218 -0
- package/artifacts-zk/contracts/uln/dvn/SimpleReadDVN.sol/SimpleReadDVN.json +232 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapter.sol/CCIPDVNAdapter.json +1041 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/CCIP/CCIPDVNAdapterFeeLib.sol/CCIPDVNAdapterFeeLib.json +418 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/DVNAdapterBase.sol/DVNAdapterBase.json +790 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/DVNAdapterBase.sol/IReceiveUln.json +35 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/DVNAdapterBase.sol/ISendLibBase.json +31 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/arbitrum/ArbitrumDVNAdapterL1.sol/ArbitrumDVNAdapterL1.json +937 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/arbitrum/ArbitrumDVNAdapterL2.sol/ArbitrumDVNAdapterL2.json +869 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/AxelarDVNAdapter.json +1172 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapter.sol/ISendLibBase.json +31 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/axelar/AxelarDVNAdapterFeeLib.sol/AxelarDVNAdapterFeeLib.json +575 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/libs/DVNAdapterMessageCodec.sol/DVNAdapterMessageCodec.json +17 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/optimism/OptimismDVNAdapterL1.sol/OptimismDVNAdapterL1.json +925 -0
- package/artifacts-zk/contracts/uln/dvn/adapters/optimism/OptimismDVNAdapterL2.sol/OptimismDVNAdapterL2.json +892 -0
- package/artifacts-zk/contracts/uln/interfaces/IDVN.sol/IDVN.json +439 -0
- package/artifacts-zk/contracts/uln/interfaces/IDVNFeeLib.sol/IDVNFeeLib.json +375 -0
- package/artifacts-zk/contracts/uln/interfaces/ILayerZeroDVN.sol/ILayerZeroDVN.json +97 -0
- package/artifacts-zk/contracts/uln/interfaces/ILayerZeroReadDVN.sol/ILayerZeroReadDVN.json +80 -0
- package/artifacts-zk/contracts/uln/interfaces/IReceiveUlnE2.sol/IReceiveUlnE2.json +53 -0
- package/artifacts-zk/contracts/uln/interfaces/adapters/IAxelarDVNAdapter.sol/IAxelarDVNAdapter.json +161 -0
- package/artifacts-zk/contracts/uln/interfaces/adapters/IAxelarDVNAdapterFeeLib.sol/IAxelarDVNAdapterFeeLib.json +294 -0
- package/artifacts-zk/contracts/uln/interfaces/adapters/ICCIPDVNAdapter.sol/ICCIPDVNAdapter.json +79 -0
- package/artifacts-zk/contracts/uln/interfaces/adapters/ICCIPDVNAdapterFeeLib.sol/ICCIPDVNAdapterFeeLib.json +302 -0
- package/artifacts-zk/contracts/uln/libs/DVNOptions.sol/DVNOptions.json +28 -0
- package/artifacts-zk/contracts/uln/libs/ReadCmdCodecV1.sol/ReadCmdCodecV1.json +27 -0
- package/artifacts-zk/contracts/uln/libs/SupportedCmdTypes.sol/SupportedCmdTypesLib.json +17 -0
- package/artifacts-zk/contracts/uln/libs/UlnOptions.sol/UlnOptions.json +55 -0
- package/artifacts-zk/contracts/uln/readlib/ReadLib1002.sol/ReadLib1002.json +1289 -0
- package/artifacts-zk/contracts/uln/readlib/ReadLib1002View.sol/ReadLib1002View.json +286 -0
- package/artifacts-zk/contracts/uln/readlib/ReadLibBase.sol/ReadLibBase.json +388 -0
- package/artifacts-zk/contracts/uln/uln301/AddressSizeConfig.sol/AddressSizeConfig.json +130 -0
- package/artifacts-zk/contracts/uln/uln301/ReceiveLibBaseE1.sol/ILayerZeroReceiveLibrary.json +69 -0
- package/artifacts-zk/contracts/uln/uln301/ReceiveLibBaseE1.sol/ReceiveLibBaseE1.json +417 -0
- package/artifacts-zk/contracts/uln/uln301/ReceiveUln301.sol/ReceiveUln301.json +1001 -0
- package/artifacts-zk/contracts/uln/uln301/ReceiveUln301View.sol/IReceiveUln301.json +179 -0
- package/artifacts-zk/contracts/uln/uln301/ReceiveUln301View.sol/ReceiveUln301View.json +127 -0
- package/artifacts-zk/contracts/uln/uln301/SendLibBaseE1.sol/SendLibBaseE1.json +805 -0
- package/artifacts-zk/contracts/uln/uln301/SendUln301.sol/SendUln301.json +1279 -0
- package/artifacts-zk/contracts/uln/uln301/TreasuryFeeHandler.sol/TreasuryFeeHandler.json +95 -0
- package/artifacts-zk/contracts/uln/uln301/interfaces/IMessageLibE1.sol/IMessageLibE1.json +248 -0
- package/artifacts-zk/contracts/uln/uln301/interfaces/INonceContract.sol/INonceContract.json +41 -0
- package/artifacts-zk/contracts/uln/uln301/interfaces/ITreasuryFeeHandler.sol/ITreasuryFeeHandler.json +45 -0
- package/artifacts-zk/contracts/uln/uln301/interfaces/IUltraLightNode301.sol/IUltraLightNode301.json +30 -0
- package/artifacts-zk/contracts/uln/uln301/mocks/NonceContractMock.sol/NonceContractMock.json +94 -0
- package/artifacts-zk/contracts/uln/uln302/ReceiveUln302.sol/ReceiveUln302.json +758 -0
- package/artifacts-zk/contracts/uln/uln302/ReceiveUln302View.sol/IReceiveUln302.json +147 -0
- package/artifacts-zk/contracts/uln/uln302/ReceiveUln302View.sol/ReceiveUln302View.json +252 -0
- package/artifacts-zk/contracts/uln/uln302/SendUln302.sol/SendUln302.json +1260 -0
- package/artifacts-zk/contracts/upgradeable/WorkerUpgradeable.sol/WorkerUpgradeable.json +593 -0
- package/artifacts-zk/contracts/upgradeable/proxy/ProxyAdmin.sol/ProxyAdmin.json +182 -0
- package/artifacts-zk/contracts/upgradeable/proxy/TransparentUpgradeableProxy.sol/TransparentUpgradeableProxy.json +161 -0
- package/package.json +6 -6
|
@@ -0,0 +1,1413 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_format": "hh-sol-artifact-1",
|
|
3
|
+
"contractName": "Executor",
|
|
4
|
+
"sourceName": "contracts/Executor.sol",
|
|
5
|
+
"abi": [
|
|
6
|
+
{
|
|
7
|
+
"inputs": [
|
|
8
|
+
{
|
|
9
|
+
"internalType": "address",
|
|
10
|
+
"name": "_to",
|
|
11
|
+
"type": "address"
|
|
12
|
+
},
|
|
13
|
+
{
|
|
14
|
+
"internalType": "uint256",
|
|
15
|
+
"name": "_value",
|
|
16
|
+
"type": "uint256"
|
|
17
|
+
}
|
|
18
|
+
],
|
|
19
|
+
"name": "Transfer_NativeFailed",
|
|
20
|
+
"type": "error"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"inputs": [],
|
|
24
|
+
"name": "Transfer_ToAddressIsZero",
|
|
25
|
+
"type": "error"
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
"inputs": [],
|
|
29
|
+
"name": "Worker_NotAllowed",
|
|
30
|
+
"type": "error"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"inputs": [],
|
|
34
|
+
"name": "Worker_OnlyMessageLib",
|
|
35
|
+
"type": "error"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"inputs": [],
|
|
39
|
+
"name": "Worker_RoleRenouncingDisabled",
|
|
40
|
+
"type": "error"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"anonymous": false,
|
|
44
|
+
"inputs": [
|
|
45
|
+
{
|
|
46
|
+
"components": [
|
|
47
|
+
{
|
|
48
|
+
"internalType": "uint32",
|
|
49
|
+
"name": "dstEid",
|
|
50
|
+
"type": "uint32"
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"internalType": "uint64",
|
|
54
|
+
"name": "lzReceiveBaseGas",
|
|
55
|
+
"type": "uint64"
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
"internalType": "uint64",
|
|
59
|
+
"name": "lzComposeBaseGas",
|
|
60
|
+
"type": "uint64"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"internalType": "uint16",
|
|
64
|
+
"name": "multiplierBps",
|
|
65
|
+
"type": "uint16"
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"internalType": "uint128",
|
|
69
|
+
"name": "floorMarginUSD",
|
|
70
|
+
"type": "uint128"
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"internalType": "uint128",
|
|
74
|
+
"name": "nativeCap",
|
|
75
|
+
"type": "uint128"
|
|
76
|
+
}
|
|
77
|
+
],
|
|
78
|
+
"indexed": false,
|
|
79
|
+
"internalType": "struct IExecutor.DstConfigParam[]",
|
|
80
|
+
"name": "params",
|
|
81
|
+
"type": "tuple[]"
|
|
82
|
+
}
|
|
83
|
+
],
|
|
84
|
+
"name": "DstConfigSet",
|
|
85
|
+
"type": "event"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"anonymous": false,
|
|
89
|
+
"inputs": [
|
|
90
|
+
{
|
|
91
|
+
"indexed": false,
|
|
92
|
+
"internalType": "uint8",
|
|
93
|
+
"name": "version",
|
|
94
|
+
"type": "uint8"
|
|
95
|
+
}
|
|
96
|
+
],
|
|
97
|
+
"name": "Initialized",
|
|
98
|
+
"type": "event"
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"anonymous": false,
|
|
102
|
+
"inputs": [
|
|
103
|
+
{
|
|
104
|
+
"components": [
|
|
105
|
+
{
|
|
106
|
+
"internalType": "uint32",
|
|
107
|
+
"name": "srcEid",
|
|
108
|
+
"type": "uint32"
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"internalType": "bytes32",
|
|
112
|
+
"name": "sender",
|
|
113
|
+
"type": "bytes32"
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
"internalType": "uint64",
|
|
117
|
+
"name": "nonce",
|
|
118
|
+
"type": "uint64"
|
|
119
|
+
}
|
|
120
|
+
],
|
|
121
|
+
"indexed": false,
|
|
122
|
+
"internalType": "struct Origin",
|
|
123
|
+
"name": "origin",
|
|
124
|
+
"type": "tuple"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"indexed": false,
|
|
128
|
+
"internalType": "uint32",
|
|
129
|
+
"name": "dstEid",
|
|
130
|
+
"type": "uint32"
|
|
131
|
+
},
|
|
132
|
+
{
|
|
133
|
+
"indexed": false,
|
|
134
|
+
"internalType": "address",
|
|
135
|
+
"name": "oapp",
|
|
136
|
+
"type": "address"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"components": [
|
|
140
|
+
{
|
|
141
|
+
"internalType": "address",
|
|
142
|
+
"name": "receiver",
|
|
143
|
+
"type": "address"
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
"internalType": "uint256",
|
|
147
|
+
"name": "amount",
|
|
148
|
+
"type": "uint256"
|
|
149
|
+
}
|
|
150
|
+
],
|
|
151
|
+
"indexed": false,
|
|
152
|
+
"internalType": "struct IExecutor.NativeDropParams[]",
|
|
153
|
+
"name": "params",
|
|
154
|
+
"type": "tuple[]"
|
|
155
|
+
},
|
|
156
|
+
{
|
|
157
|
+
"indexed": false,
|
|
158
|
+
"internalType": "bool[]",
|
|
159
|
+
"name": "success",
|
|
160
|
+
"type": "bool[]"
|
|
161
|
+
}
|
|
162
|
+
],
|
|
163
|
+
"name": "NativeDropApplied",
|
|
164
|
+
"type": "event"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"anonymous": false,
|
|
168
|
+
"inputs": [
|
|
169
|
+
{
|
|
170
|
+
"indexed": false,
|
|
171
|
+
"internalType": "address",
|
|
172
|
+
"name": "account",
|
|
173
|
+
"type": "address"
|
|
174
|
+
}
|
|
175
|
+
],
|
|
176
|
+
"name": "Paused",
|
|
177
|
+
"type": "event"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"anonymous": false,
|
|
181
|
+
"inputs": [
|
|
182
|
+
{
|
|
183
|
+
"indexed": true,
|
|
184
|
+
"internalType": "address",
|
|
185
|
+
"name": "sender",
|
|
186
|
+
"type": "address"
|
|
187
|
+
},
|
|
188
|
+
{
|
|
189
|
+
"indexed": false,
|
|
190
|
+
"internalType": "bool",
|
|
191
|
+
"name": "whitelisted",
|
|
192
|
+
"type": "bool"
|
|
193
|
+
}
|
|
194
|
+
],
|
|
195
|
+
"name": "PriceFloorWhitelistSet",
|
|
196
|
+
"type": "event"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"anonymous": false,
|
|
200
|
+
"inputs": [
|
|
201
|
+
{
|
|
202
|
+
"indexed": false,
|
|
203
|
+
"internalType": "address",
|
|
204
|
+
"name": "receiveUln301",
|
|
205
|
+
"type": "address"
|
|
206
|
+
}
|
|
207
|
+
],
|
|
208
|
+
"name": "ReceiveUln301Set",
|
|
209
|
+
"type": "event"
|
|
210
|
+
},
|
|
211
|
+
{
|
|
212
|
+
"anonymous": false,
|
|
213
|
+
"inputs": [
|
|
214
|
+
{
|
|
215
|
+
"indexed": true,
|
|
216
|
+
"internalType": "bytes32",
|
|
217
|
+
"name": "role",
|
|
218
|
+
"type": "bytes32"
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"indexed": true,
|
|
222
|
+
"internalType": "bytes32",
|
|
223
|
+
"name": "previousAdminRole",
|
|
224
|
+
"type": "bytes32"
|
|
225
|
+
},
|
|
226
|
+
{
|
|
227
|
+
"indexed": true,
|
|
228
|
+
"internalType": "bytes32",
|
|
229
|
+
"name": "newAdminRole",
|
|
230
|
+
"type": "bytes32"
|
|
231
|
+
}
|
|
232
|
+
],
|
|
233
|
+
"name": "RoleAdminChanged",
|
|
234
|
+
"type": "event"
|
|
235
|
+
},
|
|
236
|
+
{
|
|
237
|
+
"anonymous": false,
|
|
238
|
+
"inputs": [
|
|
239
|
+
{
|
|
240
|
+
"indexed": true,
|
|
241
|
+
"internalType": "bytes32",
|
|
242
|
+
"name": "role",
|
|
243
|
+
"type": "bytes32"
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
"indexed": true,
|
|
247
|
+
"internalType": "address",
|
|
248
|
+
"name": "account",
|
|
249
|
+
"type": "address"
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
"indexed": true,
|
|
253
|
+
"internalType": "address",
|
|
254
|
+
"name": "sender",
|
|
255
|
+
"type": "address"
|
|
256
|
+
}
|
|
257
|
+
],
|
|
258
|
+
"name": "RoleGranted",
|
|
259
|
+
"type": "event"
|
|
260
|
+
},
|
|
261
|
+
{
|
|
262
|
+
"anonymous": false,
|
|
263
|
+
"inputs": [
|
|
264
|
+
{
|
|
265
|
+
"indexed": true,
|
|
266
|
+
"internalType": "bytes32",
|
|
267
|
+
"name": "role",
|
|
268
|
+
"type": "bytes32"
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
"indexed": true,
|
|
272
|
+
"internalType": "address",
|
|
273
|
+
"name": "account",
|
|
274
|
+
"type": "address"
|
|
275
|
+
},
|
|
276
|
+
{
|
|
277
|
+
"indexed": true,
|
|
278
|
+
"internalType": "address",
|
|
279
|
+
"name": "sender",
|
|
280
|
+
"type": "address"
|
|
281
|
+
}
|
|
282
|
+
],
|
|
283
|
+
"name": "RoleRevoked",
|
|
284
|
+
"type": "event"
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"anonymous": false,
|
|
288
|
+
"inputs": [
|
|
289
|
+
{
|
|
290
|
+
"indexed": false,
|
|
291
|
+
"internalType": "uint16",
|
|
292
|
+
"name": "multiplierBps",
|
|
293
|
+
"type": "uint16"
|
|
294
|
+
}
|
|
295
|
+
],
|
|
296
|
+
"name": "SetDefaultMultiplierBps",
|
|
297
|
+
"type": "event"
|
|
298
|
+
},
|
|
299
|
+
{
|
|
300
|
+
"anonymous": false,
|
|
301
|
+
"inputs": [
|
|
302
|
+
{
|
|
303
|
+
"indexed": false,
|
|
304
|
+
"internalType": "address",
|
|
305
|
+
"name": "priceFeed",
|
|
306
|
+
"type": "address"
|
|
307
|
+
}
|
|
308
|
+
],
|
|
309
|
+
"name": "SetPriceFeed",
|
|
310
|
+
"type": "event"
|
|
311
|
+
},
|
|
312
|
+
{
|
|
313
|
+
"anonymous": false,
|
|
314
|
+
"inputs": [
|
|
315
|
+
{
|
|
316
|
+
"indexed": false,
|
|
317
|
+
"internalType": "uint32",
|
|
318
|
+
"name": "dstEid",
|
|
319
|
+
"type": "uint32"
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
"indexed": false,
|
|
323
|
+
"internalType": "uint8[]",
|
|
324
|
+
"name": "optionTypes",
|
|
325
|
+
"type": "uint8[]"
|
|
326
|
+
}
|
|
327
|
+
],
|
|
328
|
+
"name": "SetSupportedOptionTypes",
|
|
329
|
+
"type": "event"
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
"anonymous": false,
|
|
333
|
+
"inputs": [
|
|
334
|
+
{
|
|
335
|
+
"indexed": false,
|
|
336
|
+
"internalType": "address",
|
|
337
|
+
"name": "workerLib",
|
|
338
|
+
"type": "address"
|
|
339
|
+
}
|
|
340
|
+
],
|
|
341
|
+
"name": "SetWorkerLib",
|
|
342
|
+
"type": "event"
|
|
343
|
+
},
|
|
344
|
+
{
|
|
345
|
+
"anonymous": false,
|
|
346
|
+
"inputs": [
|
|
347
|
+
{
|
|
348
|
+
"indexed": false,
|
|
349
|
+
"internalType": "address",
|
|
350
|
+
"name": "account",
|
|
351
|
+
"type": "address"
|
|
352
|
+
}
|
|
353
|
+
],
|
|
354
|
+
"name": "Unpaused",
|
|
355
|
+
"type": "event"
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
"anonymous": false,
|
|
359
|
+
"inputs": [
|
|
360
|
+
{
|
|
361
|
+
"indexed": false,
|
|
362
|
+
"internalType": "address",
|
|
363
|
+
"name": "lib",
|
|
364
|
+
"type": "address"
|
|
365
|
+
},
|
|
366
|
+
{
|
|
367
|
+
"indexed": false,
|
|
368
|
+
"internalType": "address",
|
|
369
|
+
"name": "to",
|
|
370
|
+
"type": "address"
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
"indexed": false,
|
|
374
|
+
"internalType": "uint256",
|
|
375
|
+
"name": "amount",
|
|
376
|
+
"type": "uint256"
|
|
377
|
+
}
|
|
378
|
+
],
|
|
379
|
+
"name": "Withdraw",
|
|
380
|
+
"type": "event"
|
|
381
|
+
},
|
|
382
|
+
{
|
|
383
|
+
"inputs": [],
|
|
384
|
+
"name": "DEFAULT_ADMIN_ROLE",
|
|
385
|
+
"outputs": [
|
|
386
|
+
{
|
|
387
|
+
"internalType": "bytes32",
|
|
388
|
+
"name": "",
|
|
389
|
+
"type": "bytes32"
|
|
390
|
+
}
|
|
391
|
+
],
|
|
392
|
+
"stateMutability": "view",
|
|
393
|
+
"type": "function"
|
|
394
|
+
},
|
|
395
|
+
{
|
|
396
|
+
"inputs": [],
|
|
397
|
+
"name": "allowlistSize",
|
|
398
|
+
"outputs": [
|
|
399
|
+
{
|
|
400
|
+
"internalType": "uint64",
|
|
401
|
+
"name": "",
|
|
402
|
+
"type": "uint64"
|
|
403
|
+
}
|
|
404
|
+
],
|
|
405
|
+
"stateMutability": "view",
|
|
406
|
+
"type": "function"
|
|
407
|
+
},
|
|
408
|
+
{
|
|
409
|
+
"inputs": [
|
|
410
|
+
{
|
|
411
|
+
"internalType": "uint32",
|
|
412
|
+
"name": "_dstEid",
|
|
413
|
+
"type": "uint32"
|
|
414
|
+
},
|
|
415
|
+
{
|
|
416
|
+
"internalType": "address",
|
|
417
|
+
"name": "_sender",
|
|
418
|
+
"type": "address"
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
"internalType": "uint256",
|
|
422
|
+
"name": "_calldataSize",
|
|
423
|
+
"type": "uint256"
|
|
424
|
+
},
|
|
425
|
+
{
|
|
426
|
+
"internalType": "bytes",
|
|
427
|
+
"name": "_options",
|
|
428
|
+
"type": "bytes"
|
|
429
|
+
}
|
|
430
|
+
],
|
|
431
|
+
"name": "assignJob",
|
|
432
|
+
"outputs": [
|
|
433
|
+
{
|
|
434
|
+
"internalType": "uint256",
|
|
435
|
+
"name": "fee",
|
|
436
|
+
"type": "uint256"
|
|
437
|
+
}
|
|
438
|
+
],
|
|
439
|
+
"stateMutability": "nonpayable",
|
|
440
|
+
"type": "function"
|
|
441
|
+
},
|
|
442
|
+
{
|
|
443
|
+
"inputs": [
|
|
444
|
+
{
|
|
445
|
+
"internalType": "address",
|
|
446
|
+
"name": "_sender",
|
|
447
|
+
"type": "address"
|
|
448
|
+
},
|
|
449
|
+
{
|
|
450
|
+
"internalType": "bytes",
|
|
451
|
+
"name": "_options",
|
|
452
|
+
"type": "bytes"
|
|
453
|
+
}
|
|
454
|
+
],
|
|
455
|
+
"name": "assignJob",
|
|
456
|
+
"outputs": [
|
|
457
|
+
{
|
|
458
|
+
"internalType": "uint256",
|
|
459
|
+
"name": "fee",
|
|
460
|
+
"type": "uint256"
|
|
461
|
+
}
|
|
462
|
+
],
|
|
463
|
+
"stateMutability": "nonpayable",
|
|
464
|
+
"type": "function"
|
|
465
|
+
},
|
|
466
|
+
{
|
|
467
|
+
"inputs": [
|
|
468
|
+
{
|
|
469
|
+
"internalType": "address",
|
|
470
|
+
"name": "_from",
|
|
471
|
+
"type": "address"
|
|
472
|
+
},
|
|
473
|
+
{
|
|
474
|
+
"internalType": "address",
|
|
475
|
+
"name": "_to",
|
|
476
|
+
"type": "address"
|
|
477
|
+
},
|
|
478
|
+
{
|
|
479
|
+
"internalType": "bytes32",
|
|
480
|
+
"name": "_guid",
|
|
481
|
+
"type": "bytes32"
|
|
482
|
+
},
|
|
483
|
+
{
|
|
484
|
+
"internalType": "uint16",
|
|
485
|
+
"name": "_index",
|
|
486
|
+
"type": "uint16"
|
|
487
|
+
},
|
|
488
|
+
{
|
|
489
|
+
"internalType": "bytes",
|
|
490
|
+
"name": "_message",
|
|
491
|
+
"type": "bytes"
|
|
492
|
+
},
|
|
493
|
+
{
|
|
494
|
+
"internalType": "bytes",
|
|
495
|
+
"name": "_extraData",
|
|
496
|
+
"type": "bytes"
|
|
497
|
+
},
|
|
498
|
+
{
|
|
499
|
+
"internalType": "uint256",
|
|
500
|
+
"name": "_gasLimit",
|
|
501
|
+
"type": "uint256"
|
|
502
|
+
}
|
|
503
|
+
],
|
|
504
|
+
"name": "compose302",
|
|
505
|
+
"outputs": [],
|
|
506
|
+
"stateMutability": "payable",
|
|
507
|
+
"type": "function"
|
|
508
|
+
},
|
|
509
|
+
{
|
|
510
|
+
"inputs": [],
|
|
511
|
+
"name": "defaultMultiplierBps",
|
|
512
|
+
"outputs": [
|
|
513
|
+
{
|
|
514
|
+
"internalType": "uint16",
|
|
515
|
+
"name": "",
|
|
516
|
+
"type": "uint16"
|
|
517
|
+
}
|
|
518
|
+
],
|
|
519
|
+
"stateMutability": "view",
|
|
520
|
+
"type": "function"
|
|
521
|
+
},
|
|
522
|
+
{
|
|
523
|
+
"inputs": [
|
|
524
|
+
{
|
|
525
|
+
"internalType": "uint32",
|
|
526
|
+
"name": "dstEid",
|
|
527
|
+
"type": "uint32"
|
|
528
|
+
}
|
|
529
|
+
],
|
|
530
|
+
"name": "dstConfig",
|
|
531
|
+
"outputs": [
|
|
532
|
+
{
|
|
533
|
+
"internalType": "uint64",
|
|
534
|
+
"name": "lzReceiveBaseGas",
|
|
535
|
+
"type": "uint64"
|
|
536
|
+
},
|
|
537
|
+
{
|
|
538
|
+
"internalType": "uint16",
|
|
539
|
+
"name": "multiplierBps",
|
|
540
|
+
"type": "uint16"
|
|
541
|
+
},
|
|
542
|
+
{
|
|
543
|
+
"internalType": "uint128",
|
|
544
|
+
"name": "floorMarginUSD",
|
|
545
|
+
"type": "uint128"
|
|
546
|
+
},
|
|
547
|
+
{
|
|
548
|
+
"internalType": "uint128",
|
|
549
|
+
"name": "nativeCap",
|
|
550
|
+
"type": "uint128"
|
|
551
|
+
},
|
|
552
|
+
{
|
|
553
|
+
"internalType": "uint64",
|
|
554
|
+
"name": "lzComposeBaseGas",
|
|
555
|
+
"type": "uint64"
|
|
556
|
+
}
|
|
557
|
+
],
|
|
558
|
+
"stateMutability": "view",
|
|
559
|
+
"type": "function"
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
"inputs": [],
|
|
563
|
+
"name": "endpoint",
|
|
564
|
+
"outputs": [
|
|
565
|
+
{
|
|
566
|
+
"internalType": "address",
|
|
567
|
+
"name": "",
|
|
568
|
+
"type": "address"
|
|
569
|
+
}
|
|
570
|
+
],
|
|
571
|
+
"stateMutability": "view",
|
|
572
|
+
"type": "function"
|
|
573
|
+
},
|
|
574
|
+
{
|
|
575
|
+
"inputs": [
|
|
576
|
+
{
|
|
577
|
+
"internalType": "bytes",
|
|
578
|
+
"name": "_packet",
|
|
579
|
+
"type": "bytes"
|
|
580
|
+
},
|
|
581
|
+
{
|
|
582
|
+
"internalType": "uint256",
|
|
583
|
+
"name": "_gasLimit",
|
|
584
|
+
"type": "uint256"
|
|
585
|
+
}
|
|
586
|
+
],
|
|
587
|
+
"name": "execute301",
|
|
588
|
+
"outputs": [],
|
|
589
|
+
"stateMutability": "nonpayable",
|
|
590
|
+
"type": "function"
|
|
591
|
+
},
|
|
592
|
+
{
|
|
593
|
+
"inputs": [
|
|
594
|
+
{
|
|
595
|
+
"components": [
|
|
596
|
+
{
|
|
597
|
+
"internalType": "address",
|
|
598
|
+
"name": "receiver",
|
|
599
|
+
"type": "address"
|
|
600
|
+
},
|
|
601
|
+
{
|
|
602
|
+
"components": [
|
|
603
|
+
{
|
|
604
|
+
"internalType": "uint32",
|
|
605
|
+
"name": "srcEid",
|
|
606
|
+
"type": "uint32"
|
|
607
|
+
},
|
|
608
|
+
{
|
|
609
|
+
"internalType": "bytes32",
|
|
610
|
+
"name": "sender",
|
|
611
|
+
"type": "bytes32"
|
|
612
|
+
},
|
|
613
|
+
{
|
|
614
|
+
"internalType": "uint64",
|
|
615
|
+
"name": "nonce",
|
|
616
|
+
"type": "uint64"
|
|
617
|
+
}
|
|
618
|
+
],
|
|
619
|
+
"internalType": "struct Origin",
|
|
620
|
+
"name": "origin",
|
|
621
|
+
"type": "tuple"
|
|
622
|
+
},
|
|
623
|
+
{
|
|
624
|
+
"internalType": "bytes32",
|
|
625
|
+
"name": "guid",
|
|
626
|
+
"type": "bytes32"
|
|
627
|
+
},
|
|
628
|
+
{
|
|
629
|
+
"internalType": "bytes",
|
|
630
|
+
"name": "message",
|
|
631
|
+
"type": "bytes"
|
|
632
|
+
},
|
|
633
|
+
{
|
|
634
|
+
"internalType": "bytes",
|
|
635
|
+
"name": "extraData",
|
|
636
|
+
"type": "bytes"
|
|
637
|
+
},
|
|
638
|
+
{
|
|
639
|
+
"internalType": "uint256",
|
|
640
|
+
"name": "gasLimit",
|
|
641
|
+
"type": "uint256"
|
|
642
|
+
}
|
|
643
|
+
],
|
|
644
|
+
"internalType": "struct IExecutor.ExecutionParams",
|
|
645
|
+
"name": "_executionParams",
|
|
646
|
+
"type": "tuple"
|
|
647
|
+
}
|
|
648
|
+
],
|
|
649
|
+
"name": "execute302",
|
|
650
|
+
"outputs": [],
|
|
651
|
+
"stateMutability": "payable",
|
|
652
|
+
"type": "function"
|
|
653
|
+
},
|
|
654
|
+
{
|
|
655
|
+
"inputs": [
|
|
656
|
+
{
|
|
657
|
+
"internalType": "uint32",
|
|
658
|
+
"name": "_dstEid",
|
|
659
|
+
"type": "uint32"
|
|
660
|
+
},
|
|
661
|
+
{
|
|
662
|
+
"internalType": "address",
|
|
663
|
+
"name": "_sender",
|
|
664
|
+
"type": "address"
|
|
665
|
+
},
|
|
666
|
+
{
|
|
667
|
+
"internalType": "uint256",
|
|
668
|
+
"name": "_calldataSize",
|
|
669
|
+
"type": "uint256"
|
|
670
|
+
},
|
|
671
|
+
{
|
|
672
|
+
"internalType": "bytes",
|
|
673
|
+
"name": "_options",
|
|
674
|
+
"type": "bytes"
|
|
675
|
+
}
|
|
676
|
+
],
|
|
677
|
+
"name": "getFee",
|
|
678
|
+
"outputs": [
|
|
679
|
+
{
|
|
680
|
+
"internalType": "uint256",
|
|
681
|
+
"name": "fee",
|
|
682
|
+
"type": "uint256"
|
|
683
|
+
}
|
|
684
|
+
],
|
|
685
|
+
"stateMutability": "view",
|
|
686
|
+
"type": "function"
|
|
687
|
+
},
|
|
688
|
+
{
|
|
689
|
+
"inputs": [
|
|
690
|
+
{
|
|
691
|
+
"internalType": "address",
|
|
692
|
+
"name": "_sender",
|
|
693
|
+
"type": "address"
|
|
694
|
+
},
|
|
695
|
+
{
|
|
696
|
+
"internalType": "bytes",
|
|
697
|
+
"name": "_options",
|
|
698
|
+
"type": "bytes"
|
|
699
|
+
}
|
|
700
|
+
],
|
|
701
|
+
"name": "getFee",
|
|
702
|
+
"outputs": [
|
|
703
|
+
{
|
|
704
|
+
"internalType": "uint256",
|
|
705
|
+
"name": "fee",
|
|
706
|
+
"type": "uint256"
|
|
707
|
+
}
|
|
708
|
+
],
|
|
709
|
+
"stateMutability": "view",
|
|
710
|
+
"type": "function"
|
|
711
|
+
},
|
|
712
|
+
{
|
|
713
|
+
"inputs": [
|
|
714
|
+
{
|
|
715
|
+
"internalType": "bytes32",
|
|
716
|
+
"name": "role",
|
|
717
|
+
"type": "bytes32"
|
|
718
|
+
}
|
|
719
|
+
],
|
|
720
|
+
"name": "getRoleAdmin",
|
|
721
|
+
"outputs": [
|
|
722
|
+
{
|
|
723
|
+
"internalType": "bytes32",
|
|
724
|
+
"name": "",
|
|
725
|
+
"type": "bytes32"
|
|
726
|
+
}
|
|
727
|
+
],
|
|
728
|
+
"stateMutability": "view",
|
|
729
|
+
"type": "function"
|
|
730
|
+
},
|
|
731
|
+
{
|
|
732
|
+
"inputs": [
|
|
733
|
+
{
|
|
734
|
+
"internalType": "uint32",
|
|
735
|
+
"name": "_eid",
|
|
736
|
+
"type": "uint32"
|
|
737
|
+
}
|
|
738
|
+
],
|
|
739
|
+
"name": "getSupportedOptionTypes",
|
|
740
|
+
"outputs": [
|
|
741
|
+
{
|
|
742
|
+
"internalType": "uint8[]",
|
|
743
|
+
"name": "",
|
|
744
|
+
"type": "uint8[]"
|
|
745
|
+
}
|
|
746
|
+
],
|
|
747
|
+
"stateMutability": "view",
|
|
748
|
+
"type": "function"
|
|
749
|
+
},
|
|
750
|
+
{
|
|
751
|
+
"inputs": [
|
|
752
|
+
{
|
|
753
|
+
"internalType": "bytes32",
|
|
754
|
+
"name": "role",
|
|
755
|
+
"type": "bytes32"
|
|
756
|
+
},
|
|
757
|
+
{
|
|
758
|
+
"internalType": "address",
|
|
759
|
+
"name": "account",
|
|
760
|
+
"type": "address"
|
|
761
|
+
}
|
|
762
|
+
],
|
|
763
|
+
"name": "grantRole",
|
|
764
|
+
"outputs": [],
|
|
765
|
+
"stateMutability": "nonpayable",
|
|
766
|
+
"type": "function"
|
|
767
|
+
},
|
|
768
|
+
{
|
|
769
|
+
"inputs": [
|
|
770
|
+
{
|
|
771
|
+
"internalType": "address",
|
|
772
|
+
"name": "_sender",
|
|
773
|
+
"type": "address"
|
|
774
|
+
}
|
|
775
|
+
],
|
|
776
|
+
"name": "hasAcl",
|
|
777
|
+
"outputs": [
|
|
778
|
+
{
|
|
779
|
+
"internalType": "bool",
|
|
780
|
+
"name": "",
|
|
781
|
+
"type": "bool"
|
|
782
|
+
}
|
|
783
|
+
],
|
|
784
|
+
"stateMutability": "view",
|
|
785
|
+
"type": "function"
|
|
786
|
+
},
|
|
787
|
+
{
|
|
788
|
+
"inputs": [
|
|
789
|
+
{
|
|
790
|
+
"internalType": "bytes32",
|
|
791
|
+
"name": "role",
|
|
792
|
+
"type": "bytes32"
|
|
793
|
+
},
|
|
794
|
+
{
|
|
795
|
+
"internalType": "address",
|
|
796
|
+
"name": "account",
|
|
797
|
+
"type": "address"
|
|
798
|
+
}
|
|
799
|
+
],
|
|
800
|
+
"name": "hasRole",
|
|
801
|
+
"outputs": [
|
|
802
|
+
{
|
|
803
|
+
"internalType": "bool",
|
|
804
|
+
"name": "",
|
|
805
|
+
"type": "bool"
|
|
806
|
+
}
|
|
807
|
+
],
|
|
808
|
+
"stateMutability": "view",
|
|
809
|
+
"type": "function"
|
|
810
|
+
},
|
|
811
|
+
{
|
|
812
|
+
"inputs": [
|
|
813
|
+
{
|
|
814
|
+
"internalType": "address",
|
|
815
|
+
"name": "_endpoint",
|
|
816
|
+
"type": "address"
|
|
817
|
+
},
|
|
818
|
+
{
|
|
819
|
+
"internalType": "address",
|
|
820
|
+
"name": "_receiveUln301",
|
|
821
|
+
"type": "address"
|
|
822
|
+
},
|
|
823
|
+
{
|
|
824
|
+
"internalType": "address[]",
|
|
825
|
+
"name": "_messageLibs",
|
|
826
|
+
"type": "address[]"
|
|
827
|
+
},
|
|
828
|
+
{
|
|
829
|
+
"internalType": "address",
|
|
830
|
+
"name": "_priceFeed",
|
|
831
|
+
"type": "address"
|
|
832
|
+
},
|
|
833
|
+
{
|
|
834
|
+
"internalType": "address",
|
|
835
|
+
"name": "_roleAdmin",
|
|
836
|
+
"type": "address"
|
|
837
|
+
},
|
|
838
|
+
{
|
|
839
|
+
"internalType": "address[]",
|
|
840
|
+
"name": "_admins",
|
|
841
|
+
"type": "address[]"
|
|
842
|
+
}
|
|
843
|
+
],
|
|
844
|
+
"name": "initialize",
|
|
845
|
+
"outputs": [],
|
|
846
|
+
"stateMutability": "nonpayable",
|
|
847
|
+
"type": "function"
|
|
848
|
+
},
|
|
849
|
+
{
|
|
850
|
+
"inputs": [],
|
|
851
|
+
"name": "localEidV2",
|
|
852
|
+
"outputs": [
|
|
853
|
+
{
|
|
854
|
+
"internalType": "uint32",
|
|
855
|
+
"name": "",
|
|
856
|
+
"type": "uint32"
|
|
857
|
+
}
|
|
858
|
+
],
|
|
859
|
+
"stateMutability": "view",
|
|
860
|
+
"type": "function"
|
|
861
|
+
},
|
|
862
|
+
{
|
|
863
|
+
"inputs": [
|
|
864
|
+
{
|
|
865
|
+
"components": [
|
|
866
|
+
{
|
|
867
|
+
"internalType": "uint32",
|
|
868
|
+
"name": "srcEid",
|
|
869
|
+
"type": "uint32"
|
|
870
|
+
},
|
|
871
|
+
{
|
|
872
|
+
"internalType": "bytes32",
|
|
873
|
+
"name": "sender",
|
|
874
|
+
"type": "bytes32"
|
|
875
|
+
},
|
|
876
|
+
{
|
|
877
|
+
"internalType": "uint64",
|
|
878
|
+
"name": "nonce",
|
|
879
|
+
"type": "uint64"
|
|
880
|
+
}
|
|
881
|
+
],
|
|
882
|
+
"internalType": "struct Origin",
|
|
883
|
+
"name": "_origin",
|
|
884
|
+
"type": "tuple"
|
|
885
|
+
},
|
|
886
|
+
{
|
|
887
|
+
"internalType": "uint32",
|
|
888
|
+
"name": "_dstEid",
|
|
889
|
+
"type": "uint32"
|
|
890
|
+
},
|
|
891
|
+
{
|
|
892
|
+
"internalType": "address",
|
|
893
|
+
"name": "_oapp",
|
|
894
|
+
"type": "address"
|
|
895
|
+
},
|
|
896
|
+
{
|
|
897
|
+
"components": [
|
|
898
|
+
{
|
|
899
|
+
"internalType": "address",
|
|
900
|
+
"name": "receiver",
|
|
901
|
+
"type": "address"
|
|
902
|
+
},
|
|
903
|
+
{
|
|
904
|
+
"internalType": "uint256",
|
|
905
|
+
"name": "amount",
|
|
906
|
+
"type": "uint256"
|
|
907
|
+
}
|
|
908
|
+
],
|
|
909
|
+
"internalType": "struct IExecutor.NativeDropParams[]",
|
|
910
|
+
"name": "_nativeDropParams",
|
|
911
|
+
"type": "tuple[]"
|
|
912
|
+
},
|
|
913
|
+
{
|
|
914
|
+
"internalType": "uint256",
|
|
915
|
+
"name": "_nativeDropGasLimit",
|
|
916
|
+
"type": "uint256"
|
|
917
|
+
}
|
|
918
|
+
],
|
|
919
|
+
"name": "nativeDrop",
|
|
920
|
+
"outputs": [],
|
|
921
|
+
"stateMutability": "payable",
|
|
922
|
+
"type": "function"
|
|
923
|
+
},
|
|
924
|
+
{
|
|
925
|
+
"inputs": [
|
|
926
|
+
{
|
|
927
|
+
"components": [
|
|
928
|
+
{
|
|
929
|
+
"internalType": "uint32",
|
|
930
|
+
"name": "srcEid",
|
|
931
|
+
"type": "uint32"
|
|
932
|
+
},
|
|
933
|
+
{
|
|
934
|
+
"internalType": "bytes32",
|
|
935
|
+
"name": "sender",
|
|
936
|
+
"type": "bytes32"
|
|
937
|
+
},
|
|
938
|
+
{
|
|
939
|
+
"internalType": "uint64",
|
|
940
|
+
"name": "nonce",
|
|
941
|
+
"type": "uint64"
|
|
942
|
+
}
|
|
943
|
+
],
|
|
944
|
+
"internalType": "struct Origin",
|
|
945
|
+
"name": "_origin",
|
|
946
|
+
"type": "tuple"
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
"components": [
|
|
950
|
+
{
|
|
951
|
+
"internalType": "address",
|
|
952
|
+
"name": "receiver",
|
|
953
|
+
"type": "address"
|
|
954
|
+
},
|
|
955
|
+
{
|
|
956
|
+
"internalType": "uint256",
|
|
957
|
+
"name": "amount",
|
|
958
|
+
"type": "uint256"
|
|
959
|
+
}
|
|
960
|
+
],
|
|
961
|
+
"internalType": "struct IExecutor.NativeDropParams[]",
|
|
962
|
+
"name": "_nativeDropParams",
|
|
963
|
+
"type": "tuple[]"
|
|
964
|
+
},
|
|
965
|
+
{
|
|
966
|
+
"internalType": "uint256",
|
|
967
|
+
"name": "_nativeDropGasLimit",
|
|
968
|
+
"type": "uint256"
|
|
969
|
+
},
|
|
970
|
+
{
|
|
971
|
+
"internalType": "bytes",
|
|
972
|
+
"name": "_packet",
|
|
973
|
+
"type": "bytes"
|
|
974
|
+
},
|
|
975
|
+
{
|
|
976
|
+
"internalType": "uint256",
|
|
977
|
+
"name": "_gasLimit",
|
|
978
|
+
"type": "uint256"
|
|
979
|
+
}
|
|
980
|
+
],
|
|
981
|
+
"name": "nativeDropAndExecute301",
|
|
982
|
+
"outputs": [],
|
|
983
|
+
"stateMutability": "payable",
|
|
984
|
+
"type": "function"
|
|
985
|
+
},
|
|
986
|
+
{
|
|
987
|
+
"inputs": [
|
|
988
|
+
{
|
|
989
|
+
"components": [
|
|
990
|
+
{
|
|
991
|
+
"internalType": "address",
|
|
992
|
+
"name": "receiver",
|
|
993
|
+
"type": "address"
|
|
994
|
+
},
|
|
995
|
+
{
|
|
996
|
+
"internalType": "uint256",
|
|
997
|
+
"name": "amount",
|
|
998
|
+
"type": "uint256"
|
|
999
|
+
}
|
|
1000
|
+
],
|
|
1001
|
+
"internalType": "struct IExecutor.NativeDropParams[]",
|
|
1002
|
+
"name": "_nativeDropParams",
|
|
1003
|
+
"type": "tuple[]"
|
|
1004
|
+
},
|
|
1005
|
+
{
|
|
1006
|
+
"internalType": "uint256",
|
|
1007
|
+
"name": "_nativeDropGasLimit",
|
|
1008
|
+
"type": "uint256"
|
|
1009
|
+
},
|
|
1010
|
+
{
|
|
1011
|
+
"components": [
|
|
1012
|
+
{
|
|
1013
|
+
"internalType": "address",
|
|
1014
|
+
"name": "receiver",
|
|
1015
|
+
"type": "address"
|
|
1016
|
+
},
|
|
1017
|
+
{
|
|
1018
|
+
"components": [
|
|
1019
|
+
{
|
|
1020
|
+
"internalType": "uint32",
|
|
1021
|
+
"name": "srcEid",
|
|
1022
|
+
"type": "uint32"
|
|
1023
|
+
},
|
|
1024
|
+
{
|
|
1025
|
+
"internalType": "bytes32",
|
|
1026
|
+
"name": "sender",
|
|
1027
|
+
"type": "bytes32"
|
|
1028
|
+
},
|
|
1029
|
+
{
|
|
1030
|
+
"internalType": "uint64",
|
|
1031
|
+
"name": "nonce",
|
|
1032
|
+
"type": "uint64"
|
|
1033
|
+
}
|
|
1034
|
+
],
|
|
1035
|
+
"internalType": "struct Origin",
|
|
1036
|
+
"name": "origin",
|
|
1037
|
+
"type": "tuple"
|
|
1038
|
+
},
|
|
1039
|
+
{
|
|
1040
|
+
"internalType": "bytes32",
|
|
1041
|
+
"name": "guid",
|
|
1042
|
+
"type": "bytes32"
|
|
1043
|
+
},
|
|
1044
|
+
{
|
|
1045
|
+
"internalType": "bytes",
|
|
1046
|
+
"name": "message",
|
|
1047
|
+
"type": "bytes"
|
|
1048
|
+
},
|
|
1049
|
+
{
|
|
1050
|
+
"internalType": "bytes",
|
|
1051
|
+
"name": "extraData",
|
|
1052
|
+
"type": "bytes"
|
|
1053
|
+
},
|
|
1054
|
+
{
|
|
1055
|
+
"internalType": "uint256",
|
|
1056
|
+
"name": "gasLimit",
|
|
1057
|
+
"type": "uint256"
|
|
1058
|
+
}
|
|
1059
|
+
],
|
|
1060
|
+
"internalType": "struct IExecutor.ExecutionParams",
|
|
1061
|
+
"name": "_executionParams",
|
|
1062
|
+
"type": "tuple"
|
|
1063
|
+
}
|
|
1064
|
+
],
|
|
1065
|
+
"name": "nativeDropAndExecute302",
|
|
1066
|
+
"outputs": [],
|
|
1067
|
+
"stateMutability": "payable",
|
|
1068
|
+
"type": "function"
|
|
1069
|
+
},
|
|
1070
|
+
{
|
|
1071
|
+
"inputs": [
|
|
1072
|
+
{
|
|
1073
|
+
"internalType": "address",
|
|
1074
|
+
"name": "_receiveUln301",
|
|
1075
|
+
"type": "address"
|
|
1076
|
+
}
|
|
1077
|
+
],
|
|
1078
|
+
"name": "onUpgrade",
|
|
1079
|
+
"outputs": [],
|
|
1080
|
+
"stateMutability": "nonpayable",
|
|
1081
|
+
"type": "function"
|
|
1082
|
+
},
|
|
1083
|
+
{
|
|
1084
|
+
"inputs": [],
|
|
1085
|
+
"name": "paused",
|
|
1086
|
+
"outputs": [
|
|
1087
|
+
{
|
|
1088
|
+
"internalType": "bool",
|
|
1089
|
+
"name": "",
|
|
1090
|
+
"type": "bool"
|
|
1091
|
+
}
|
|
1092
|
+
],
|
|
1093
|
+
"stateMutability": "view",
|
|
1094
|
+
"type": "function"
|
|
1095
|
+
},
|
|
1096
|
+
{
|
|
1097
|
+
"inputs": [],
|
|
1098
|
+
"name": "priceFeed",
|
|
1099
|
+
"outputs": [
|
|
1100
|
+
{
|
|
1101
|
+
"internalType": "address",
|
|
1102
|
+
"name": "",
|
|
1103
|
+
"type": "address"
|
|
1104
|
+
}
|
|
1105
|
+
],
|
|
1106
|
+
"stateMutability": "view",
|
|
1107
|
+
"type": "function"
|
|
1108
|
+
},
|
|
1109
|
+
{
|
|
1110
|
+
"inputs": [
|
|
1111
|
+
{
|
|
1112
|
+
"internalType": "address",
|
|
1113
|
+
"name": "sender",
|
|
1114
|
+
"type": "address"
|
|
1115
|
+
}
|
|
1116
|
+
],
|
|
1117
|
+
"name": "priceFloorWhitelist",
|
|
1118
|
+
"outputs": [
|
|
1119
|
+
{
|
|
1120
|
+
"internalType": "bool",
|
|
1121
|
+
"name": "whitelisted",
|
|
1122
|
+
"type": "bool"
|
|
1123
|
+
}
|
|
1124
|
+
],
|
|
1125
|
+
"stateMutability": "view",
|
|
1126
|
+
"type": "function"
|
|
1127
|
+
},
|
|
1128
|
+
{
|
|
1129
|
+
"inputs": [],
|
|
1130
|
+
"name": "receiveUln301",
|
|
1131
|
+
"outputs": [
|
|
1132
|
+
{
|
|
1133
|
+
"internalType": "address",
|
|
1134
|
+
"name": "",
|
|
1135
|
+
"type": "address"
|
|
1136
|
+
}
|
|
1137
|
+
],
|
|
1138
|
+
"stateMutability": "view",
|
|
1139
|
+
"type": "function"
|
|
1140
|
+
},
|
|
1141
|
+
{
|
|
1142
|
+
"inputs": [
|
|
1143
|
+
{
|
|
1144
|
+
"internalType": "bytes32",
|
|
1145
|
+
"name": "",
|
|
1146
|
+
"type": "bytes32"
|
|
1147
|
+
},
|
|
1148
|
+
{
|
|
1149
|
+
"internalType": "address",
|
|
1150
|
+
"name": "",
|
|
1151
|
+
"type": "address"
|
|
1152
|
+
}
|
|
1153
|
+
],
|
|
1154
|
+
"name": "renounceRole",
|
|
1155
|
+
"outputs": [],
|
|
1156
|
+
"stateMutability": "pure",
|
|
1157
|
+
"type": "function"
|
|
1158
|
+
},
|
|
1159
|
+
{
|
|
1160
|
+
"inputs": [
|
|
1161
|
+
{
|
|
1162
|
+
"internalType": "bytes32",
|
|
1163
|
+
"name": "role",
|
|
1164
|
+
"type": "bytes32"
|
|
1165
|
+
},
|
|
1166
|
+
{
|
|
1167
|
+
"internalType": "address",
|
|
1168
|
+
"name": "account",
|
|
1169
|
+
"type": "address"
|
|
1170
|
+
}
|
|
1171
|
+
],
|
|
1172
|
+
"name": "revokeRole",
|
|
1173
|
+
"outputs": [],
|
|
1174
|
+
"stateMutability": "nonpayable",
|
|
1175
|
+
"type": "function"
|
|
1176
|
+
},
|
|
1177
|
+
{
|
|
1178
|
+
"inputs": [
|
|
1179
|
+
{
|
|
1180
|
+
"internalType": "uint16",
|
|
1181
|
+
"name": "_multiplierBps",
|
|
1182
|
+
"type": "uint16"
|
|
1183
|
+
}
|
|
1184
|
+
],
|
|
1185
|
+
"name": "setDefaultMultiplierBps",
|
|
1186
|
+
"outputs": [],
|
|
1187
|
+
"stateMutability": "nonpayable",
|
|
1188
|
+
"type": "function"
|
|
1189
|
+
},
|
|
1190
|
+
{
|
|
1191
|
+
"inputs": [
|
|
1192
|
+
{
|
|
1193
|
+
"components": [
|
|
1194
|
+
{
|
|
1195
|
+
"internalType": "uint32",
|
|
1196
|
+
"name": "dstEid",
|
|
1197
|
+
"type": "uint32"
|
|
1198
|
+
},
|
|
1199
|
+
{
|
|
1200
|
+
"internalType": "uint64",
|
|
1201
|
+
"name": "lzReceiveBaseGas",
|
|
1202
|
+
"type": "uint64"
|
|
1203
|
+
},
|
|
1204
|
+
{
|
|
1205
|
+
"internalType": "uint64",
|
|
1206
|
+
"name": "lzComposeBaseGas",
|
|
1207
|
+
"type": "uint64"
|
|
1208
|
+
},
|
|
1209
|
+
{
|
|
1210
|
+
"internalType": "uint16",
|
|
1211
|
+
"name": "multiplierBps",
|
|
1212
|
+
"type": "uint16"
|
|
1213
|
+
},
|
|
1214
|
+
{
|
|
1215
|
+
"internalType": "uint128",
|
|
1216
|
+
"name": "floorMarginUSD",
|
|
1217
|
+
"type": "uint128"
|
|
1218
|
+
},
|
|
1219
|
+
{
|
|
1220
|
+
"internalType": "uint128",
|
|
1221
|
+
"name": "nativeCap",
|
|
1222
|
+
"type": "uint128"
|
|
1223
|
+
}
|
|
1224
|
+
],
|
|
1225
|
+
"internalType": "struct IExecutor.DstConfigParam[]",
|
|
1226
|
+
"name": "_params",
|
|
1227
|
+
"type": "tuple[]"
|
|
1228
|
+
}
|
|
1229
|
+
],
|
|
1230
|
+
"name": "setDstConfig",
|
|
1231
|
+
"outputs": [],
|
|
1232
|
+
"stateMutability": "nonpayable",
|
|
1233
|
+
"type": "function"
|
|
1234
|
+
},
|
|
1235
|
+
{
|
|
1236
|
+
"inputs": [
|
|
1237
|
+
{
|
|
1238
|
+
"internalType": "bool",
|
|
1239
|
+
"name": "_paused",
|
|
1240
|
+
"type": "bool"
|
|
1241
|
+
}
|
|
1242
|
+
],
|
|
1243
|
+
"name": "setPaused",
|
|
1244
|
+
"outputs": [],
|
|
1245
|
+
"stateMutability": "nonpayable",
|
|
1246
|
+
"type": "function"
|
|
1247
|
+
},
|
|
1248
|
+
{
|
|
1249
|
+
"inputs": [
|
|
1250
|
+
{
|
|
1251
|
+
"internalType": "address",
|
|
1252
|
+
"name": "_priceFeed",
|
|
1253
|
+
"type": "address"
|
|
1254
|
+
}
|
|
1255
|
+
],
|
|
1256
|
+
"name": "setPriceFeed",
|
|
1257
|
+
"outputs": [],
|
|
1258
|
+
"stateMutability": "nonpayable",
|
|
1259
|
+
"type": "function"
|
|
1260
|
+
},
|
|
1261
|
+
{
|
|
1262
|
+
"inputs": [
|
|
1263
|
+
{
|
|
1264
|
+
"components": [
|
|
1265
|
+
{
|
|
1266
|
+
"internalType": "address",
|
|
1267
|
+
"name": "sender",
|
|
1268
|
+
"type": "address"
|
|
1269
|
+
},
|
|
1270
|
+
{
|
|
1271
|
+
"internalType": "bool",
|
|
1272
|
+
"name": "whitelisted",
|
|
1273
|
+
"type": "bool"
|
|
1274
|
+
}
|
|
1275
|
+
],
|
|
1276
|
+
"internalType": "struct Executor.SetPriceFloorWhitelistParam[]",
|
|
1277
|
+
"name": "_params",
|
|
1278
|
+
"type": "tuple[]"
|
|
1279
|
+
}
|
|
1280
|
+
],
|
|
1281
|
+
"name": "setPriceFloorWhitelist",
|
|
1282
|
+
"outputs": [],
|
|
1283
|
+
"stateMutability": "nonpayable",
|
|
1284
|
+
"type": "function"
|
|
1285
|
+
},
|
|
1286
|
+
{
|
|
1287
|
+
"inputs": [
|
|
1288
|
+
{
|
|
1289
|
+
"internalType": "address",
|
|
1290
|
+
"name": "_receiveUln301",
|
|
1291
|
+
"type": "address"
|
|
1292
|
+
}
|
|
1293
|
+
],
|
|
1294
|
+
"name": "setReceiveUln301",
|
|
1295
|
+
"outputs": [],
|
|
1296
|
+
"stateMutability": "nonpayable",
|
|
1297
|
+
"type": "function"
|
|
1298
|
+
},
|
|
1299
|
+
{
|
|
1300
|
+
"inputs": [
|
|
1301
|
+
{
|
|
1302
|
+
"internalType": "uint32",
|
|
1303
|
+
"name": "_eid",
|
|
1304
|
+
"type": "uint32"
|
|
1305
|
+
},
|
|
1306
|
+
{
|
|
1307
|
+
"internalType": "uint8[]",
|
|
1308
|
+
"name": "_optionTypes",
|
|
1309
|
+
"type": "uint8[]"
|
|
1310
|
+
}
|
|
1311
|
+
],
|
|
1312
|
+
"name": "setSupportedOptionTypes",
|
|
1313
|
+
"outputs": [],
|
|
1314
|
+
"stateMutability": "nonpayable",
|
|
1315
|
+
"type": "function"
|
|
1316
|
+
},
|
|
1317
|
+
{
|
|
1318
|
+
"inputs": [
|
|
1319
|
+
{
|
|
1320
|
+
"internalType": "address",
|
|
1321
|
+
"name": "_workerFeeLib",
|
|
1322
|
+
"type": "address"
|
|
1323
|
+
}
|
|
1324
|
+
],
|
|
1325
|
+
"name": "setWorkerFeeLib",
|
|
1326
|
+
"outputs": [],
|
|
1327
|
+
"stateMutability": "nonpayable",
|
|
1328
|
+
"type": "function"
|
|
1329
|
+
},
|
|
1330
|
+
{
|
|
1331
|
+
"inputs": [
|
|
1332
|
+
{
|
|
1333
|
+
"internalType": "bytes4",
|
|
1334
|
+
"name": "interfaceId",
|
|
1335
|
+
"type": "bytes4"
|
|
1336
|
+
}
|
|
1337
|
+
],
|
|
1338
|
+
"name": "supportsInterface",
|
|
1339
|
+
"outputs": [
|
|
1340
|
+
{
|
|
1341
|
+
"internalType": "bool",
|
|
1342
|
+
"name": "",
|
|
1343
|
+
"type": "bool"
|
|
1344
|
+
}
|
|
1345
|
+
],
|
|
1346
|
+
"stateMutability": "view",
|
|
1347
|
+
"type": "function"
|
|
1348
|
+
},
|
|
1349
|
+
{
|
|
1350
|
+
"inputs": [
|
|
1351
|
+
{
|
|
1352
|
+
"internalType": "address",
|
|
1353
|
+
"name": "_lib",
|
|
1354
|
+
"type": "address"
|
|
1355
|
+
},
|
|
1356
|
+
{
|
|
1357
|
+
"internalType": "address",
|
|
1358
|
+
"name": "_to",
|
|
1359
|
+
"type": "address"
|
|
1360
|
+
},
|
|
1361
|
+
{
|
|
1362
|
+
"internalType": "uint256",
|
|
1363
|
+
"name": "_amount",
|
|
1364
|
+
"type": "uint256"
|
|
1365
|
+
}
|
|
1366
|
+
],
|
|
1367
|
+
"name": "withdrawFee",
|
|
1368
|
+
"outputs": [],
|
|
1369
|
+
"stateMutability": "nonpayable",
|
|
1370
|
+
"type": "function"
|
|
1371
|
+
},
|
|
1372
|
+
{
|
|
1373
|
+
"inputs": [
|
|
1374
|
+
{
|
|
1375
|
+
"internalType": "address",
|
|
1376
|
+
"name": "_token",
|
|
1377
|
+
"type": "address"
|
|
1378
|
+
},
|
|
1379
|
+
{
|
|
1380
|
+
"internalType": "address",
|
|
1381
|
+
"name": "_to",
|
|
1382
|
+
"type": "address"
|
|
1383
|
+
},
|
|
1384
|
+
{
|
|
1385
|
+
"internalType": "uint256",
|
|
1386
|
+
"name": "_amount",
|
|
1387
|
+
"type": "uint256"
|
|
1388
|
+
}
|
|
1389
|
+
],
|
|
1390
|
+
"name": "withdrawToken",
|
|
1391
|
+
"outputs": [],
|
|
1392
|
+
"stateMutability": "nonpayable",
|
|
1393
|
+
"type": "function"
|
|
1394
|
+
},
|
|
1395
|
+
{
|
|
1396
|
+
"inputs": [],
|
|
1397
|
+
"name": "workerFeeLib",
|
|
1398
|
+
"outputs": [
|
|
1399
|
+
{
|
|
1400
|
+
"internalType": "address",
|
|
1401
|
+
"name": "",
|
|
1402
|
+
"type": "address"
|
|
1403
|
+
}
|
|
1404
|
+
],
|
|
1405
|
+
"stateMutability": "view",
|
|
1406
|
+
"type": "function"
|
|
1407
|
+
}
|
|
1408
|
+
],
|
|
1409
|
+
"bytecode": "0x60806040523480156200001157600080fd5b50d380156200001f57600080fd5b50d280156200002d57600080fd5b506153e3806200003e6000396000f3fe6080604052600436106102c45760003560e01c8063709eb66411610179578063c2803b2c116100d6578063cd88b9031161008a578063d547741f11610064578063d547741f14610c8d578063e395eb5c14610cc7578063fa34c84e14610d2c57600080fd5b8063cd88b90314610bd4578063cfc3257014610c0e578063d2ae210414610c2157600080fd5b8063c416aa51116100bb578063c416aa5114610b19578063c7b2370b14610b60578063c8f8dcd114610b9a57600080fd5b8063c2803b2c14610a97578063c358de0a14610adf57600080fd5b80638624ba071161012d5780639e944965116101125780639e94496514610937578063a217fddf14610a2e578063c015bb7d14610a5d57600080fd5b80638624ba07146108b757806391d14854146108ca57600080fd5b8063724e78da1161015e578063724e78da14610823578063741bef1a1461085d5780637cd44734146108a457600080fd5b8063709eb664146107af578063717e8a42146107e957600080fd5b80632f2ff15d116102275780633d85ac33116101db578063475b6d9e116101c0578063475b6d9e146106fd5780635c975abb146107105780635e280f111461074257600080fd5b80633d85ac331461068957806344bb7e28146106c357600080fd5b806336568abe1161020c57806336568abe146105f15780633927c0751461062b5780633bd0db9f1461063e57600080fd5b80632f2ff15d1461057d5780633146646a146105b757600080fd5b80631095b6d71161027e578063248a9ca311610263578063248a9ca3146104a457806326e67a37146104fc5780632de113761461054357600080fd5b80631095b6d71461043057806316c38b3c1461046a57600080fd5b806301e33667116102af57806301e336671461037257806301ffc9a7146103ac57806302e723d9146103f657600080fd5b80629fc681146102c9578062bf2e8014610305575b600080fd5b3480156102d557600080fd5b50d380156102e257600080fd5b50d280156102ef57600080fd5b506103036102fe366004614152565b610d66565b005b34801561031157600080fd5b50d3801561031e57600080fd5b50d2801561032b57600080fd5b5060c95461035a907c0100000000000000000000000000000000000000000000000000000000900461ffff1681565b60405161ffff90911681526020015b60405180910390f35b34801561037e57600080fd5b50d3801561038b57600080fd5b50d2801561039857600080fd5b506103036103a73660046141f7565b611105565b3480156103b857600080fd5b50d380156103c557600080fd5b50d280156103d257600080fd5b506103e66103e1366004614233565b611140565b6040519015158152602001610369565b34801561040257600080fd5b50d3801561040f57600080fd5b50d2801561041c57600080fd5b5061030361042b366004614275565b6111d9565b34801561043c57600080fd5b50d3801561044957600080fd5b50d2801561045657600080fd5b506103036104653660046141f7565b61127f565b34801561047657600080fd5b50d3801561048357600080fd5b50d2801561049057600080fd5b5061030361049f36600461429e565b61140e565b3480156104b057600080fd5b50d380156104bd57600080fd5b50d280156104ca57600080fd5b506104ee6104d93660046142bb565b60009081526065602052604090206001015490565b604051908152602001610369565b34801561050857600080fd5b50d3801561051557600080fd5b50d2801561052257600080fd5b506105366105313660046142e6565b611433565b6040516103699190614303565b34801561054f57600080fd5b50d3801561055c57600080fd5b50d2801561056957600080fd5b506103e6610578366004614275565b6114ba565b34801561058957600080fd5b50d3801561059657600080fd5b50d280156105a357600080fd5b506103036105b236600461434a565b61159e565b3480156105c357600080fd5b50d380156105d057600080fd5b50d280156105dd57600080fd5b506103036105ec3660046143bf565b6115c8565b3480156105fd57600080fd5b50d3801561060a57600080fd5b50d2801561061757600080fd5b5061030361062636600461434a565b611691565b610303610639366004614468565b6116c3565b34801561064a57600080fd5b50d3801561065757600080fd5b50d2801561066457600080fd5b506103e6610673366004614275565b6101306020526000908152604090205460ff1681565b34801561069557600080fd5b50d380156106a257600080fd5b50d280156106af57600080fd5b506103036106be366004614546565b6117ad565b3480156106cf57600080fd5b50d380156106dc57600080fd5b50d280156106e957600080fd5b506103036106f836600461464e565b61198e565b61030361070b366004614690565b611ad1565b34801561071c57600080fd5b50d3801561072957600080fd5b50d2801561073657600080fd5b5060975460ff166103e6565b34801561074e57600080fd5b50d3801561075b57600080fd5b50d2801561076857600080fd5b5061012e5461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610369565b3480156107bb57600080fd5b50d380156107c857600080fd5b50d280156107d557600080fd5b506104ee6107e4366004614711565b611b25565b3480156107f557600080fd5b50d3801561080257600080fd5b50d2801561080f57600080fd5b506104ee61081e366004614711565b611c60565b34801561082f57600080fd5b50d3801561083c57600080fd5b50d2801561084957600080fd5b50610303610858366004614275565b611dc8565b34801561086957600080fd5b50d3801561087657600080fd5b50d2801561088357600080fd5b5060ca5461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b6103036108b2366004614782565b611e65565b6103036108c5366004614848565b61201a565b3480156108d657600080fd5b50d380156108e357600080fd5b50d280156108f057600080fd5b506103e66108ff36600461434a565b600091825260656020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561094357600080fd5b50d3801561095057600080fd5b50d2801561095d57600080fd5b506109e161096c3660046142e6565b61012d602052600090815260409020805460019091015467ffffffffffffffff8083169261ffff68010000000000000000820416926fffffffffffffffffffffffffffffffff6a0100000000000000000000909204821692918116917001000000000000000000000000000000009091041685565b6040805167ffffffffffffffff968716815261ffff90951660208601526fffffffffffffffffffffffffffffffff938416908501529116606083015291909116608082015260a001610369565b348015610a3a57600080fd5b50d38015610a4757600080fd5b50d28015610a5457600080fd5b506104ee600081565b348015610a6957600080fd5b50d38015610a7657600080fd5b50d28015610a8357600080fd5b506104ee610a923660046148bb565b612230565b348015610aa357600080fd5b50d38015610ab057600080fd5b50d28015610abd57600080fd5b5061012f5461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610aeb57600080fd5b50d38015610af857600080fd5b50d28015610b0557600080fd5b50610303610b1436600461490e565b6123a8565b348015610b2557600080fd5b50d38015610b3257600080fd5b50d28015610b3f57600080fd5b5060c95461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610b6c57600080fd5b50d38015610b7957600080fd5b50d28015610b8657600080fd5b50610303610b95366004614275565b612455565b348015610ba657600080fd5b50d38015610bb357600080fd5b50d28015610bc057600080fd5b506104ee610bcf3660046148bb565b6124f2565b348015610be057600080fd5b50d38015610bed57600080fd5b50d28015610bfa57600080fd5b50610303610c09366004614929565b61263d565b610303610c1c3660046149b1565b612687565b348015610c2d57600080fd5b50d38015610c3a57600080fd5b50d28015610c4757600080fd5b5060c954610c749074010000000000000000000000000000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff9091168152602001610369565b348015610c9957600080fd5b50d38015610ca657600080fd5b50d28015610cb357600080fd5b50610303610cc236600461434a565b612843565b348015610cd357600080fd5b50d38015610ce057600080fd5b50d28015610ced57600080fd5b5061012e54610d179074010000000000000000000000000000000000000000900463ffffffff1681565b60405163ffffffff9091168152602001610369565b348015610d3857600080fd5b50d38015610d4557600080fd5b50d28015610d5257600080fd5b50610303610d61366004614275565b612868565b6000610d907fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116610de95773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610e0b565b3373ffffffffffffffffffffffffffffffffffffffff821614610e0b57600080fd5b600054610100900460ff1615808015610e2b5750600054600160ff909116105b80610e455750303b158015610e45575060005460ff166001145b610ed6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610f3457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610f3c612956565b610f4b8686612ee087876129f7565b61012e80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8a16908117909155604080517f416ecebf000000000000000000000000000000000000000000000000000000008152905163416ecebf916004808201926020929091908290030181865afa158015610fe3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100791906149e6565b61012e80547fffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000063ffffffff939093169290920291909117905561012f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff891617905580156110fb57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561112f81612ab3565b61113a848484612ac0565b50505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b0000000000000000000000000000000000000000000000000000000014806111d357507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561120381612ab3565b61012f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f2a2a4b95cee71747feecad6bcdaa0016f908444a79c1c31c1987b262ba4e6dbe906020015b60405180910390a15050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756112a981612ab3565b73ffffffffffffffffffffffffffffffffffffffff841660009081527fe3a3b2721d010eec8988605a93cd7c15d969808c0e2b42f6155dc2b4fa13c081602052604090205460ff16611327576040517f5ee08b9700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517ffd9be52200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301526024820184905285169063fd9be52290604401600060405180830381600087803b15801561139757600080fd5b505af11580156113ab573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8089168252871660208201529081018590527f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb9250606001905060405180910390a150505050565b600061141981612ab3565b811561142b57611427612af0565b5050565b611427612b75565b63ffffffff8116600090815260cb60209081526040918290208054835181840281018401909452808452606093928301828280156114ae57602002820191906000526020600020906000905b825461010083900a900460ff1681526020600192830181810494850194909303909202910180841161147f5790505b50505050509050919050565b73ffffffffffffffffffffffffffffffffffffffff811660009081527f0f6a9529577ef7bf1cbc8fccda1cc3c881f755c7e92e34c7c4deac1fa3c1c791602052604081205460ff161561150f57506000919050565b60c95474010000000000000000000000000000000000000000900467ffffffffffffffff161580611584575073ffffffffffffffffffffffffffffffffffffffff821660009081527f35c5067391a9036240763c1067bfa438a7b0131204a675a2fe562dd73782ce85602052604090205460ff165b1561159157506001919050565b506000919050565b919050565b6000828152606560205260409020600101546115b981612ab3565b6115c38383612bcc565b505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756115f281612ab3565b6115fa612c93565b61012f546040517fe65106f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063e65106f89061165590879087908790600401614a4c565b600060405180830381600087803b15801561166f57600080fd5b505af1158015611683573d6000803e3d6000fd5b5050505061113a600160fb55565b6040517fdec9f03100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756116ed81612ab3565b6116f5612c93565b611715886117038686612d0d565b61170d8787612d30565b8a8a8a612d49565b5061012f546040517fe65106f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063e65106f89061177190879087908790600401614a4c565b600060405180830381600087803b15801561178b57600080fd5b505af115801561179f573d6000803e3d6000fd5b505050506110fb600160fb55565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756117d781612ab3565b60005b825181101561195e5760008382815181106117f7576117f7614a70565b6020908102919091018101516040805160a080820183528385015167ffffffffffffffff908116835260608086015161ffff9081168589019081526080808901516fffffffffffffffffffffffffffffffff908116888a01908152968a01518116948801948552888a01518616918801918252985163ffffffff16600090815261012d909a5296909820945185549851945188166a0100000000000000000000027fffffffffffff00000000000000000000000000000000ffffffffffffffffffff9590921668010000000000000000027fffffffffffffffffffffffffffffffffffffffffffff0000000000000000000090991690841617979097179290921695909517825551600190910180549251909416700100000000000000000000000000000000027fffffffffffffffff000000000000000000000000000000000000000000000000909216921691909117179055508061195681614ace565b9150506117da565b507fb99f6de5e22c60c178b03bfacf2daeb4b6089f5b37e0fe2c48a5d5141191fc53826040516112739190614b06565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756119b881612ab3565b60005b8281101561113a57368484838181106119d6576119d6614a70565b90506040020190508060200160208101906119f1919061429e565b6101306000611a036020850185614275565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260400160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001692151592909217909155611a6490820182614275565b73ffffffffffffffffffffffffffffffffffffffff167ffafc7bfa3c73f8a408d873ba109b7145dc715107b809e460e7afe60d5402c6a2611aab604084016020850161429e565b604051901515815260200160405180910390a25080611ac981614ace565b9150506119bb565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611afb81612ab3565b611b03612c93565b611b11878787878787612d49565b50611b1c600160fb55565b50505050505050565b600084611b31816114ba565b611b67576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b6f612ec9565b6040805160a08101825260ca5473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8a166020830152888116928201929092526060810187905260c95461ffff7c0100000000000000000000000000000000000000000000000000000000820416608083015290911663434ee01682611bf28b8b612f36565b88886040518563ffffffff1660e01b8152600401611c139493929190614bad565b602060405180830381865afa158015611c30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c549190614c69565b98975050505050505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de611c8c81612ab3565b85611c96816114ba565b611ccc576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611cd4612ec9565b6040805160a08101825260ca5473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8b166020830152898116928201929092526060810188905260c95461ffff7c0100000000000000000000000000000000000000000000000000000000820416608083015290911663566ef76282611d578c8c612f36565b89896040518563ffffffff1660e01b8152600401611d789493929190614bad565b6020604051808303816000875af1158015611d97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dbb9190614c69565b9998505050505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611df281612ab3565b60ca80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527ff724a45d041687842411f2b977ef22ab8f43c8f1104f4592b42a00f9b34a643d90602001611273565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611e8f81612ab3565b611e97612c93565b61012e546040517f91d20fa100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909116906391d20fa19084903490611f00908f908f908f908f908f908f908f908f90600401614c82565b6000604051808303818589803b158015611f1957600080fd5b5088f19450505050508015611f2c575060015b612004573d808015611f5a576040519150601f19603f3d011682016040523d82523d6000602084013e611f5f565b606091505b5061012e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663697fe6b68c8c8c8c88348e8e8e8e8c6040518c63ffffffff1660e01b8152600401611fd09b9a99989796959493929190614d5c565b600060405180830381600087803b158015611fea57600080fd5b505af1158015611ffe573d6000803e3d6000fd5b50505050505b61200e600160fb55565b50505050505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561204481612ab3565b61204c612c93565b61012e5460009061208c90602085019074010000000000000000000000000000000000000000900463ffffffff166120848287614275565b898989612d49565b9050600061209a8234614def565b61012e5490915073ffffffffffffffffffffffffffffffffffffffff16630c0c389e60e086013583602088016120d0818a614275565b60808a01356120e260a08c018c614e02565b6120ef60c08e018e614e02565b6040518a63ffffffff1660e01b81526004016121119796959493929190614ea3565b6000604051808303818589803b15801561212a57600080fd5b5088f1945050505050801561213d575060015b61221d573d80801561216b576040519150601f19603f3d011682016040523d82523d6000602084013e612170565b606091505b5061012e5473ffffffffffffffffffffffffffffffffffffffff16636bf73fa36020870161219e8189614275565b608089013560e08a0135876121b660a08d018d614e02565b6121c360c08f018f614e02565b8b6040518b63ffffffff1660e01b81526004016121e99a99989796959493929190614f07565b600060405180830381600087803b15801561220357600080fd5b505af1158015612217573d6000803e3d6000fd5b50505050505b5050612229600160fb55565b5050505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de61225c81612ab3565b84612266816114ba565b61229c576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6122a4612ec9565b6040805160608101825260ca5473ffffffffffffffffffffffffffffffffffffffff9081168252888116602083015260c9547c0100000000000000000000000000000000000000000000000000000000810461ffff169383019390935261012e549192169063650037849083906123399074010000000000000000000000000000000000000000900463ffffffff168b612f36565b89896040518563ffffffff1660e01b815260040161235a9493929190614f93565b6020604051808303816000875af1158015612379573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061239d9190614c69565b979650505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756123d281612ab3565b60c980547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff8516908102919091179091556040519081527f7af0ac740036ffb1c97b03697859d729e80a44ae5030543d64971c313565ab4d90602001611273565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561247f81612ab3565b60c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f1399be28223800f8669b3ba5f8721d9fc16fc4e8d0bbf98378791c8c5a3015e090602001611273565b6000836124fe816114ba565b612534576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61253c612ec9565b6040805160608101825260ca5473ffffffffffffffffffffffffffffffffffffffff9081168252878116602083015260c9547c0100000000000000000000000000000000000000000000000000000000810461ffff169383019390935261012e549192169063337c7a9e9083906125d19074010000000000000000000000000000000000000000900463ffffffff168a612f36565b88886040518563ffffffff1660e01b81526004016125f29493929190614f93565b602060405180830381865afa15801561260f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126339190614c69565b9695505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561266781612ab3565b63ffffffff8416600090815260cb60205260409020612229908484613f14565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756126b181612ab3565b6126b9612c93565b61012e5473ffffffffffffffffffffffffffffffffffffffff16630c0c389e60e084013534602086016126ec8188614275565b60808801356126fe60a08a018a614e02565b61270b60c08c018c614e02565b6040518a63ffffffff1660e01b815260040161272d9796959493929190614ea3565b6000604051808303818589803b15801561274657600080fd5b5088f19450505050508015612759575060015b612839573d808015612787576040519150601f19603f3d011682016040523d82523d6000602084013e61278c565b606091505b5061012e5473ffffffffffffffffffffffffffffffffffffffff16636bf73fa3602085016127ba8187614275565b608087013560e0880135346127d260a08b018b614e02565b6127df60c08d018d614e02565b8b6040518b63ffffffff1660e01b81526004016128059a99989796959493929190614f07565b600060405180830381600087803b15801561281f57600080fd5b505af1158015612833573d6000803e3d6000fd5b50505050505b611427600160fb55565b60008281526065602052604090206001015461285e81612ab3565b6115c3838361302f565b60006128927fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166128eb5773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035561290d565b3373ffffffffffffffffffffffffffffffffffffffff82161461290d57600080fd5b5061012f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600054610100900460ff166129ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b6129f56130f5565b565b600054610100900460ff16612a8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b612a9661318c565b612a9e61318c565b612aa6613223565b61222985858585856132e4565b612abd81336134d9565b50565b73ffffffffffffffffffffffffffffffffffffffff8316612ae5576115c38282613593565b6115c3838383613699565b612af8612ec9565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612b4b3390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b612b7d613707565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612b4b565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca82148015612c2b5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16155b15612c895760c98054601490612c629074010000000000000000000000000000000000000000900467ffffffffffffffff16615044565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b6114278282613773565b600260fb5403612cff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610ecd565b600260fb55565b600160fb55565b6000612d1d6031602d848661506b565b612d2691615095565b60e01c9392505050565b6000612d42612d3f8484613867565b90565b9392505050565b6000808367ffffffffffffffff811115612d6557612d65614015565b604051908082528060200260200182016040528015612d8e578160200160208202803683370190505b50905060005b84811015612e7c576000868683818110612db057612db0614a70565b905060400201803603810190612dc691906150dd565b90506000816000015173ffffffffffffffffffffffffffffffffffffffff1682602001518790604051600060405180830381858888f193505050503d8060008114612e2d576040519150601f19603f3d011682016040523d82523d6000602084013e612e32565b606091505b5050905080848481518110612e4957612e49614a70565b911515602092830291909101820152820151612e659086615134565b945050508080612e7490614ace565b915050612d94565b507f1f48172553121d8bf273ce457a5a3dd180d464e0add3e0143045b7fa039c3468888888888886604051612eb696959493929190615184565b60405180910390a1509695505050505050565b60975460ff16156129f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610ecd565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525063ffffffff8216600090815261012d60209081526040808320815160a081018352815467ffffffffffffffff808216835261ffff68010000000000000000830416838701526fffffffffffffffffffffffffffffffff6a010000000000000000000090920482168386015260019093015490811660608301527001000000000000000000000000000000009004909116608082015273ffffffffffffffffffffffffffffffffffffffff851684526101309092529091205460ff16156111d3576000604082015292915050565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca8214801561308d5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff165b156130eb5760c980546014906130c49074010000000000000000000000000000000000000000900467ffffffffffffffff16615216565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b6114278282613880565b600054610100900460ff16612d06576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b600054610100900460ff166129f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b600054610100900460ff166132ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b600054610100900460ff1661337b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b60c980547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff86160217905560ca80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8681169190911790915582161561341f5761341f600083612bcc565b60005b855181101561347e5761346e7f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de87838151811061346157613461614a70565b6020026020010151612bcc565b61347781614ace565b9050613422565b5060005b81518110156134d1576134c17fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177583838151811061346157613461614a70565b6134ca81614ace565b9050613482565b505050505050565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16611427576135198161393b565b61352483602061395a565b604051602001613535929190615258565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a0000000000000000000000000000000000000000000000000000000008252610ecd916004016152d9565b73ffffffffffffffffffffffffffffffffffffffff82166135e0576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d806000811461363a576040519150601f19603f3d011682016040523d82523d6000602084013e61363f565b606091505b50509050806115c3576040517f465bc83400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101839052604401610ecd565b73ffffffffffffffffffffffffffffffffffffffff82166136e6576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6115c373ffffffffffffffffffffffffffffffffffffffff84168383613b9d565b60975460ff166129f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610ecd565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661142757600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556138093390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061387760516031848661506b565b612d42916152ec565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff161561142757600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60606111d373ffffffffffffffffffffffffffffffffffffffff831660145b60606000613969836002615328565b613974906002615134565b67ffffffffffffffff81111561398c5761398c614015565b6040519080825280601f01601f1916602001820160405280156139b6576020820181803683370190505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106139ed576139ed614a70565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110613a5057613a50614a70565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000613a8c846002615328565b613a97906001615134565b90505b6001811115613b34577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110613ad857613ad8614a70565b1a60f81b828281518110613aee57613aee614a70565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c93613b2d8161533f565b9050613a9a565b508315612d42576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610ecd565b6040805173ffffffffffffffffffffffffffffffffffffffff848116602483015260448083018590528351808403909101815260649092018352602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564908401526115c392869291600091613c68918516908490613d15565b9050805160001480613c89575080806020019051810190613c899190615374565b6115c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610ecd565b6060613d248484600085613d2c565b949350505050565b606082471015613dbe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610ecd565b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051613de79190615391565b60006040518083038185875af1925050503d8060008114613e24576040519150601f19603f3d011682016040523d82523d6000602084013e613e29565b606091505b509150915061239d8783838760608315613ecb578251600003613ec45773ffffffffffffffffffffffffffffffffffffffff85163b613ec4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610ecd565b5081613d24565b613d248383815115613ee05781518083602001fd5b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ecd91906152d9565b82805482825590600052602060002090601f01602090048101928215613fad5791602002820160005b83821115613f7e57833560ff1683826101000a81548160ff021916908360ff1602179055509260200192600101602081600001049283019260010302613f3d565b8015613fab5782816101000a81549060ff0219169055600101602081600001049283019260010302613f7e565b505b50613fb9929150613fbd565b5090565b5b80821115613fb95760008155600101613fbe565b6000813574ffffffffffffffffffffffffffffffffffffffffff81168114613ff957600080fd5b73ffffffffffffffffffffffffffffffffffffffff1692915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff8111828210171561406757614067614015565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156140b4576140b4614015565b604052919050565b600067ffffffffffffffff8211156140d6576140d6614015565b5060051b60200190565b600082601f8301126140f157600080fd5b81356020614106614101836140bc565b61406d565b82815260059290921b8401810191818101908684111561412557600080fd5b8286015b848110156141475761413a81613fd2565b8352918301918301614129565b509695505050505050565b60008060008060008060c0878903121561416b57600080fd5b61417487613fd2565b955061418260208801613fd2565b9450604087013567ffffffffffffffff8082111561419f57600080fd5b6141ab8a838b016140e0565b95506141b960608a01613fd2565b94506141c760808a01613fd2565b935060a08901359150808211156141dd57600080fd5b506141ea89828a016140e0565b9150509295509295509295565b60008060006060848603121561420c57600080fd5b61421584613fd2565b925061422360208501613fd2565b9150604084013590509250925092565b60006020828403121561424557600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114612d4257600080fd5b60006020828403121561428757600080fd5b612d4282613fd2565b8015158114612abd57600080fd5b6000602082840312156142b057600080fd5b8135612d4281614290565b6000602082840312156142cd57600080fd5b5035919050565b63ffffffff81168114612abd57600080fd5b6000602082840312156142f857600080fd5b8135612d42816142d4565b6020808252825182820181905260009190848201906040850190845b8181101561433e57835160ff168352928401929184019160010161431f565b50909695505050505050565b6000806040838503121561435d57600080fd5b8235915061436d60208401613fd2565b90509250929050565b60008083601f84011261438857600080fd5b50813567ffffffffffffffff8111156143a057600080fd5b6020830191508360208285010111156143b857600080fd5b9250929050565b6000806000604084860312156143d457600080fd5b833567ffffffffffffffff8111156143eb57600080fd5b6143f786828701614376565b909790965060209590950135949350505050565b60006060828403121561441d57600080fd5b50919050565b60008083601f84011261443557600080fd5b50813567ffffffffffffffff81111561444d57600080fd5b6020830191508360208260061b85010111156143b857600080fd5b600080600080600080600060e0888a03121561448357600080fd5b61448d898961440b565b9650606088013567ffffffffffffffff808211156144aa57600080fd5b6144b68b838c01614423565b909850965060808a0135955060a08a01359150808211156144d657600080fd5b506144e38a828b01614376565b989b979a5095989497959660c090950135949350505050565b803567ffffffffffffffff8116811461159957600080fd5b803561ffff8116811461159957600080fd5b80356fffffffffffffffffffffffffffffffff8116811461159957600080fd5b6000602080838503121561455957600080fd5b823567ffffffffffffffff81111561457057600080fd5b8301601f8101851361458157600080fd5b803561458f614101826140bc565b81815260c091820283018401918482019190888411156145ae57600080fd5b938501935b838510156146425780858a0312156145cb5760008081fd5b6145d3614044565b85356145de816142d4565b81526145eb8688016144fc565b8782015260406145fc8188016144fc565b90820152606061460d878201614514565b90820152608061461e878201614526565b9082015260a061462f878201614526565b90820152835293840193918501916145b3565b50979650505050505050565b6000806020838503121561466157600080fd5b823567ffffffffffffffff81111561467857600080fd5b61468485828601614423565b90969095509350505050565b60008060008060008060e087890312156146a957600080fd5b6146b3888861440b565b955060608701356146c3816142d4565b94506146d160808801613fd2565b935060a087013567ffffffffffffffff8111156146ed57600080fd5b6146f989828a01614423565b979a969950949794969560c090950135949350505050565b60008060008060006080868803121561472957600080fd5b8535614734816142d4565b945061474260208701613fd2565b935060408601359250606086013567ffffffffffffffff81111561476557600080fd5b61477188828901614376565b969995985093965092949392505050565b600080600080600080600080600060e08a8c0312156147a057600080fd5b6147a98a613fd2565b98506147b760208b01613fd2565b975060408a013596506147cc60608b01614514565b955060808a013567ffffffffffffffff808211156147e957600080fd5b6147f58d838e01614376565b909750955060a08c013591508082111561480e57600080fd5b5061481b8c828d01614376565b9a9d999c50979a9699959894979660c00135949350505050565b6000610100828403121561441d57600080fd5b6000806000806060858703121561485e57600080fd5b843567ffffffffffffffff8082111561487657600080fd5b61488288838901614423565b90965094506020870135935060408701359150808211156148a257600080fd5b506148af87828801614835565b91505092959194509250565b6000806000604084860312156148d057600080fd5b6148d984613fd2565b9250602084013567ffffffffffffffff8111156148f557600080fd5b61490186828701614376565b9497909650939450505050565b60006020828403121561492057600080fd5b612d4282614514565b60008060006040848603121561493e57600080fd5b8335614949816142d4565b9250602084013567ffffffffffffffff8082111561496657600080fd5b818601915086601f83011261497a57600080fd5b81358181111561498957600080fd5b8760208260051b850101111561499e57600080fd5b6020830194508093505050509250925092565b6000602082840312156149c357600080fd5b813567ffffffffffffffff8111156149da57600080fd5b613d2484828501614835565b6000602082840312156149f857600080fd5b8151612d42816142d4565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b604081526000614a60604083018587614a03565b9050826020830152949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614aff57614aff614a9f565b5060010190565b602080825282518282018190526000919060409081850190868401855b82811015614ba0578151805163ffffffff1685528681015167ffffffffffffffff9081168887015286820151168686015260608082015161ffff16908601526080808201516fffffffffffffffffffffffffffffffff9081169187019190915260a091820151169085015260c09093019290850190600101614b23565b5091979650505050505050565b845173ffffffffffffffffffffffffffffffffffffffff908116825260208087015163ffffffff1681840152604080880151909216828401526060808801518185015260808089015161ffff90811682870152885167ffffffffffffffff90811660a0880152938901511660c0860152928701516fffffffffffffffffffffffffffffffff90811660e08601529087015116610100840152908501511661012082015260006101608061014084015261239d8184018587614a03565b600060208284031215614c7b57600080fd5b5051919050565b600073ffffffffffffffffffffffffffffffffffffffff808b168352808a1660208401525087604083015261ffff8716606083015260c06080830152614ccc60c083018688614a03565b82810360a0840152614cdf818587614a03565b9b9a5050505050505050505050565b60005b83811015614d09578181015183820152602001614cf1565b50506000910152565b60008151808452614d2a816020860160208601614cee565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600061012073ffffffffffffffffffffffffffffffffffffffff808f168452808e166020850152508b604084015261ffff8b1660608401528960808401528860a08401528060c0840152614db3818401888a614a03565b905082810360e0840152614dc8818688614a03565b9050828103610100840152614ddd8185614d12565b9e9d5050505050505050505050505050565b818103818111156111d3576111d3614a9f565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614e3757600080fd5b83018035915067ffffffffffffffff821115614e5257600080fd5b6020019150368190038213156143b857600080fd5b8035614e72816142d4565b63ffffffff1682526020818101359083015267ffffffffffffffff614e99604083016144fc565b1660408301525050565b614ead8189614e67565b73ffffffffffffffffffffffffffffffffffffffff8716606082015285608082015260e060a08201526000614ee660e083018688614a03565b82810360c0840152614ef9818587614a03565b9a9950505050505050505050565b6000610140614f16838e614e67565b73ffffffffffffffffffffffffffffffffffffffff8c1660608401528a60808401528960a08401528860c08401528060e0840152614f57818401888a614a03565b9050828103610100840152614f6d818688614a03565b9050828103610120840152614f828185614d12565b9d9c50505050505050505050505050565b600061012073ffffffffffffffffffffffffffffffffffffffff8088511684528060208901511660208501525061ffff6040880151166040840152615030606084018767ffffffffffffffff80825116835261ffff602083015116602084015260408201516fffffffffffffffffffffffffffffffff80821660408601528060608501511660608601525050806080830151166080840152505050565b8061010084015261239d8184018587614a03565b600067ffffffffffffffff80831681810361506157615061614a9f565b6001019392505050565b6000808585111561507b57600080fd5b8386111561508857600080fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156150d55780818660040360031b1b83161692505b505092915050565b6000604082840312156150ef57600080fd5b6040516040810181811067ffffffffffffffff8211171561511257615112614015565b60405261511e83613fd2565b8152602083013560208201528091505092915050565b808201808211156111d3576111d3614a9f565b600081518084526020808501945080840160005b8381101561517957815115158752958201959082019060010161515b565b509495945050505050565b600060e08201615194838a614e67565b63ffffffff8816606084015273ffffffffffffffffffffffffffffffffffffffff878116608085015260e060a0850152908590528590610100840160005b8781101561520357826151e485613fd2565b16825260208481013590830152604093840193909101906001016151d2565b5084810360c0860152614cdf8187615147565b600067ffffffffffffffff82168061523057615230614a9f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351615290816017850160208801614cee565b7f206973206d697373696e6720726f6c652000000000000000000000000000000060179184019182015283516152cd816028840160208801614cee565b01602801949350505050565b602081526000612d426020830184614d12565b803560208310156111d3577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b80820281158282048414176111d3576111d3614a9f565b60008161534e5761534e614a9f565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b60006020828403121561538657600080fd5b8151612d4281614290565b600082516153a3818460208701614cee565b919091019291505056fea26474726f6e58221220d52c89c4ca676c2935ead4a6bd9b9dd4f5abce642588bf4ca2f13b46ab2cbfda64736f6c63430008140033",
|
|
1410
|
+
"deployedBytecode": "0x6080604052600436106102c45760003560e01c8063709eb66411610179578063c2803b2c116100d6578063cd88b9031161008a578063d547741f11610064578063d547741f14610c8d578063e395eb5c14610cc7578063fa34c84e14610d2c57600080fd5b8063cd88b90314610bd4578063cfc3257014610c0e578063d2ae210414610c2157600080fd5b8063c416aa51116100bb578063c416aa5114610b19578063c7b2370b14610b60578063c8f8dcd114610b9a57600080fd5b8063c2803b2c14610a97578063c358de0a14610adf57600080fd5b80638624ba071161012d5780639e944965116101125780639e94496514610937578063a217fddf14610a2e578063c015bb7d14610a5d57600080fd5b80638624ba07146108b757806391d14854146108ca57600080fd5b8063724e78da1161015e578063724e78da14610823578063741bef1a1461085d5780637cd44734146108a457600080fd5b8063709eb664146107af578063717e8a42146107e957600080fd5b80632f2ff15d116102275780633d85ac33116101db578063475b6d9e116101c0578063475b6d9e146106fd5780635c975abb146107105780635e280f111461074257600080fd5b80633d85ac331461068957806344bb7e28146106c357600080fd5b806336568abe1161020c57806336568abe146105f15780633927c0751461062b5780633bd0db9f1461063e57600080fd5b80632f2ff15d1461057d5780633146646a146105b757600080fd5b80631095b6d71161027e578063248a9ca311610263578063248a9ca3146104a457806326e67a37146104fc5780632de113761461054357600080fd5b80631095b6d71461043057806316c38b3c1461046a57600080fd5b806301e33667116102af57806301e336671461037257806301ffc9a7146103ac57806302e723d9146103f657600080fd5b80629fc681146102c9578062bf2e8014610305575b600080fd5b3480156102d557600080fd5b50d380156102e257600080fd5b50d280156102ef57600080fd5b506103036102fe366004614152565b610d66565b005b34801561031157600080fd5b50d3801561031e57600080fd5b50d2801561032b57600080fd5b5060c95461035a907c0100000000000000000000000000000000000000000000000000000000900461ffff1681565b60405161ffff90911681526020015b60405180910390f35b34801561037e57600080fd5b50d3801561038b57600080fd5b50d2801561039857600080fd5b506103036103a73660046141f7565b611105565b3480156103b857600080fd5b50d380156103c557600080fd5b50d280156103d257600080fd5b506103e66103e1366004614233565b611140565b6040519015158152602001610369565b34801561040257600080fd5b50d3801561040f57600080fd5b50d2801561041c57600080fd5b5061030361042b366004614275565b6111d9565b34801561043c57600080fd5b50d3801561044957600080fd5b50d2801561045657600080fd5b506103036104653660046141f7565b61127f565b34801561047657600080fd5b50d3801561048357600080fd5b50d2801561049057600080fd5b5061030361049f36600461429e565b61140e565b3480156104b057600080fd5b50d380156104bd57600080fd5b50d280156104ca57600080fd5b506104ee6104d93660046142bb565b60009081526065602052604090206001015490565b604051908152602001610369565b34801561050857600080fd5b50d3801561051557600080fd5b50d2801561052257600080fd5b506105366105313660046142e6565b611433565b6040516103699190614303565b34801561054f57600080fd5b50d3801561055c57600080fd5b50d2801561056957600080fd5b506103e6610578366004614275565b6114ba565b34801561058957600080fd5b50d3801561059657600080fd5b50d280156105a357600080fd5b506103036105b236600461434a565b61159e565b3480156105c357600080fd5b50d380156105d057600080fd5b50d280156105dd57600080fd5b506103036105ec3660046143bf565b6115c8565b3480156105fd57600080fd5b50d3801561060a57600080fd5b50d2801561061757600080fd5b5061030361062636600461434a565b611691565b610303610639366004614468565b6116c3565b34801561064a57600080fd5b50d3801561065757600080fd5b50d2801561066457600080fd5b506103e6610673366004614275565b6101306020526000908152604090205460ff1681565b34801561069557600080fd5b50d380156106a257600080fd5b50d280156106af57600080fd5b506103036106be366004614546565b6117ad565b3480156106cf57600080fd5b50d380156106dc57600080fd5b50d280156106e957600080fd5b506103036106f836600461464e565b61198e565b61030361070b366004614690565b611ad1565b34801561071c57600080fd5b50d3801561072957600080fd5b50d2801561073657600080fd5b5060975460ff166103e6565b34801561074e57600080fd5b50d3801561075b57600080fd5b50d2801561076857600080fd5b5061012e5461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610369565b3480156107bb57600080fd5b50d380156107c857600080fd5b50d280156107d557600080fd5b506104ee6107e4366004614711565b611b25565b3480156107f557600080fd5b50d3801561080257600080fd5b50d2801561080f57600080fd5b506104ee61081e366004614711565b611c60565b34801561082f57600080fd5b50d3801561083c57600080fd5b50d2801561084957600080fd5b50610303610858366004614275565b611dc8565b34801561086957600080fd5b50d3801561087657600080fd5b50d2801561088357600080fd5b5060ca5461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b6103036108b2366004614782565b611e65565b6103036108c5366004614848565b61201a565b3480156108d657600080fd5b50d380156108e357600080fd5b50d280156108f057600080fd5b506103e66108ff36600461434a565b600091825260656020908152604080842073ffffffffffffffffffffffffffffffffffffffff93909316845291905290205460ff1690565b34801561094357600080fd5b50d3801561095057600080fd5b50d2801561095d57600080fd5b506109e161096c3660046142e6565b61012d602052600090815260409020805460019091015467ffffffffffffffff8083169261ffff68010000000000000000820416926fffffffffffffffffffffffffffffffff6a0100000000000000000000909204821692918116917001000000000000000000000000000000009091041685565b6040805167ffffffffffffffff968716815261ffff90951660208601526fffffffffffffffffffffffffffffffff938416908501529116606083015291909116608082015260a001610369565b348015610a3a57600080fd5b50d38015610a4757600080fd5b50d28015610a5457600080fd5b506104ee600081565b348015610a6957600080fd5b50d38015610a7657600080fd5b50d28015610a8357600080fd5b506104ee610a923660046148bb565b612230565b348015610aa357600080fd5b50d38015610ab057600080fd5b50d28015610abd57600080fd5b5061012f5461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610aeb57600080fd5b50d38015610af857600080fd5b50d28015610b0557600080fd5b50610303610b1436600461490e565b6123a8565b348015610b2557600080fd5b50d38015610b3257600080fd5b50d28015610b3f57600080fd5b5060c95461078a9073ffffffffffffffffffffffffffffffffffffffff1681565b348015610b6c57600080fd5b50d38015610b7957600080fd5b50d28015610b8657600080fd5b50610303610b95366004614275565b612455565b348015610ba657600080fd5b50d38015610bb357600080fd5b50d28015610bc057600080fd5b506104ee610bcf3660046148bb565b6124f2565b348015610be057600080fd5b50d38015610bed57600080fd5b50d28015610bfa57600080fd5b50610303610c09366004614929565b61263d565b610303610c1c3660046149b1565b612687565b348015610c2d57600080fd5b50d38015610c3a57600080fd5b50d28015610c4757600080fd5b5060c954610c749074010000000000000000000000000000000000000000900467ffffffffffffffff1681565b60405167ffffffffffffffff9091168152602001610369565b348015610c9957600080fd5b50d38015610ca657600080fd5b50d28015610cb357600080fd5b50610303610cc236600461434a565b612843565b348015610cd357600080fd5b50d38015610ce057600080fd5b50d28015610ced57600080fd5b5061012e54610d179074010000000000000000000000000000000000000000900463ffffffff1681565b60405163ffffffff9091168152602001610369565b348015610d3857600080fd5b50d38015610d4557600080fd5b50d28015610d5257600080fd5b50610303610d61366004614275565b612868565b6000610d907fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff8116610de95773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610355610e0b565b3373ffffffffffffffffffffffffffffffffffffffff821614610e0b57600080fd5b600054610100900460ff1615808015610e2b5750600054600160ff909116105b80610e455750303b158015610e45575060005460ff166001145b610ed6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602e60248201527f496e697469616c697a61626c653a20636f6e747261637420697320616c72656160448201527f647920696e697469616c697a656400000000000000000000000000000000000060648201526084015b60405180910390fd5b600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790558015610f3457600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff166101001790555b610f3c612956565b610f4b8686612ee087876129f7565b61012e80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8a16908117909155604080517f416ecebf000000000000000000000000000000000000000000000000000000008152905163416ecebf916004808201926020929091908290030181865afa158015610fe3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100791906149e6565b61012e80547fffffffffffffffff00000000ffffffffffffffffffffffffffffffffffffffff167401000000000000000000000000000000000000000063ffffffff939093169290920291909117905561012f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff891617905580156110fb57600080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00ff169055604051600181527f7f26b83ff96e1f2b6a682f133852f6798a09c465da95921460cefb38474024989060200160405180910390a15b5050505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561112f81612ab3565b61113a848484612ac0565b50505050565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f7965db0b0000000000000000000000000000000000000000000000000000000014806111d357507f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b92915050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561120381612ab3565b61012f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f2a2a4b95cee71747feecad6bcdaa0016f908444a79c1c31c1987b262ba4e6dbe906020015b60405180910390a15050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756112a981612ab3565b73ffffffffffffffffffffffffffffffffffffffff841660009081527fe3a3b2721d010eec8988605a93cd7c15d969808c0e2b42f6155dc2b4fa13c081602052604090205460ff16611327576040517f5ee08b9700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6040517ffd9be52200000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff84811660048301526024820184905285169063fd9be52290604401600060405180830381600087803b15801561139757600080fd5b505af11580156113ab573d6000803e3d6000fd5b50506040805173ffffffffffffffffffffffffffffffffffffffff8089168252871660208201529081018590527f9b1bfa7fa9ee420a16e124f794c35ac9f90472acc99140eb2f6447c714cad8eb9250606001905060405180910390a150505050565b600061141981612ab3565b811561142b57611427612af0565b5050565b611427612b75565b63ffffffff8116600090815260cb60209081526040918290208054835181840281018401909452808452606093928301828280156114ae57602002820191906000526020600020906000905b825461010083900a900460ff1681526020600192830181810494850194909303909202910180841161147f5790505b50505050509050919050565b73ffffffffffffffffffffffffffffffffffffffff811660009081527f0f6a9529577ef7bf1cbc8fccda1cc3c881f755c7e92e34c7c4deac1fa3c1c791602052604081205460ff161561150f57506000919050565b60c95474010000000000000000000000000000000000000000900467ffffffffffffffff161580611584575073ffffffffffffffffffffffffffffffffffffffff821660009081527f35c5067391a9036240763c1067bfa438a7b0131204a675a2fe562dd73782ce85602052604090205460ff165b1561159157506001919050565b506000919050565b919050565b6000828152606560205260409020600101546115b981612ab3565b6115c38383612bcc565b505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756115f281612ab3565b6115fa612c93565b61012f546040517fe65106f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063e65106f89061165590879087908790600401614a4c565b600060405180830381600087803b15801561166f57600080fd5b505af1158015611683573d6000803e3d6000fd5b5050505061113a600160fb55565b6040517fdec9f03100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756116ed81612ab3565b6116f5612c93565b611715886117038686612d0d565b61170d8787612d30565b8a8a8a612d49565b5061012f546040517fe65106f800000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff9091169063e65106f89061177190879087908790600401614a4c565b600060405180830381600087803b15801561178b57600080fd5b505af115801561179f573d6000803e3d6000fd5b505050506110fb600160fb55565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756117d781612ab3565b60005b825181101561195e5760008382815181106117f7576117f7614a70565b6020908102919091018101516040805160a080820183528385015167ffffffffffffffff908116835260608086015161ffff9081168589019081526080808901516fffffffffffffffffffffffffffffffff908116888a01908152968a01518116948801948552888a01518616918801918252985163ffffffff16600090815261012d909a5296909820945185549851945188166a0100000000000000000000027fffffffffffff00000000000000000000000000000000ffffffffffffffffffff9590921668010000000000000000027fffffffffffffffffffffffffffffffffffffffffffff0000000000000000000090991690841617979097179290921695909517825551600190910180549251909416700100000000000000000000000000000000027fffffffffffffffff000000000000000000000000000000000000000000000000909216921691909117179055508061195681614ace565b9150506117da565b507fb99f6de5e22c60c178b03bfacf2daeb4b6089f5b37e0fe2c48a5d5141191fc53826040516112739190614b06565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756119b881612ab3565b60005b8281101561113a57368484838181106119d6576119d6614a70565b90506040020190508060200160208101906119f1919061429e565b6101306000611a036020850185614275565b73ffffffffffffffffffffffffffffffffffffffff16815260208082019290925260400160002080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001692151592909217909155611a6490820182614275565b73ffffffffffffffffffffffffffffffffffffffff167ffafc7bfa3c73f8a408d873ba109b7145dc715107b809e460e7afe60d5402c6a2611aab604084016020850161429e565b604051901515815260200160405180910390a25080611ac981614ace565b9150506119bb565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611afb81612ab3565b611b03612c93565b611b11878787878787612d49565b50611b1c600160fb55565b50505050505050565b600084611b31816114ba565b611b67576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611b6f612ec9565b6040805160a08101825260ca5473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8a166020830152888116928201929092526060810187905260c95461ffff7c0100000000000000000000000000000000000000000000000000000000820416608083015290911663434ee01682611bf28b8b612f36565b88886040518563ffffffff1660e01b8152600401611c139493929190614bad565b602060405180830381865afa158015611c30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c549190614c69565b98975050505050505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de611c8c81612ab3565b85611c96816114ba565b611ccc576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611cd4612ec9565b6040805160a08101825260ca5473ffffffffffffffffffffffffffffffffffffffff908116825263ffffffff8b166020830152898116928201929092526060810188905260c95461ffff7c0100000000000000000000000000000000000000000000000000000000820416608083015290911663566ef76282611d578c8c612f36565b89896040518563ffffffff1660e01b8152600401611d789493929190614bad565b6020604051808303816000875af1158015611d97573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611dbb9190614c69565b9998505050505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611df281612ab3565b60ca80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527ff724a45d041687842411f2b977ef22ab8f43c8f1104f4592b42a00f9b34a643d90602001611273565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c21775611e8f81612ab3565b611e97612c93565b61012e546040517f91d20fa100000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff909116906391d20fa19084903490611f00908f908f908f908f908f908f908f908f90600401614c82565b6000604051808303818589803b158015611f1957600080fd5b5088f19450505050508015611f2c575060015b612004573d808015611f5a576040519150601f19603f3d011682016040523d82523d6000602084013e611f5f565b606091505b5061012e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663697fe6b68c8c8c8c88348e8e8e8e8c6040518c63ffffffff1660e01b8152600401611fd09b9a99989796959493929190614d5c565b600060405180830381600087803b158015611fea57600080fd5b505af1158015611ffe573d6000803e3d6000fd5b50505050505b61200e600160fb55565b50505050505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561204481612ab3565b61204c612c93565b61012e5460009061208c90602085019074010000000000000000000000000000000000000000900463ffffffff166120848287614275565b898989612d49565b9050600061209a8234614def565b61012e5490915073ffffffffffffffffffffffffffffffffffffffff16630c0c389e60e086013583602088016120d0818a614275565b60808a01356120e260a08c018c614e02565b6120ef60c08e018e614e02565b6040518a63ffffffff1660e01b81526004016121119796959493929190614ea3565b6000604051808303818589803b15801561212a57600080fd5b5088f1945050505050801561213d575060015b61221d573d80801561216b576040519150601f19603f3d011682016040523d82523d6000602084013e612170565b606091505b5061012e5473ffffffffffffffffffffffffffffffffffffffff16636bf73fa36020870161219e8189614275565b608089013560e08a0135876121b660a08d018d614e02565b6121c360c08f018f614e02565b8b6040518b63ffffffff1660e01b81526004016121e99a99989796959493929190614f07565b600060405180830381600087803b15801561220357600080fd5b505af1158015612217573d6000803e3d6000fd5b50505050505b5050612229600160fb55565b5050505050565b60007f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de61225c81612ab3565b84612266816114ba565b61229c576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6122a4612ec9565b6040805160608101825260ca5473ffffffffffffffffffffffffffffffffffffffff9081168252888116602083015260c9547c0100000000000000000000000000000000000000000000000000000000810461ffff169383019390935261012e549192169063650037849083906123399074010000000000000000000000000000000000000000900463ffffffff168b612f36565b89896040518563ffffffff1660e01b815260040161235a9493929190614f93565b6020604051808303816000875af1158015612379573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061239d9190614c69565b979650505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756123d281612ab3565b60c980547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff8516908102919091179091556040519081527f7af0ac740036ffb1c97b03697859d729e80a44ae5030543d64971c313565ab4d90602001611273565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561247f81612ab3565b60c980547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff84169081179091556040519081527f1399be28223800f8669b3ba5f8721d9fc16fc4e8d0bbf98378791c8c5a3015e090602001611273565b6000836124fe816114ba565b612534576040517f4ab5ebcd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61253c612ec9565b6040805160608101825260ca5473ffffffffffffffffffffffffffffffffffffffff9081168252878116602083015260c9547c0100000000000000000000000000000000000000000000000000000000810461ffff169383019390935261012e549192169063337c7a9e9083906125d19074010000000000000000000000000000000000000000900463ffffffff168a612f36565b88886040518563ffffffff1660e01b81526004016125f29493929190614f93565b602060405180830381865afa15801561260f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126339190614c69565b9695505050505050565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177561266781612ab3565b63ffffffff8416600090815260cb60205260409020612229908484613f14565b7fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c217756126b181612ab3565b6126b9612c93565b61012e5473ffffffffffffffffffffffffffffffffffffffff16630c0c389e60e084013534602086016126ec8188614275565b60808801356126fe60a08a018a614e02565b61270b60c08c018c614e02565b6040518a63ffffffff1660e01b815260040161272d9796959493929190614ea3565b6000604051808303818589803b15801561274657600080fd5b5088f19450505050508015612759575060015b612839573d808015612787576040519150601f19603f3d011682016040523d82523d6000602084013e61278c565b606091505b5061012e5473ffffffffffffffffffffffffffffffffffffffff16636bf73fa3602085016127ba8187614275565b608087013560e0880135346127d260a08b018b614e02565b6127df60c08d018d614e02565b8b6040518b63ffffffff1660e01b81526004016128059a99989796959493929190614f07565b600060405180830381600087803b15801561281f57600080fd5b505af1158015612833573d6000803e3d6000fd5b50505050505b611427600160fb55565b60008281526065602052604090206001015461285e81612ab3565b6115c3838361302f565b60006128927fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905073ffffffffffffffffffffffffffffffffffffffff81166128eb5773ffffffffffffffffffffffffffffffffffffffff7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035561290d565b3373ffffffffffffffffffffffffffffffffffffffff82161461290d57600080fd5b5061012f80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff92909216919091179055565b600054610100900460ff166129ed576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b6129f56130f5565b565b600054610100900460ff16612a8e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b612a9661318c565b612a9e61318c565b612aa6613223565b61222985858585856132e4565b612abd81336134d9565b50565b73ffffffffffffffffffffffffffffffffffffffff8316612ae5576115c38282613593565b6115c3838383613699565b612af8612ec9565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790557f62e78cea01bee320cd4e420270b5ea74000d11b0c9f74754ebdbfc544b05a258612b4b3390565b60405173ffffffffffffffffffffffffffffffffffffffff909116815260200160405180910390a1565b612b7d613707565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001690557f5db9ee0a495bf2e6ff9c91a7834c1ba4fdd244a5e8aa4e537bd38aeae4b073aa33612b4b565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca82148015612c2b5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16155b15612c895760c98054601490612c629074010000000000000000000000000000000000000000900467ffffffffffffffff16615044565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b6114278282613773565b600260fb5403612cff576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610ecd565b600260fb55565b600160fb55565b6000612d1d6031602d848661506b565b612d2691615095565b60e01c9392505050565b6000612d42612d3f8484613867565b90565b9392505050565b6000808367ffffffffffffffff811115612d6557612d65614015565b604051908082528060200260200182016040528015612d8e578160200160208202803683370190505b50905060005b84811015612e7c576000868683818110612db057612db0614a70565b905060400201803603810190612dc691906150dd565b90506000816000015173ffffffffffffffffffffffffffffffffffffffff1682602001518790604051600060405180830381858888f193505050503d8060008114612e2d576040519150601f19603f3d011682016040523d82523d6000602084013e612e32565b606091505b5050905080848481518110612e4957612e49614a70565b911515602092830291909101820152820151612e659086615134565b945050508080612e7490614ace565b915050612d94565b507f1f48172553121d8bf273ce457a5a3dd180d464e0add3e0143045b7fa039c3468888888888886604051612eb696959493929190615184565b60405180910390a1509695505050505050565b60975460ff16156129f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601060248201527f5061757361626c653a20706175736564000000000000000000000000000000006044820152606401610ecd565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525063ffffffff8216600090815261012d60209081526040808320815160a081018352815467ffffffffffffffff808216835261ffff68010000000000000000830416838701526fffffffffffffffffffffffffffffffff6a010000000000000000000090920482168386015260019093015490811660608301527001000000000000000000000000000000009004909116608082015273ffffffffffffffffffffffffffffffffffffffff851684526101309092529091205460ff16156111d3576000604082015292915050565b7f74845de37cfabd357633214b47fa91ccd19b05b7c5a08ac22c187f811fb62bca8214801561308d5750600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff165b156130eb5760c980546014906130c49074010000000000000000000000000000000000000000900467ffffffffffffffff16615216565b91906101000a81548167ffffffffffffffff021916908367ffffffffffffffff1602179055505b6114278282613880565b600054610100900460ff16612d06576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b600054610100900460ff166129f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b600054610100900460ff166132ba576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b609780547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff00169055565b600054610100900460ff1661337b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602b60248201527f496e697469616c697a61626c653a20636f6e7472616374206973206e6f74206960448201527f6e697469616c697a696e670000000000000000000000000000000000000000006064820152608401610ecd565b60c980547fffff0000ffffffffffffffffffffffffffffffffffffffffffffffffffffffff167c010000000000000000000000000000000000000000000000000000000061ffff86160217905560ca80547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff8681169190911790915582161561341f5761341f600083612bcc565b60005b855181101561347e5761346e7f724aface199fe5bed93ae8508474576a9adf3dc443b2c451842a2242919f19de87838151811061346157613461614a70565b6020026020010151612bcc565b61347781614ace565b9050613422565b5060005b81518110156134d1576134c17fa49807205ce4d355092ef5a8a18f56e8913cf4a201fbe287825b095693c2177583838151811061346157613461614a70565b6134ca81614ace565b9050613482565b505050505050565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff16611427576135198161393b565b61352483602061395a565b604051602001613535929190615258565b604080517fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0818403018152908290527f08c379a0000000000000000000000000000000000000000000000000000000008252610ecd916004016152d9565b73ffffffffffffffffffffffffffffffffffffffff82166135e0576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60008273ffffffffffffffffffffffffffffffffffffffff168260405160006040518083038185875af1925050503d806000811461363a576040519150601f19603f3d011682016040523d82523d6000602084013e61363f565b606091505b50509050806115c3576040517f465bc83400000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff8416600482015260248101839052604401610ecd565b73ffffffffffffffffffffffffffffffffffffffff82166136e6576040517f6b7a931000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6115c373ffffffffffffffffffffffffffffffffffffffff84168383613b9d565b60975460ff166129f5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601460248201527f5061757361626c653a206e6f74207061757365640000000000000000000000006044820152606401610ecd565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff1661142757600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff85168452909152902080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff001660011790556138093390565b73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16837f2f8788117e7eff1d82e926ec794901d17c78024a50270940304540a733656f0d60405160405180910390a45050565b600061387760516031848661506b565b612d42916152ec565b600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516845290915290205460ff161561142757600082815260656020908152604080832073ffffffffffffffffffffffffffffffffffffffff8516808552925280832080547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0016905551339285917ff6391f5c32d9c69d2a47ea670b442974b53935d1edc7fd64eb21e047a839171b9190a45050565b60606111d373ffffffffffffffffffffffffffffffffffffffff831660145b60606000613969836002615328565b613974906002615134565b67ffffffffffffffff81111561398c5761398c614015565b6040519080825280601f01601f1916602001820160405280156139b6576020820181803683370190505b5090507f3000000000000000000000000000000000000000000000000000000000000000816000815181106139ed576139ed614a70565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053507f780000000000000000000000000000000000000000000000000000000000000081600181518110613a5057613a50614a70565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506000613a8c846002615328565b613a97906001615134565b90505b6001811115613b34577f303132333435363738396162636465660000000000000000000000000000000085600f1660108110613ad857613ad8614a70565b1a60f81b828281518110613aee57613aee614a70565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a90535060049490941c93613b2d8161533f565b9050613a9a565b508315612d42576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820181905260248201527f537472696e67733a20686578206c656e67746820696e73756666696369656e746044820152606401610ecd565b6040805173ffffffffffffffffffffffffffffffffffffffff848116602483015260448083018590528351808403909101815260649092018352602080830180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fa9059cbb0000000000000000000000000000000000000000000000000000000017905283518085019094528084527f5361666545524332303a206c6f772d6c6576656c2063616c6c206661696c6564908401526115c392869291600091613c68918516908490613d15565b9050805160001480613c89575080806020019051810190613c899190615374565b6115c3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602a60248201527f5361666545524332303a204552433230206f7065726174696f6e20646964206e60448201527f6f742073756363656564000000000000000000000000000000000000000000006064820152608401610ecd565b6060613d248484600085613d2c565b949350505050565b606082471015613dbe576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152602660248201527f416464726573733a20696e73756666696369656e742062616c616e636520666f60448201527f722063616c6c00000000000000000000000000000000000000000000000000006064820152608401610ecd565b6000808673ffffffffffffffffffffffffffffffffffffffff168587604051613de79190615391565b60006040518083038185875af1925050503d8060008114613e24576040519150601f19603f3d011682016040523d82523d6000602084013e613e29565b606091505b509150915061239d8783838760608315613ecb578251600003613ec45773ffffffffffffffffffffffffffffffffffffffff85163b613ec4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601d60248201527f416464726573733a2063616c6c20746f206e6f6e2d636f6e74726163740000006044820152606401610ecd565b5081613d24565b613d248383815115613ee05781518083602001fd5b806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ecd91906152d9565b82805482825590600052602060002090601f01602090048101928215613fad5791602002820160005b83821115613f7e57833560ff1683826101000a81548160ff021916908360ff1602179055509260200192600101602081600001049283019260010302613f3d565b8015613fab5782816101000a81549060ff0219169055600101602081600001049283019260010302613f7e565b505b50613fb9929150613fbd565b5090565b5b80821115613fb95760008155600101613fbe565b6000813574ffffffffffffffffffffffffffffffffffffffffff81168114613ff957600080fd5b73ffffffffffffffffffffffffffffffffffffffff1692915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60405160c0810167ffffffffffffffff8111828210171561406757614067614015565b60405290565b604051601f82017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe016810167ffffffffffffffff811182821017156140b4576140b4614015565b604052919050565b600067ffffffffffffffff8211156140d6576140d6614015565b5060051b60200190565b600082601f8301126140f157600080fd5b81356020614106614101836140bc565b61406d565b82815260059290921b8401810191818101908684111561412557600080fd5b8286015b848110156141475761413a81613fd2565b8352918301918301614129565b509695505050505050565b60008060008060008060c0878903121561416b57600080fd5b61417487613fd2565b955061418260208801613fd2565b9450604087013567ffffffffffffffff8082111561419f57600080fd5b6141ab8a838b016140e0565b95506141b960608a01613fd2565b94506141c760808a01613fd2565b935060a08901359150808211156141dd57600080fd5b506141ea89828a016140e0565b9150509295509295509295565b60008060006060848603121561420c57600080fd5b61421584613fd2565b925061422360208501613fd2565b9150604084013590509250925092565b60006020828403121561424557600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114612d4257600080fd5b60006020828403121561428757600080fd5b612d4282613fd2565b8015158114612abd57600080fd5b6000602082840312156142b057600080fd5b8135612d4281614290565b6000602082840312156142cd57600080fd5b5035919050565b63ffffffff81168114612abd57600080fd5b6000602082840312156142f857600080fd5b8135612d42816142d4565b6020808252825182820181905260009190848201906040850190845b8181101561433e57835160ff168352928401929184019160010161431f565b50909695505050505050565b6000806040838503121561435d57600080fd5b8235915061436d60208401613fd2565b90509250929050565b60008083601f84011261438857600080fd5b50813567ffffffffffffffff8111156143a057600080fd5b6020830191508360208285010111156143b857600080fd5b9250929050565b6000806000604084860312156143d457600080fd5b833567ffffffffffffffff8111156143eb57600080fd5b6143f786828701614376565b909790965060209590950135949350505050565b60006060828403121561441d57600080fd5b50919050565b60008083601f84011261443557600080fd5b50813567ffffffffffffffff81111561444d57600080fd5b6020830191508360208260061b85010111156143b857600080fd5b600080600080600080600060e0888a03121561448357600080fd5b61448d898961440b565b9650606088013567ffffffffffffffff808211156144aa57600080fd5b6144b68b838c01614423565b909850965060808a0135955060a08a01359150808211156144d657600080fd5b506144e38a828b01614376565b989b979a5095989497959660c090950135949350505050565b803567ffffffffffffffff8116811461159957600080fd5b803561ffff8116811461159957600080fd5b80356fffffffffffffffffffffffffffffffff8116811461159957600080fd5b6000602080838503121561455957600080fd5b823567ffffffffffffffff81111561457057600080fd5b8301601f8101851361458157600080fd5b803561458f614101826140bc565b81815260c091820283018401918482019190888411156145ae57600080fd5b938501935b838510156146425780858a0312156145cb5760008081fd5b6145d3614044565b85356145de816142d4565b81526145eb8688016144fc565b8782015260406145fc8188016144fc565b90820152606061460d878201614514565b90820152608061461e878201614526565b9082015260a061462f878201614526565b90820152835293840193918501916145b3565b50979650505050505050565b6000806020838503121561466157600080fd5b823567ffffffffffffffff81111561467857600080fd5b61468485828601614423565b90969095509350505050565b60008060008060008060e087890312156146a957600080fd5b6146b3888861440b565b955060608701356146c3816142d4565b94506146d160808801613fd2565b935060a087013567ffffffffffffffff8111156146ed57600080fd5b6146f989828a01614423565b979a969950949794969560c090950135949350505050565b60008060008060006080868803121561472957600080fd5b8535614734816142d4565b945061474260208701613fd2565b935060408601359250606086013567ffffffffffffffff81111561476557600080fd5b61477188828901614376565b969995985093965092949392505050565b600080600080600080600080600060e08a8c0312156147a057600080fd5b6147a98a613fd2565b98506147b760208b01613fd2565b975060408a013596506147cc60608b01614514565b955060808a013567ffffffffffffffff808211156147e957600080fd5b6147f58d838e01614376565b909750955060a08c013591508082111561480e57600080fd5b5061481b8c828d01614376565b9a9d999c50979a9699959894979660c00135949350505050565b6000610100828403121561441d57600080fd5b6000806000806060858703121561485e57600080fd5b843567ffffffffffffffff8082111561487657600080fd5b61488288838901614423565b90965094506020870135935060408701359150808211156148a257600080fd5b506148af87828801614835565b91505092959194509250565b6000806000604084860312156148d057600080fd5b6148d984613fd2565b9250602084013567ffffffffffffffff8111156148f557600080fd5b61490186828701614376565b9497909650939450505050565b60006020828403121561492057600080fd5b612d4282614514565b60008060006040848603121561493e57600080fd5b8335614949816142d4565b9250602084013567ffffffffffffffff8082111561496657600080fd5b818601915086601f83011261497a57600080fd5b81358181111561498957600080fd5b8760208260051b850101111561499e57600080fd5b6020830194508093505050509250925092565b6000602082840312156149c357600080fd5b813567ffffffffffffffff8111156149da57600080fd5b613d2484828501614835565b6000602082840312156149f857600080fd5b8151612d42816142d4565b8183528181602085013750600060208284010152600060207fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f840116840101905092915050565b604081526000614a60604083018587614a03565b9050826020830152949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203614aff57614aff614a9f565b5060010190565b602080825282518282018190526000919060409081850190868401855b82811015614ba0578151805163ffffffff1685528681015167ffffffffffffffff9081168887015286820151168686015260608082015161ffff16908601526080808201516fffffffffffffffffffffffffffffffff9081169187019190915260a091820151169085015260c09093019290850190600101614b23565b5091979650505050505050565b845173ffffffffffffffffffffffffffffffffffffffff908116825260208087015163ffffffff1681840152604080880151909216828401526060808801518185015260808089015161ffff90811682870152885167ffffffffffffffff90811660a0880152938901511660c0860152928701516fffffffffffffffffffffffffffffffff90811660e08601529087015116610100840152908501511661012082015260006101608061014084015261239d8184018587614a03565b600060208284031215614c7b57600080fd5b5051919050565b600073ffffffffffffffffffffffffffffffffffffffff808b168352808a1660208401525087604083015261ffff8716606083015260c06080830152614ccc60c083018688614a03565b82810360a0840152614cdf818587614a03565b9b9a5050505050505050505050565b60005b83811015614d09578181015183820152602001614cf1565b50506000910152565b60008151808452614d2a816020860160208601614cee565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b600061012073ffffffffffffffffffffffffffffffffffffffff808f168452808e166020850152508b604084015261ffff8b1660608401528960808401528860a08401528060c0840152614db3818401888a614a03565b905082810360e0840152614dc8818688614a03565b9050828103610100840152614ddd8185614d12565b9e9d5050505050505050505050505050565b818103818111156111d3576111d3614a9f565b60008083357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe1843603018112614e3757600080fd5b83018035915067ffffffffffffffff821115614e5257600080fd5b6020019150368190038213156143b857600080fd5b8035614e72816142d4565b63ffffffff1682526020818101359083015267ffffffffffffffff614e99604083016144fc565b1660408301525050565b614ead8189614e67565b73ffffffffffffffffffffffffffffffffffffffff8716606082015285608082015260e060a08201526000614ee660e083018688614a03565b82810360c0840152614ef9818587614a03565b9a9950505050505050505050565b6000610140614f16838e614e67565b73ffffffffffffffffffffffffffffffffffffffff8c1660608401528a60808401528960a08401528860c08401528060e0840152614f57818401888a614a03565b9050828103610100840152614f6d818688614a03565b9050828103610120840152614f828185614d12565b9d9c50505050505050505050505050565b600061012073ffffffffffffffffffffffffffffffffffffffff8088511684528060208901511660208501525061ffff6040880151166040840152615030606084018767ffffffffffffffff80825116835261ffff602083015116602084015260408201516fffffffffffffffffffffffffffffffff80821660408601528060608501511660608601525050806080830151166080840152505050565b8061010084015261239d8184018587614a03565b600067ffffffffffffffff80831681810361506157615061614a9f565b6001019392505050565b6000808585111561507b57600080fd5b8386111561508857600080fd5b5050820193919092039150565b7fffffffff0000000000000000000000000000000000000000000000000000000081358181169160048510156150d55780818660040360031b1b83161692505b505092915050565b6000604082840312156150ef57600080fd5b6040516040810181811067ffffffffffffffff8211171561511257615112614015565b60405261511e83613fd2565b8152602083013560208201528091505092915050565b808201808211156111d3576111d3614a9f565b600081518084526020808501945080840160005b8381101561517957815115158752958201959082019060010161515b565b509495945050505050565b600060e08201615194838a614e67565b63ffffffff8816606084015273ffffffffffffffffffffffffffffffffffffffff878116608085015260e060a0850152908590528590610100840160005b8781101561520357826151e485613fd2565b16825260208481013590830152604093840193909101906001016151d2565b5084810360c0860152614cdf8187615147565b600067ffffffffffffffff82168061523057615230614a9f565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0192915050565b7f416363657373436f6e74726f6c3a206163636f756e7420000000000000000000815260008351615290816017850160208801614cee565b7f206973206d697373696e6720726f6c652000000000000000000000000000000060179184019182015283516152cd816028840160208801614cee565b01602801949350505050565b602081526000612d426020830184614d12565b803560208310156111d3577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff602084900360031b1b1692915050565b80820281158282048414176111d3576111d3614a9f565b60008161534e5761534e614a9f565b507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0190565b60006020828403121561538657600080fd5b8151612d4281614290565b600082516153a3818460208701614cee565b919091019291505056fea26474726f6e58221220d52c89c4ca676c2935ead4a6bd9b9dd4f5abce642588bf4ca2f13b46ab2cbfda64736f6c63430008140033",
|
|
1411
|
+
"linkReferences": {},
|
|
1412
|
+
"deployedLinkReferences": {}
|
|
1413
|
+
}
|