Contract 0xe432150cce91c13a887f7D836923d5597adD8E31 29

Txn Hash Method
Block
From
To
Value [Txn Fee]
0xb39d855a38014a80207bc38daa183658edc3c4bbd0b15fcb191e58222c9d5eccExecute24928392023-12-06 20:02:451 hr 11 mins ago0xa641c5dc1ea34ebb4f72619e2b1fb58dece3c627 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000440347003
0xb726dd3a9a1f7a4c8f806d72a9d67ad35aeb4904426dafed354e7759d4453d66Execute24926802023-12-06 19:54:451 hr 19 mins ago0xd72057d84dd9089cf8f73f3e772dcf09695bddbf IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000235910001
0xa2973d9d9cc6bb332de3728da191135be298467c0d41a9f1c25494b3832379e4Execute24903382023-12-06 17:41:193 hrs 32 mins ago0x139aca2cb03913fad068f0c394d245c7ae15ed01 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000219226001
0xfd808289223cec90aefac3949978f030c48895b9ab160366b298cb00dbfab8a4Execute24902662023-12-06 17:35:353 hrs 38 mins ago0xa641c5dc1ea34ebb4f72619e2b1fb58dece3c627 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000219198001
0x354a217c0f6111a55342e22f811ef050e0b387920163371bfb556d8ec675b400Execute24687012023-12-05 20:03:251 day 1 hr ago0xd72057d84dd9089cf8f73f3e772dcf09695bddbf IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000207517001
0xd64412fbe0ef13923822ebf6bd8ca310e1cd113ba0b5f8f1eb7a9b92a378e73cExecute24686992023-12-05 20:03:191 day 1 hr ago0xd72057d84dd9089cf8f73f3e772dcf09695bddbf IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000436275003
0x4dcf3da180f23c9873e981aa34e6127d7dd3ee7d761095152ff055f197cc11e5Execute24671262023-12-05 18:43:201 day 2 hrs ago0x139aca2cb03913fad068f0c394d245c7ae15ed01 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000225031001
0x199b08149c7ceb886e275a26ff654c48b88178db9076b60919fb3edb9916dc01Execute24661012023-12-05 17:48:171 day 3 hrs ago0xa641c5dc1ea34ebb4f72619e2b1fb58dece3c627 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000221055001
0xc21976d4d4709dba2c7202c6020a9d9fdf4b244c41934fe19d2a4c40fe1aab5eExecute24635052023-12-05 15:37:071 day 5 hrs ago0x8668ca732318158e000c52009496e2b6f95a7f6c IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000221067001
0x8eff5c0f179555926c53cc5911510d8e19b1794e4972a3a07e9d2b18b4fba28fExecute24599422023-12-05 12:38:261 day 8 hrs ago0x9cec5949e52c2471aebde3b99e3e22287315e3da IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000224971001
0xecb2b43275ce2cbeffaababda44b4650594fae04d1e886ec1bea06cd58729f82Execute24586782023-12-05 11:34:311 day 9 hrs ago0xd72057d84dd9089cf8f73f3e772dcf09695bddbf IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000225007001
0x9ede4bdbf82924f8119f85297fb706e0ca99fda43207825269457add1799082bExecute24585532023-12-05 11:28:151 day 9 hrs ago0x139aca2cb03913fad068f0c394d245c7ae15ed01 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000224975001
0x55b3c4ec2756263eb59d82875e7adbaa20d3469cd21b6cec03e944aa1545d302Execute24584282023-12-05 11:22:001 day 9 hrs ago0xa641c5dc1ea34ebb4f72619e2b1fb58dece3c627 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000224979001
0x094e0060f4b60bc2f0c2b7f98cf996870eb4c764b9705af1a777fb848a4a2c23Execute24402122023-12-04 20:03:132 days 1 hr ago0xd72057d84dd9089cf8f73f3e772dcf09695bddbf IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000199984001
0x1b8b9b96b73420684a6c9e6625cbb4384ccc5814d0003daad18f200b4e7e4147Execute24402102023-12-04 20:03:072 days 1 hr ago0xd72057d84dd9089cf8f73f3e772dcf09695bddbf IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000426480002
0x41e0767d2a813b2f1c6c83d25e193472dd6e2c3a5ef1f4b38fffa610b25d5e56Execute24360822023-12-04 16:35:342 days 4 hrs ago0x139aca2cb03913fad068f0c394d245c7ae15ed01 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000218333001
0xfc683bb8534f06da217d8996add6361345963ad0184413882748f343925eeb89Execute24345482023-12-04 15:18:352 days 5 hrs ago0xa641c5dc1ea34ebb4f72619e2b1fb58dece3c627 IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000218289001
0x80d28ceb97487a314abd4fd3c26c1d19ce977630442c805a60b8b839652dc8e5Execute24340372023-12-04 14:53:022 days 6 hrs ago0x8668ca732318158e000c52009496e2b6f95a7f6c IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000218281001
0x05fed19ba8e84a9451982696ae8a4c1d506fc503cd1692fc8f2dd35d4ef978fbExecute24339072023-12-04 14:46:322 days 6 hrs ago0x9cec5949e52c2471aebde3b99e3e22287315e3da IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000218245001
0x21b2cdf3c418e658dc91da0602e78c5442c2ba52ede2cd5eec3b4e3962a665d9Execute24337832023-12-04 14:40:202 days 6 hrs ago0xd72057d84dd9089cf8f73f3e772dcf09695bddbf IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000218233001
0xeeb93a9eef2fd25ea17de3b1ca883a9cb1294d9fd88de0d4898ef633007f5030Execute24334872023-12-04 14:25:272 days 6 hrs ago0x8668ca732318158e000c52009496e2b6f95a7f6c IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000207100001
0x810057ff851a07c5e2fb6a5f80bcef687663b9b62d379d836570ce7c9712ac7fExecute24334852023-12-04 14:25:212 days 6 hrs ago0x8668ca732318158e000c52009496e2b6f95a7f6c IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000207100001
0x86d8c6e23e73bbc84216676bbd5ecbcc86fa4b7e8f832b8370f0330325a5df01Execute24334842023-12-04 14:25:182 days 6 hrs ago0x8668ca732318158e000c52009496e2b6f95a7f6c IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000431317003
0x3dcd534f7ca82d881ff02e79378a66a1c7d320321ca7218d5f2ad50c6ceef369Execute24295732023-12-04 11:09:012 days 10 hrs ago0x9cec5949e52c2471aebde3b99e3e22287315e3da IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000225975001
0x522056206c803a4c4bb6ee6e47c5e0b8c3b20bc28113f61846bedde5646c68c8Execute24293182023-12-04 10:56:162 days 10 hrs ago0x8668ca732318158e000c52009496e2b6f95a7f6c IN 0xe432150cce91c13a887f7d836923d5597add8e310 ETH0.000294810002
[ Download CSV Export 
Latest 25 internal transaction
Parent Txn Hash Block From To Value
0xb39d855a38014a80207bc38daa183658edc3c4bbd0b15fcb191e58222c9d5ecc24928392023-12-06 20:02:451 hr 11 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x50d84de83c089184e8eba074ab38887b0ca30a0d0 ETH
0xb39d855a38014a80207bc38daa183658edc3c4bbd0b15fcb191e58222c9d5ecc24928392023-12-06 20:02:451 hr 11 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xb39d855a38014a80207bc38daa183658edc3c4bbd0b15fcb191e58222c9d5ecc24928392023-12-06 20:02:451 hr 11 mins ago 0xe432150cce91c13a887f7d836923d5597add8e310xe432150cce91c13a887f7d836923d5597add8e310 ETH
0xb39d855a38014a80207bc38daa183658edc3c4bbd0b15fcb191e58222c9d5ecc24928392023-12-06 20:02:451 hr 11 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x50d84de83c089184e8eba074ab38887b0ca30a0d0 ETH
0xb39d855a38014a80207bc38daa183658edc3c4bbd0b15fcb191e58222c9d5ecc24928392023-12-06 20:02:451 hr 11 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xb726dd3a9a1f7a4c8f806d72a9d67ad35aeb4904426dafed354e7759d4453d6624926802023-12-06 19:54:451 hr 19 mins ago 0xe432150cce91c13a887f7d836923d5597add8e310x254d06f33bdc5b8ee05b2ea472107e300226659a0 ETH
0xb726dd3a9a1f7a4c8f806d72a9d67ad35aeb4904426dafed354e7759d4453d6624926802023-12-06 19:54:451 hr 19 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xb726dd3a9a1f7a4c8f806d72a9d67ad35aeb4904426dafed354e7759d4453d6624926802023-12-06 19:54:451 hr 19 mins ago 0xe432150cce91c13a887f7d836923d5597add8e310xe432150cce91c13a887f7d836923d5597add8e310 ETH
0xb726dd3a9a1f7a4c8f806d72a9d67ad35aeb4904426dafed354e7759d4453d6624926802023-12-06 19:54:451 hr 19 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x50d84de83c089184e8eba074ab38887b0ca30a0d0 ETH
0xb726dd3a9a1f7a4c8f806d72a9d67ad35aeb4904426dafed354e7759d4453d6624926802023-12-06 19:54:451 hr 19 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xa2973d9d9cc6bb332de3728da191135be298467c0d41a9f1c25494b3832379e424903382023-12-06 17:41:193 hrs 32 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xa2973d9d9cc6bb332de3728da191135be298467c0d41a9f1c25494b3832379e424903382023-12-06 17:41:193 hrs 32 mins ago 0xe432150cce91c13a887f7d836923d5597add8e310xe432150cce91c13a887f7d836923d5597add8e310 ETH
0xa2973d9d9cc6bb332de3728da191135be298467c0d41a9f1c25494b3832379e424903382023-12-06 17:41:193 hrs 32 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x50d84de83c089184e8eba074ab38887b0ca30a0d0 ETH
0xa2973d9d9cc6bb332de3728da191135be298467c0d41a9f1c25494b3832379e424903382023-12-06 17:41:193 hrs 32 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xfd808289223cec90aefac3949978f030c48895b9ab160366b298cb00dbfab8a424902662023-12-06 17:35:353 hrs 38 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xfd808289223cec90aefac3949978f030c48895b9ab160366b298cb00dbfab8a424902662023-12-06 17:35:353 hrs 38 mins ago 0xe432150cce91c13a887f7d836923d5597add8e310xe432150cce91c13a887f7d836923d5597add8e310 ETH
0xfd808289223cec90aefac3949978f030c48895b9ab160366b298cb00dbfab8a424902662023-12-06 17:35:353 hrs 38 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x50d84de83c089184e8eba074ab38887b0ca30a0d0 ETH
0xfd808289223cec90aefac3949978f030c48895b9ab160366b298cb00dbfab8a424902662023-12-06 17:35:353 hrs 38 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0x678a7f8a8139d626516d8c10bc7768795c7cebe0a0a97a559cead417bb57c29624896332023-12-06 16:56:504 hrs 17 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0x678a7f8a8139d626516d8c10bc7768795c7cebe0a0a97a559cead417bb57c29624896332023-12-06 16:56:504 hrs 17 mins ago 0xf786e21509a9d50a9afd033b5940a2b7d872c2080xe432150cce91c13a887f7d836923d5597add8e310 ETH
0xa429566adf61ea24f3e1f4a479d5c37b2ebcbd937908d13e19da63778f652f5324896332023-12-06 16:56:504 hrs 17 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0xa429566adf61ea24f3e1f4a479d5c37b2ebcbd937908d13e19da63778f652f5324896332023-12-06 16:56:504 hrs 17 mins ago 0x481a2aae41cd34832ddcf5a79404538bb2c02bc80xe432150cce91c13a887f7d836923d5597add8e310 ETH
0x50f5be7d6199f3067b88c015492a24934bc949f7fe8c5f6243f32b46025fb72b24896332023-12-06 16:56:504 hrs 17 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
0x50f5be7d6199f3067b88c015492a24934bc949f7fe8c5f6243f32b46025fb72b24896332023-12-06 16:56:504 hrs 17 mins ago 0x481a2aae41cd34832ddcf5a79404538bb2c02bc80xe432150cce91c13a887f7d836923d5597add8e310 ETH
0x96d3e88a3dddec234977f986392e11cb1a14b545def459fb0e37935f2242f26024896332023-12-06 16:56:504 hrs 17 mins ago 0xe432150cce91c13a887f7d836923d5597add8e31 0x99b5fa03a5ea4315725c43346e55a6a6fbd940980 ETH
[ Download CSV Export 
Index Block
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
AxelarGatewayProxy

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 1000 runs

Other Settings:
default evmVersion
File 1 of 3 : AxelarGatewayProxy.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.9;

import { IAxelarGateway } from './interfaces/IAxelarGateway.sol';

import { EternalStorage } from './EternalStorage.sol';

contract AxelarGatewayProxy is EternalStorage {
    error InvalidImplementation();
    error SetupFailed();
    error NativeCurrencyNotAccepted();

    /// @dev Storage slot with the address of the current factory. `keccak256('eip1967.proxy.implementation') - 1`.
    bytes32 internal constant KEY_IMPLEMENTATION = bytes32(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc);

    constructor(address gatewayImplementation, bytes memory params) {
        _setAddress(KEY_IMPLEMENTATION, gatewayImplementation);

        if (gatewayImplementation.code.length == 0) revert InvalidImplementation();

        // solhint-disable-next-line avoid-low-level-calls
        (bool success, ) = gatewayImplementation.delegatecall(abi.encodeWithSelector(IAxelarGateway.setup.selector, params));

        if (!success) revert SetupFailed();
    }

    // solhint-disable-next-line no-empty-blocks
    function setup(bytes calldata params) external {}

    // solhint-disable-next-line no-complex-fallback
    fallback() external payable {
        address implementation = getAddress(KEY_IMPLEMENTATION);

        // solhint-disable-next-line no-inline-assembly
        assembly {
            calldatacopy(0, 0, calldatasize())

            let result := delegatecall(gas(), implementation, 0, calldatasize(), 0, 0)

            returndatacopy(0, 0, returndatasize())

            switch result
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    receive() external payable {
        revert NativeCurrencyNotAccepted();
    }
}

File 2 of 3 : EternalStorage.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.9;

/**
 * @title EternalStorage
 * @dev This contract holds all the necessary state variables to carry out the storage of any contract.
 */
contract EternalStorage {
    mapping(bytes32 => uint256) private _uintStorage;
    mapping(bytes32 => string) private _stringStorage;
    mapping(bytes32 => address) private _addressStorage;
    mapping(bytes32 => bytes) private _bytesStorage;
    mapping(bytes32 => bool) private _boolStorage;
    mapping(bytes32 => int256) private _intStorage;

    // *** Getter Methods ***
    function getUint(bytes32 key) public view returns (uint256) {
        return _uintStorage[key];
    }

    function getString(bytes32 key) public view returns (string memory) {
        return _stringStorage[key];
    }

    function getAddress(bytes32 key) public view returns (address) {
        return _addressStorage[key];
    }

    function getBytes(bytes32 key) public view returns (bytes memory) {
        return _bytesStorage[key];
    }

    function getBool(bytes32 key) public view returns (bool) {
        return _boolStorage[key];
    }

    function getInt(bytes32 key) public view returns (int256) {
        return _intStorage[key];
    }

    // *** Setter Methods ***
    function _setUint(bytes32 key, uint256 value) internal {
        _uintStorage[key] = value;
    }

    function _setString(bytes32 key, string memory value) internal {
        _stringStorage[key] = value;
    }

    function _setAddress(bytes32 key, address value) internal {
        _addressStorage[key] = value;
    }

    function _setBytes(bytes32 key, bytes memory value) internal {
        _bytesStorage[key] = value;
    }

    function _setBool(bytes32 key, bool value) internal {
        _boolStorage[key] = value;
    }

    function _setInt(bytes32 key, int256 value) internal {
        _intStorage[key] = value;
    }

    // *** Delete Methods ***
    function _deleteUint(bytes32 key) internal {
        delete _uintStorage[key];
    }

    function _deleteString(bytes32 key) internal {
        delete _stringStorage[key];
    }

    function _deleteAddress(bytes32 key) internal {
        delete _addressStorage[key];
    }

    function _deleteBytes(bytes32 key) internal {
        delete _bytesStorage[key];
    }

    function _deleteBool(bytes32 key) internal {
        delete _boolStorage[key];
    }

    function _deleteInt(bytes32 key) internal {
        delete _intStorage[key];
    }
}

File 3 of 3 : IAxelarGateway.sol
// SPDX-License-Identifier: MIT

pragma solidity ^0.8.9;

interface IAxelarGateway {
    /**********\
    |* Errors *|
    \**********/

    error NotSelf();
    error NotProxy();
    error InvalidCodeHash();
    error SetupFailed();
    error InvalidAuthModule();
    error InvalidTokenDeployer();
    error InvalidAmount();
    error InvalidChainId();
    error InvalidCommands();
    error TokenDoesNotExist(string symbol);
    error TokenAlreadyExists(string symbol);
    error TokenDeployFailed(string symbol);
    error TokenContractDoesNotExist(address token);
    error BurnFailed(string symbol);
    error MintFailed(string symbol);
    error InvalidSetMintLimitsParams();
    error ExceedMintLimit(string symbol);

    /**********\
    |* Events *|
    \**********/

    event TokenSent(address indexed sender, string destinationChain, string destinationAddress, string symbol, uint256 amount);

    event ContractCall(
        address indexed sender,
        string destinationChain,
        string destinationContractAddress,
        bytes32 indexed payloadHash,
        bytes payload
    );

    event ContractCallWithToken(
        address indexed sender,
        string destinationChain,
        string destinationContractAddress,
        bytes32 indexed payloadHash,
        bytes payload,
        string symbol,
        uint256 amount
    );

    event Executed(bytes32 indexed commandId);

    event TokenDeployed(string symbol, address tokenAddresses);

    event ContractCallApproved(
        bytes32 indexed commandId,
        string sourceChain,
        string sourceAddress,
        address indexed contractAddress,
        bytes32 indexed payloadHash,
        bytes32 sourceTxHash,
        uint256 sourceEventIndex
    );

    event ContractCallApprovedWithMint(
        bytes32 indexed commandId,
        string sourceChain,
        string sourceAddress,
        address indexed contractAddress,
        bytes32 indexed payloadHash,
        string symbol,
        uint256 amount,
        bytes32 sourceTxHash,
        uint256 sourceEventIndex
    );

    event TokenMintLimitUpdated(string symbol, uint256 limit);

    event OperatorshipTransferred(bytes newOperatorsData);

    event Upgraded(address indexed implementation);

    /********************\
    |* Public Functions *|
    \********************/

    function sendToken(
        string calldata destinationChain,
        string calldata destinationAddress,
        string calldata symbol,
        uint256 amount
    ) external;

    function callContract(
        string calldata destinationChain,
        string calldata contractAddress,
        bytes calldata payload
    ) external;

    function callContractWithToken(
        string calldata destinationChain,
        string calldata contractAddress,
        bytes calldata payload,
        string calldata symbol,
        uint256 amount
    ) external;

    function isContractCallApproved(
        bytes32 commandId,
        string calldata sourceChain,
        string calldata sourceAddress,
        address contractAddress,
        bytes32 payloadHash
    ) external view returns (bool);

    function isContractCallAndMintApproved(
        bytes32 commandId,
        string calldata sourceChain,
        string calldata sourceAddress,
        address contractAddress,
        bytes32 payloadHash,
        string calldata symbol,
        uint256 amount
    ) external view returns (bool);

    function validateContractCall(
        bytes32 commandId,
        string calldata sourceChain,
        string calldata sourceAddress,
        bytes32 payloadHash
    ) external returns (bool);

    function validateContractCallAndMint(
        bytes32 commandId,
        string calldata sourceChain,
        string calldata sourceAddress,
        bytes32 payloadHash,
        string calldata symbol,
        uint256 amount
    ) external returns (bool);

    /***********\
    |* Getters *|
    \***********/

    function authModule() external view returns (address);

    function tokenDeployer() external view returns (address);

    function tokenMintLimit(string memory symbol) external view returns (uint256);

    function tokenMintAmount(string memory symbol) external view returns (uint256);

    function allTokensFrozen() external view returns (bool);

    function implementation() external view returns (address);

    function tokenAddresses(string memory symbol) external view returns (address);

    function tokenFrozen(string memory symbol) external view returns (bool);

    function isCommandExecuted(bytes32 commandId) external view returns (bool);

    function adminEpoch() external view returns (uint256);

    function adminThreshold(uint256 epoch) external view returns (uint256);

    function admins(uint256 epoch) external view returns (address[] memory);

    /*******************\
    |* Admin Functions *|
    \*******************/

    function setTokenMintLimits(string[] calldata symbols, uint256[] calldata limits) external;

    function upgrade(
        address newImplementation,
        bytes32 newImplementationCodeHash,
        bytes calldata setupParams
    ) external;

    /**********************\
    |* External Functions *|
    \**********************/

    function setup(bytes calldata params) external;

    function execute(bytes calldata input) external;
}

Settings
{
  "evmVersion": "london",
  "optimizer": {
    "enabled": true,
    "runs": 1000,
    "details": {
      "peephole": true,
      "inliner": true,
      "jumpdestRemover": true,
      "orderLiterals": true,
      "deduplicate": true,
      "cse": true,
      "constantOptimizer": true,
      "yul": true,
      "yulDetails": {
        "stackAllocation": true
      }
    }
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "libraries": {}
}

Contract ABI

[{"inputs":[{"internalType":"address","name":"gatewayImplementation","type":"address"},{"internalType":"bytes","name":"params","type":"bytes"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidImplementation","type":"error"},{"inputs":[],"name":"NativeCurrencyNotAccepted","type":"error"},{"inputs":[],"name":"SetupFailed","type":"error"},{"stateMutability":"payable","type":"fallback"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getBool","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getBytes","outputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getInt","outputs":[{"internalType":"int256","name":"","type":"int256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getString","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes32","name":"key","type":"bytes32"}],"name":"getUint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes","name":"params","type":"bytes"}],"name":"setup","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b506040516107e93803806107e983398101604081905261002f916101cd565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc60005260026020527f11141f466c69fd409e1990e063b49cd6d61ed2ecff27a2e402e259ca6b9a01a380546001600160a01b0319166001600160a01b0384161790556001600160a01b0382163b6100ba5760405163340aafcd60e11b815260040160405180910390fd5b6000826001600160a01b0316639ded06df60e01b836040516024016100df919061029b565b60408051601f198184030181529181526020820180516001600160e01b03166001600160e01b031990941693909317909252905161011d91906102ce565b600060405180830381855af49150503d8060008114610158576040519150601f19603f3d011682016040523d82523d6000602084013e61015d565b606091505b505090508061017f576040516397905dfb60e01b815260040160405180910390fd5b5050506102ea565b634e487b7160e01b600052604160045260246000fd5b60005b838110156101b85781810151838201526020016101a0565b838111156101c7576000848401525b50505050565b600080604083850312156101e057600080fd5b82516001600160a01b03811681146101f757600080fd5b60208401519092506001600160401b038082111561021457600080fd5b818501915085601f83011261022857600080fd5b81518181111561023a5761023a610187565b604051601f8201601f19908116603f0116810190838211818310171561026257610262610187565b8160405282815288602084870101111561027b57600080fd5b61028c83602083016020880161019d565b80955050505050509250929050565b60208152600082518060208401526102ba81604085016020870161019d565b601f01601f19169190910160400192915050565b600082516102e081846020870161019d565b9190910192915050565b6104f0806102f96000396000f3fe6080604052600436106100745760003560e01c80639ded06df1161004e5780639ded06df1461020c578063bd02d0f51461022d578063c031a18014610268578063dc97d96214610288576100ab565b806321f8a721146101325780637ae1cfca1461019f578063986e791a146101df576100ab565b366100ab576040517f858d70bd00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc600090815260026020527f11141f466c69fd409e1990e063b49cd6d61ed2ecff27a2e402e259ca6b9a01a35473ffffffffffffffffffffffffffffffffffffffff169036908037600080366000845af43d6000803e80801561012d573d6000f35b3d6000fd5b34801561013e57600080fd5b5061017561014d366004610374565b60009081526002602052604090205473ffffffffffffffffffffffffffffffffffffffff1690565b60405173ffffffffffffffffffffffffffffffffffffffff90911681526020015b60405180910390f35b3480156101ab57600080fd5b506101cf6101ba366004610374565b60009081526004602052604090205460ff1690565b6040519015158152602001610196565b3480156101eb57600080fd5b506101ff6101fa366004610374565b6102b5565b60405161019691906103da565b34801561021857600080fd5b5061022b6102273660046103f4565b5050565b005b34801561023957600080fd5b5061025a610248366004610374565b60009081526020819052604090205490565b604051908152602001610196565b34801561027457600080fd5b506101ff610283366004610374565b610357565b34801561029457600080fd5b5061025a6102a3366004610374565b60009081526005602052604090205490565b60008181526001602052604090208054606091906102d290610466565b80601f01602080910402602001604051908101604052809291908181526020018280546102fe90610466565b801561034b5780601f106103205761010080835404028352916020019161034b565b820191906000526020600020905b81548152906001019060200180831161032e57829003601f168201915b50505050509050919050565b60008181526003602052604090208054606091906102d290610466565b60006020828403121561038657600080fd5b5035919050565b6000815180845260005b818110156103b357602081850181015186830182015201610397565b818111156103c5576000602083870101525b50601f01601f19169290920160200192915050565b6020815260006103ed602083018461038d565b9392505050565b6000806020838503121561040757600080fd5b823567ffffffffffffffff8082111561041f57600080fd5b818501915085601f83011261043357600080fd5b81358181111561044257600080fd5b86602082850101111561045457600080fd5b60209290920196919550909350505050565b600181811c9082168061047a57607f821691505b602082108114156104b4577f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b5091905056fea264697066735822122069dff699a34cf8bf80b00e2030730390655a53519c00ba0e4306c3269ae7a2fa64736f6c6343000809003300000000000000000000000005823c334150a48acd5d325fba16147c21ba3653000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000000800000000000000000000000015837c1318ab83d99b19392fd4811813f520d84300000000000000000000000064247a441cef0b7a46614ac34d046c0fdfe35954000000000000000000000000ee64c8eb48437dbd2d5b8598dc4a3e8a6c8cead9000000000000000000000000b69f9beeec3e245ea4631b74c222b04e155a5c26000000000000000000000000eb73eca75e40cf21dcfd64de640d678b60082d580000000000000000000000006d0a01a933ee446e58aec5e55d632e4251244fcc0000000000000000000000005ca6b6a137040c59f3da13c960fb6cf9e2b9f6380000000000000000000000002a923c9428233470e25f0fd1cef5c8831d4407f30000000000000000000000000000000000000000000000000000000000000000

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

00000000000000000000000005823c334150a48acd5d325fba16147c21ba3653000000000000000000000000000000000000000000000000000000000000004000000000000000000000000000000000000000000000000000000000000001a0000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000000800000000000000000000000015837c1318ab83d99b19392fd4811813f520d84300000000000000000000000064247a441cef0b7a46614ac34d046c0fdfe35954000000000000000000000000ee64c8eb48437dbd2d5b8598dc4a3e8a6c8cead9000000000000000000000000b69f9beeec3e245ea4631b74c222b04e155a5c26000000000000000000000000eb73eca75e40cf21dcfd64de640d678b60082d580000000000000000000000006d0a01a933ee446e58aec5e55d632e4251244fcc0000000000000000000000005ca6b6a137040c59f3da13c960fb6cf9e2b9f6380000000000000000000000002a923c9428233470e25f0fd1cef5c8831d4407f30000000000000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : gatewayImplementation (address): 0x05823c334150a48acd5d325fba16147c21ba3653
Arg [1] : params (bytes): 0x000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000000800000000000000000000000015837c1318ab83d99b19392fd4811813f520d84300000000000000000000000064247a441cef0b7a46614ac34d046c0fdfe35954000000000000000000000000ee64c8eb48437dbd2d5b8598dc4a3e8a6c8cead9000000000000000000000000b69f9beeec3e245ea4631b74c222b04e155a5c26000000000000000000000000eb73eca75e40cf21dcfd64de640d678b60082d580000000000000000000000006d0a01a933ee446e58aec5e55d632e4251244fcc0000000000000000000000005ca6b6a137040c59f3da13c960fb6cf9e2b9f6380000000000000000000000002a923c9428233470e25f0fd1cef5c8831d4407f30000000000000000000000000000000000000000000000000000000000000000

-----Encoded View---------------
16 Constructor Arguments found :
Arg [0] : 00000000000000000000000005823c334150a48acd5d325fba16147c21ba3653
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [2] : 00000000000000000000000000000000000000000000000000000000000001a0
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000060
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000180
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000008
Arg [7] : 00000000000000000000000015837c1318ab83d99b19392fd4811813f520d843
Arg [8] : 00000000000000000000000064247a441cef0b7a46614ac34d046c0fdfe35954
Arg [9] : 000000000000000000000000ee64c8eb48437dbd2d5b8598dc4a3e8a6c8cead9
Arg [10] : 000000000000000000000000b69f9beeec3e245ea4631b74c222b04e155a5c26
Arg [11] : 000000000000000000000000eb73eca75e40cf21dcfd64de640d678b60082d58
Arg [12] : 0000000000000000000000006d0a01a933ee446e58aec5e55d632e4251244fcc
Arg [13] : 0000000000000000000000005ca6b6a137040c59f3da13c960fb6cf9e2b9f638
Arg [14] : 0000000000000000000000002a923c9428233470e25f0fd1cef5c8831d4407f3
Arg [15] : 0000000000000000000000000000000000000000000000000000000000000000


Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Block Uncle Number Difficulty Gas Used Reward
Loading