More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 25 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Gas Refuel | 20754869 | 6 days ago | IN | 0.00102618 ETH | 0.00000211 | ||||
Gas Refuel | 20692771 | 9 days ago | IN | 0.00008709 ETH | 0.00000236 | ||||
Gas Refuel | 20534810 | 15 days ago | IN | 0.00002772 ETH | 0.00000196 | ||||
Gas Refuel | 20516280 | 15 days ago | IN | 0.00003882 ETH | 0.00000196 | ||||
Gas Refuel | 20244770 | 26 days ago | IN | 0.00001831 ETH | 0.0000033 | ||||
Gas Refuel | 20244474 | 26 days ago | IN | 0.00001684 ETH | 0.00000309 | ||||
Gas Refuel | 20244349 | 26 days ago | IN | 0.00002034 ETH | 0.00000363 | ||||
Gas Refuel | 20244216 | 26 days ago | IN | 0.00002034 ETH | 0.00000391 | ||||
Gas Refuel | 20243930 | 26 days ago | IN | 0.00001831 ETH | 0.00000736 | ||||
Gas Refuel | 20243846 | 26 days ago | IN | 0.00001831 ETH | 0.00000944 | ||||
Gas Refuel | 20207009 | 27 days ago | IN | 0.00001787 ETH | 0.00000247 | ||||
Gas Refuel | 20206767 | 27 days ago | IN | 0.00001776 ETH | 0.00000252 | ||||
Gas Refuel | 20206662 | 27 days ago | IN | 0.00001787 ETH | 0.00000302 | ||||
Gas Refuel | 20206335 | 27 days ago | IN | 0.00001621 ETH | 0.00000247 | ||||
Gas Refuel | 20205731 | 27 days ago | IN | 0.00001787 ETH | 0.00000285 | ||||
Gas Refuel | 20205549 | 27 days ago | IN | 0.00001776 ETH | 0.00000261 | ||||
Gas Refuel | 20184333 | 28 days ago | IN | 0.00001776 ETH | 0.00000273 | ||||
Gas Refuel | 20184103 | 28 days ago | IN | 0.00001787 ETH | 0.00000283 | ||||
Gas Refuel | 20183926 | 28 days ago | IN | 0.00001776 ETH | 0.00000306 | ||||
Gas Refuel | 20183665 | 28 days ago | IN | 0.00001776 ETH | 0.00000247 | ||||
Gas Refuel | 20183619 | 28 days ago | IN | 0.00001787 ETH | 0.00000236 | ||||
Gas Refuel | 20183385 | 28 days ago | IN | 0.00001787 ETH | 0.00000257 | ||||
Gas Refuel | 20183149 | 28 days ago | IN | 0.0000162 ETH | 0.00000297 | ||||
Gas Refuel | 20167468 | 29 days ago | IN | 0.00011925 ETH | 0.00000215 | ||||
Gas Refuel | 20105807 | 31 days ago | IN | 0.00017785 ETH | 0.0000059 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
20754869 | 6 days ago | 0.00102618 ETH | ||||
20692771 | 9 days ago | 0.00008709 ETH | ||||
20534810 | 15 days ago | 0.00002772 ETH | ||||
20516280 | 15 days ago | 0.00003882 ETH | ||||
20244770 | 26 days ago | 0.00001831 ETH | ||||
20244474 | 26 days ago | 0.00001684 ETH | ||||
20244349 | 26 days ago | 0.00002034 ETH | ||||
20244216 | 26 days ago | 0.00002034 ETH | ||||
20243930 | 26 days ago | 0.00001831 ETH | ||||
20243846 | 26 days ago | 0.00001831 ETH | ||||
20207009 | 27 days ago | 0.00001787 ETH | ||||
20206767 | 27 days ago | 0.00001776 ETH | ||||
20206662 | 27 days ago | 0.00001787 ETH | ||||
20206335 | 27 days ago | 0.00001621 ETH | ||||
20205731 | 27 days ago | 0.00001787 ETH | ||||
20205549 | 27 days ago | 0.00001776 ETH | ||||
20184333 | 28 days ago | 0.00001776 ETH | ||||
20184103 | 28 days ago | 0.00001787 ETH | ||||
20183926 | 28 days ago | 0.00001776 ETH | ||||
20183665 | 28 days ago | 0.00001776 ETH | ||||
20183619 | 28 days ago | 0.00001787 ETH | ||||
20183385 | 28 days ago | 0.00001787 ETH | ||||
20183149 | 28 days ago | 0.0000162 ETH | ||||
20167468 | 29 days ago | 0.00011925 ETH | ||||
20105807 | 31 days ago | 0.00017785 ETH |
Loading...
Loading
Contract Name:
GasRefuel
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: BUSL-1.1 pragma solidity ^0.8.17; import {ILayerZeroEndpoint} from "@layerzerolabs/solidity-examples/contracts/lzApp/interfaces/ILayerZeroEndpoint.sol"; import {ILayerZeroReceiver} from "@layerzerolabs/solidity-examples/contracts/lzApp/interfaces/ILayerZeroReceiver.sol"; import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol"; contract GasRefuel is Ownable, ILayerZeroReceiver { uint256 public gasRefuelPrice; address immutable lzEndpoint; uint256 lzReceiveGas = 25000; mapping(uint16 => bytes) destinations; constructor(address lzEndpoint_, uint256 gasRefuelPrice_) { lzEndpoint = lzEndpoint_; gasRefuelPrice = gasRefuelPrice_; } function gasRefuel( uint16 dstChainId, address zroPaymentAddress, uint256 nativeForDst, address addressOnDst ) external payable { ILayerZeroEndpoint(lzEndpoint).send{value: msg.value - gasRefuelPrice}( dstChainId, _destination(dstChainId), bytes(""), payable(address(this)), zroPaymentAddress, _adapterParams(nativeForDst, addressOnDst) ); } function lzReceive( uint16, bytes calldata, uint64, bytes calldata ) external {} function setGasRefuelPrice(uint256 gasRefuelPrice_) external onlyOwner { gasRefuelPrice = gasRefuelPrice_; } function estimateGasRefuelFee( uint16 dstChainId, uint256 nativeForDst, address addressOnDst, bool useZro ) external view returns (uint nativeFee, uint zroFee) { return ILayerZeroEndpoint(lzEndpoint).estimateFees( dstChainId, address(this), "", useZro, _adapterParams(nativeForDst, addressOnDst) ); } function _adapterParams( uint256 nativeForDst, address addressOnDst ) internal view returns (bytes memory) { return abi.encodePacked( uint16(2), lzReceiveGas, nativeForDst, addressOnDst ); } function _destination( uint16 dstChainId ) internal view returns (bytes memory) { bytes memory destination = destinations[dstChainId]; if (destination.length > 0) return destination; return abi.encodePacked(address(this), address(this)); } }
// SPDX-License-Identifier: MIT pragma solidity >=0.5.0; import "./ILayerZeroUserApplicationConfig.sol"; interface ILayerZeroEndpoint is ILayerZeroUserApplicationConfig { // @notice send a LayerZero message to the specified address at a LayerZero endpoint. // @param _dstChainId - the destination chain identifier // @param _destination - the address on destination chain (in bytes). address length/format may vary by chains // @param _payload - a custom bytes payload to send to the destination contract // @param _refundAddress - if the source transaction is cheaper than the amount of value passed, refund the additional amount to this address // @param _zroPaymentAddress - the address of the ZRO token holder who would pay for the transaction // @param _adapterParams - parameters for custom functionality. e.g. receive airdropped native gas from the relayer on destination function send( uint16 _dstChainId, bytes calldata _destination, bytes calldata _payload, address payable _refundAddress, address _zroPaymentAddress, bytes calldata _adapterParams ) external payable; // @notice used by the messaging library to publish verified payload // @param _srcChainId - the source chain identifier // @param _srcAddress - the source contract (as bytes) at the source chain // @param _dstAddress - the address on destination chain // @param _nonce - the unbound message ordering nonce // @param _gasLimit - the gas limit for external contract execution // @param _payload - verified payload to send to the destination contract function receivePayload( uint16 _srcChainId, bytes calldata _srcAddress, address _dstAddress, uint64 _nonce, uint _gasLimit, bytes calldata _payload ) external; // @notice get the inboundNonce of a lzApp from a source chain which could be EVM or non-EVM chain // @param _srcChainId - the source chain identifier // @param _srcAddress - the source chain contract address function getInboundNonce(uint16 _srcChainId, bytes calldata _srcAddress) external view returns (uint64); // @notice get the outboundNonce from this source chain which, consequently, is always an EVM // @param _srcAddress - the source chain contract address function getOutboundNonce(uint16 _dstChainId, address _srcAddress) external view returns (uint64); // @notice gets a quote in source native gas, for the amount that send() requires to pay for message delivery // @param _dstChainId - the destination chain identifier // @param _userApplication - the user app address on this EVM chain // @param _payload - the custom message to send over LayerZero // @param _payInZRO - if false, user app pays the protocol fee in native token // @param _adapterParam - parameters for the adapter service, e.g. send some dust native token to dstChain function estimateFees( uint16 _dstChainId, address _userApplication, bytes calldata _payload, bool _payInZRO, bytes calldata _adapterParam ) external view returns (uint nativeFee, uint zroFee); // @notice get this Endpoint's immutable source identifier function getChainId() external view returns (uint16); // @notice the interface to retry failed message on this Endpoint destination // @param _srcChainId - the source chain identifier // @param _srcAddress - the source chain contract address // @param _payload - the payload to be retried function retryPayload( uint16 _srcChainId, bytes calldata _srcAddress, bytes calldata _payload ) external; // @notice query if any STORED payload (message blocking) at the endpoint. // @param _srcChainId - the source chain identifier // @param _srcAddress - the source chain contract address function hasStoredPayload(uint16 _srcChainId, bytes calldata _srcAddress) external view returns (bool); // @notice query if the _libraryAddress is valid for sending msgs. // @param _userApplication - the user app address on this EVM chain function getSendLibraryAddress(address _userApplication) external view returns (address); // @notice query if the _libraryAddress is valid for receiving msgs. // @param _userApplication - the user app address on this EVM chain function getReceiveLibraryAddress(address _userApplication) external view returns (address); // @notice query if the non-reentrancy guard for send() is on // @return true if the guard is on. false otherwise function isSendingPayload() external view returns (bool); // @notice query if the non-reentrancy guard for receive() is on // @return true if the guard is on. false otherwise function isReceivingPayload() external view returns (bool); // @notice get the configuration of the LayerZero messaging library of the specified version // @param _version - messaging library version // @param _chainId - the chainId for the pending config change // @param _userApplication - the contract address of the user application // @param _configType - type of configuration. every messaging library has its own convention. function getConfig( uint16 _version, uint16 _chainId, address _userApplication, uint _configType ) external view returns (bytes memory); // @notice get the send() LayerZero messaging library version // @param _userApplication - the contract address of the user application function getSendVersion(address _userApplication) external view returns (uint16); // @notice get the lzReceive() LayerZero messaging library version // @param _userApplication - the contract address of the user application function getReceiveVersion(address _userApplication) external view returns (uint16); }
// SPDX-License-Identifier: MIT pragma solidity >=0.5.0; interface ILayerZeroReceiver { // @notice LayerZero endpoint will invoke this function to deliver the message on the destination // @param _srcChainId - the source endpoint identifier // @param _srcAddress - the source sending contract address from the source chain // @param _nonce - the ordered message nonce // @param _payload - the signed payload is the UA bytes has encoded to be sent function lzReceive( uint16 _srcChainId, bytes calldata _srcAddress, uint64 _nonce, bytes calldata _payload ) external; }
// SPDX-License-Identifier: MIT pragma solidity >=0.5.0; interface ILayerZeroUserApplicationConfig { // @notice set the configuration of the LayerZero messaging library of the specified version // @param _version - messaging library version // @param _chainId - the chainId for the pending config change // @param _configType - type of configuration. every messaging library has its own convention. // @param _config - configuration in the bytes. can encode arbitrary content. function setConfig( uint16 _version, uint16 _chainId, uint _configType, bytes calldata _config ) external; // @notice set the send() LayerZero messaging library version to _version // @param _version - new messaging library version function setSendVersion(uint16 _version) external; // @notice set the lzReceive() LayerZero messaging library version to _version // @param _version - new messaging library version function setReceiveVersion(uint16 _version) external; // @notice Only when the UA needs to resume the message flow in blocking mode and clear the stored payload // @param _srcChainId - the chainId of the source chain // @param _srcAddress - the contract address of the source contract at the source chain function forceResumeReceive(uint16 _srcChainId, bytes calldata _srcAddress) external; }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (access/Ownable.sol) pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby disabling any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^0.8.0; /** * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"lzEndpoint_","type":"address"},{"internalType":"uint256","name":"gasRefuelPrice_","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[{"internalType":"uint16","name":"dstChainId","type":"uint16"},{"internalType":"uint256","name":"nativeForDst","type":"uint256"},{"internalType":"address","name":"addressOnDst","type":"address"},{"internalType":"bool","name":"useZro","type":"bool"}],"name":"estimateGasRefuelFee","outputs":[{"internalType":"uint256","name":"nativeFee","type":"uint256"},{"internalType":"uint256","name":"zroFee","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"dstChainId","type":"uint16"},{"internalType":"address","name":"zroPaymentAddress","type":"address"},{"internalType":"uint256","name":"nativeForDst","type":"uint256"},{"internalType":"address","name":"addressOnDst","type":"address"}],"name":"gasRefuel","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"gasRefuelPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint16","name":"","type":"uint16"},{"internalType":"bytes","name":"","type":"bytes"},{"internalType":"uint64","name":"","type":"uint64"},{"internalType":"bytes","name":"","type":"bytes"}],"name":"lzReceive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"gasRefuelPrice_","type":"uint256"}],"name":"setGasRefuelPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60a06040526161a860025534801561001657600080fd5b50604051610a1c380380610a1c833981016040819052610035916100a4565b61003e33610054565b6001600160a01b039091166080526001556100de565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b600080604083850312156100b757600080fd5b82516001600160a01b03811681146100ce57600080fd5b6020939093015192949293505050565b60805161091c610100600039600081816101940152610267015261091c6000f3fe60806040526004361061007a5760003560e01c80637e93c69d1161004e5780637e93c69d146101065780638da5cb5b14610126578063bbf989631461014e578063f2fde38b1461017257600080fd5b80621d35671461007f57806332accbb9146100a4578063715018a6146100b75780637a22cb76146100cc575b600080fd5b34801561008b57600080fd5b506100a261009a3660046105e2565b505050505050565b005b6100a26100b2366004610693565b610192565b3480156100c357600080fd5b506100a261024e565b3480156100d857600080fd5b506100ec6100e73660046106e0565b610262565b604080519283526020830191909152015b60405180910390f35b34801561011257600080fd5b506100a2610121366004610734565b61030d565b34801561013257600080fd5b506000546040516001600160a01b0390911681526020016100fd565b34801561015a57600080fd5b5061016460015481565b6040519081526020016100fd565b34801561017e57600080fd5b506100a261018d36600461074d565b61031a565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c5803100600154346101cf919061076f565b866101d988610398565b6040518060200160405280600081525030896101f58a8a610487565b6040518863ffffffff1660e01b8152600401610216969594939291906107d6565b6000604051808303818588803b15801561022f57600080fd5b505af1158015610243573d6000803e3d6000fd5b505050505050505050565b6102566104d8565b6102606000610532565b565b6000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03166340a7bb108730866102a18a8a610487565b6040518563ffffffff1660e01b81526004016102c0949392919061083d565b6040805180830381865afa1580156102dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103009190610888565b9150915094509492505050565b6103156104d8565b600155565b6103226104d8565b6001600160a01b03811661038c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61039581610532565b50565b61ffff81166000908152600360205260408120805460609291906103bb906108ac565b80601f01602080910402602001604051908101604052809291908181526020018280546103e7906108ac565b80156104345780601f1061040957610100808354040283529160200191610434565b820191906000526020600020905b81548152906001019060200180831161041757829003601f168201915b5050505050905060008151111561044b5792915050565b6040516bffffffffffffffffffffffff193060601b16602082018190526034820152604801604051602081830303815290604052915050919050565b60025460408051600160f11b60208201526022810192909252604282018490526bffffffffffffffffffffffff19606084901b16606283015280516056818403018152607690920190525b92915050565b6000546001600160a01b031633146102605760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610383565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803561ffff8116811461059457600080fd5b919050565b60008083601f8401126105ab57600080fd5b50813567ffffffffffffffff8111156105c357600080fd5b6020830191508360208285010111156105db57600080fd5b9250929050565b600080600080600080608087890312156105fb57600080fd5b61060487610582565b9550602087013567ffffffffffffffff8082111561062157600080fd5b61062d8a838b01610599565b909750955060408901359150808216821461064757600080fd5b9093506060880135908082111561065d57600080fd5b5061066a89828a01610599565b979a9699509497509295939492505050565b80356001600160a01b038116811461059457600080fd5b600080600080608085870312156106a957600080fd5b6106b285610582565b93506106c06020860161067c565b9250604085013591506106d56060860161067c565b905092959194509250565b600080600080608085870312156106f657600080fd5b6106ff85610582565b9350602085013592506107146040860161067c565b91506060850135801515811461072957600080fd5b939692955090935050565b60006020828403121561074657600080fd5b5035919050565b60006020828403121561075f57600080fd5b6107688261067c565b9392505050565b818103818111156104d257634e487b7160e01b600052601160045260246000fd5b6000815180845260005b818110156107b65760208185018101518683018201520161079a565b506000602082860101526020601f19601f83011685010191505092915050565b61ffff8716815260c0602082015260006107f360c0830188610790565b82810360408401526108058188610790565b6001600160a01b0387811660608601528616608085015283810360a085015290506108308185610790565b9998505050505050505050565b61ffff8516815260018060a01b038416602082015260a06040820152600060a0820152821515606082015260c06080820152600061087e60c0830184610790565b9695505050505050565b6000806040838503121561089b57600080fd5b505080516020909101519092909150565b600181811c908216806108c057607f821691505b6020821081036108e057634e487b7160e01b600052602260045260246000fd5b5091905056fea2646970667358221220fd1046ee6b54d7091b07c42d0246b3aef5297fde8ebad0314b6a7cd777aea14b64736f6c634300081300330000000000000000000000009740ff91f1985d8d2b71494ae1a2f723bb3ed9e400000000000000000000000000000000000000000000000000002d79883d2000
Deployed Bytecode
0x60806040526004361061007a5760003560e01c80637e93c69d1161004e5780637e93c69d146101065780638da5cb5b14610126578063bbf989631461014e578063f2fde38b1461017257600080fd5b80621d35671461007f57806332accbb9146100a4578063715018a6146100b75780637a22cb76146100cc575b600080fd5b34801561008b57600080fd5b506100a261009a3660046105e2565b505050505050565b005b6100a26100b2366004610693565b610192565b3480156100c357600080fd5b506100a261024e565b3480156100d857600080fd5b506100ec6100e73660046106e0565b610262565b604080519283526020830191909152015b60405180910390f35b34801561011257600080fd5b506100a2610121366004610734565b61030d565b34801561013257600080fd5b506000546040516001600160a01b0390911681526020016100fd565b34801561015a57600080fd5b5061016460015481565b6040519081526020016100fd565b34801561017e57600080fd5b506100a261018d36600461074d565b61031a565b7f0000000000000000000000009740ff91f1985d8d2b71494ae1a2f723bb3ed9e46001600160a01b031663c5803100600154346101cf919061076f565b866101d988610398565b6040518060200160405280600081525030896101f58a8a610487565b6040518863ffffffff1660e01b8152600401610216969594939291906107d6565b6000604051808303818588803b15801561022f57600080fd5b505af1158015610243573d6000803e3d6000fd5b505050505050505050565b6102566104d8565b6102606000610532565b565b6000807f0000000000000000000000009740ff91f1985d8d2b71494ae1a2f723bb3ed9e46001600160a01b03166340a7bb108730866102a18a8a610487565b6040518563ffffffff1660e01b81526004016102c0949392919061083d565b6040805180830381865afa1580156102dc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103009190610888565b9150915094509492505050565b6103156104d8565b600155565b6103226104d8565b6001600160a01b03811661038c5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084015b60405180910390fd5b61039581610532565b50565b61ffff81166000908152600360205260408120805460609291906103bb906108ac565b80601f01602080910402602001604051908101604052809291908181526020018280546103e7906108ac565b80156104345780601f1061040957610100808354040283529160200191610434565b820191906000526020600020905b81548152906001019060200180831161041757829003601f168201915b5050505050905060008151111561044b5792915050565b6040516bffffffffffffffffffffffff193060601b16602082018190526034820152604801604051602081830303815290604052915050919050565b60025460408051600160f11b60208201526022810192909252604282018490526bffffffffffffffffffffffff19606084901b16606283015280516056818403018152607690920190525b92915050565b6000546001600160a01b031633146102605760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610383565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b803561ffff8116811461059457600080fd5b919050565b60008083601f8401126105ab57600080fd5b50813567ffffffffffffffff8111156105c357600080fd5b6020830191508360208285010111156105db57600080fd5b9250929050565b600080600080600080608087890312156105fb57600080fd5b61060487610582565b9550602087013567ffffffffffffffff8082111561062157600080fd5b61062d8a838b01610599565b909750955060408901359150808216821461064757600080fd5b9093506060880135908082111561065d57600080fd5b5061066a89828a01610599565b979a9699509497509295939492505050565b80356001600160a01b038116811461059457600080fd5b600080600080608085870312156106a957600080fd5b6106b285610582565b93506106c06020860161067c565b9250604085013591506106d56060860161067c565b905092959194509250565b600080600080608085870312156106f657600080fd5b6106ff85610582565b9350602085013592506107146040860161067c565b91506060850135801515811461072957600080fd5b939692955090935050565b60006020828403121561074657600080fd5b5035919050565b60006020828403121561075f57600080fd5b6107688261067c565b9392505050565b818103818111156104d257634e487b7160e01b600052601160045260246000fd5b6000815180845260005b818110156107b65760208185018101518683018201520161079a565b506000602082860101526020601f19601f83011685010191505092915050565b61ffff8716815260c0602082015260006107f360c0830188610790565b82810360408401526108058188610790565b6001600160a01b0387811660608601528616608085015283810360a085015290506108308185610790565b9998505050505050505050565b61ffff8516815260018060a01b038416602082015260a06040820152600060a0820152821515606082015260c06080820152600061087e60c0830184610790565b9695505050505050565b6000806040838503121561089b57600080fd5b505080516020909101519092909150565b600181811c908216806108c057607f821691505b6020821081036108e057634e487b7160e01b600052602260045260246000fd5b5091905056fea2646970667358221220fd1046ee6b54d7091b07c42d0246b3aef5297fde8ebad0314b6a7cd777aea14b64736f6c63430008130033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000009740ff91f1985d8d2b71494ae1a2f723bb3ed9e400000000000000000000000000000000000000000000000000002d79883d2000
-----Decoded View---------------
Arg [0] : lzEndpoint_ (address): 0x9740FF91F1985D8d2B71494aE1A2f723bb3Ed9E4
Arg [1] : gasRefuelPrice_ (uint256): 50000000000000
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000009740ff91f1985d8d2b71494ae1a2f723bb3ed9e4
Arg [1] : 00000000000000000000000000000000000000000000000000002d79883d2000
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.