ETH Price: $1,789.58 (+9.93%)

Contract

0x2d5d7d31F671F86C782533cc367F14109a082712
 
Transaction Hash
Method
Block
From
To
Add Native Gas47306872024-06-13 9:33:09313 days ago1718271189IN
Axelar: Gas Service
0.0000534 ETH0.000003090.10488783
Add Native Gas47305782024-06-13 9:29:31313 days ago1718270971IN
Axelar: Gas Service
0.00005317 ETH0.000003040.10319441
Add Native Gas47298732024-06-13 9:06:01313 days ago1718269561IN
Axelar: Gas Service
0.00005331 ETH0.000003240.10995452
Add Native Gas47285242024-06-13 8:21:03314 days ago1718266863IN
Axelar: Gas Service
0.00005346 ETH0.000001970.06680364
Add Native Gas47284822024-06-13 8:19:39314 days ago1718266779IN
Axelar: Gas Service
0.00005954 ETH0.000001940.06580327
Add Native Gas47216752024-06-13 4:32:45314 days ago1718253165IN
Axelar: Gas Service
0.00006507 ETH0.000000340.0118
Add Native Gas46775682024-06-12 4:02:31315 days ago1718164951IN
Axelar: Gas Service
0.00005987 ETH0.000000330.0112
Add Native Gas45768502024-06-09 20:05:15317 days ago1717963515IN
Axelar: Gas Service
0.00006623 ETH0.000000330.0113
Add Native Gas45532162024-06-09 6:57:27318 days ago1717916247IN
Axelar: Gas Service
0.00006005 ETH0.000000080.00281461
Add Native Gas43951102024-06-05 15:07:15321 days ago1717600035IN
Axelar: Gas Service
0.00006808 ETH0.000000350.01214594
Add Native Gas43863142024-06-05 10:14:03321 days ago1717582443IN
Axelar: Gas Service
0.00006759 ETH0.000000290.01013402
Upgrade43327762024-06-04 4:29:27323 days ago1717475367IN
Axelar: Gas Service
0 ETH0.000057641.50896459
Add Native Gas39547182024-05-26 10:27:31331 days ago1716719251IN
Axelar: Gas Service
0.00008768 ETH0.000000330.0113
Add Native Gas38124312024-05-23 3:24:37335 days ago1716434677IN
Axelar: Gas Service
0.00007424 ETH0.000000140.00478416
Add Native Gas37973592024-05-22 19:02:13335 days ago1716404533IN
Axelar: Gas Service
0.00009544 ETH0.000000290.00993126
Add Native Gas37395512024-05-21 10:55:17336 days ago1716288917IN
Axelar: Gas Service
0.00007437 ETH0.000000290.0099587
Add Native Gas37021582024-05-20 14:08:51337 days ago1716214131IN
Axelar: Gas Service
0.00008392 ETH0.00000030.0103039
Add Native Gas34269872024-05-14 5:16:29344 days ago1715663789IN
Axelar: Gas Service
0.00011707 ETH0.000000230.00807911
Add Native Gas34153882024-05-13 22:49:51344 days ago1715640591IN
Axelar: Gas Service
0.00008479 ETH0.000000280.0096166
Add Native Gas34054822024-05-13 17:19:39344 days ago1715620779IN
Axelar: Gas Service
0.00009333 ETH0.000000280.00974364
Add Native Gas33297002024-05-11 23:13:35346 days ago1715469215IN
Axelar: Gas Service
0.00010057 ETH0.000000350.0121708
Add Native Gas31882902024-05-08 16:39:55349 days ago1715186395IN
Axelar: Gas Service
0.00010277 ETH0.000000790.02683479
Add Native Gas31840592024-05-08 14:18:53349 days ago1715177933IN
Axelar: Gas Service
0.0001154 ETH0.000000660.0226
Add Native Gas31837142024-05-08 14:07:23349 days ago1715177243IN
Axelar: Gas Service
0.0001154 ETH0.000000650.0221
Add Native Gas31836042024-05-08 14:03:43349 days ago1715177023IN
Axelar: Gas Service
0.00012 ETH0.000000620.0211
VIEW ADVANCED FILTER

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
182930412025-04-23 8:11:3747 mins ago1745395897
Axelar: Gas Service
0.00000609 ETH
182930282025-04-23 8:11:1147 mins ago1745395871
Axelar: Gas Service
0.00005498 ETH
182919842025-04-23 7:36:231 hr ago1745393783
Axelar: Gas Service
0.0000802 ETH
182919732025-04-23 7:36:011 hr ago1745393761
Axelar: Gas Service
0.0001023 ETH
182912792025-04-23 7:12:531 hr ago1745392373
Axelar: Gas Service
0.0000122 ETH
182885302025-04-23 5:41:153 hrs ago1745386875
Axelar: Gas Service
0.00007179 ETH
182879012025-04-23 5:20:173 hrs ago1745385617
Axelar: Gas Service
0.00007386 ETH
182802042025-04-23 1:03:437 hrs ago1745370223
Axelar: Gas Service
0.0000189 ETH
182801062025-04-23 1:00:277 hrs ago1745370027
Axelar: Gas Service
0.00010087 ETH
182784562025-04-23 0:05:278 hrs ago1745366727
Axelar: Gas Service
0.00005957 ETH
182783692025-04-23 0:02:338 hrs ago1745366553
Axelar: Gas Service
0.00001817 ETH
182775542025-04-22 23:35:239 hrs ago1745364923
Axelar: Gas Service
0.0001041 ETH
182773562025-04-22 23:28:479 hrs ago1745364527
Axelar: Gas Service
0.00001531 ETH
182773492025-04-22 23:28:339 hrs ago1745364513
Axelar: Gas Service
0.00001941 ETH
182764372025-04-22 22:58:0910 hrs ago1745362689
Axelar: Gas Service
0.0000647 ETH
182762992025-04-22 22:53:3310 hrs ago1745362413
Axelar: Gas Service
0.00006455 ETH
182761332025-04-22 22:48:0110 hrs ago1745362081
Axelar: Gas Service
0.00007219 ETH
182753082025-04-22 22:20:3110 hrs ago1745360431
Axelar: Gas Service
0.00006352 ETH
182705582025-04-22 19:42:1113 hrs ago1745350931
Axelar: Gas Service
0.00000335 ETH
182661862025-04-22 17:16:2715 hrs ago1745342187
Axelar: Gas Service
0.00006428 ETH
182654972025-04-22 16:53:2916 hrs ago1745340809
Axelar: Gas Service
0.00006262 ETH
182644162025-04-22 16:17:2716 hrs ago1745338647
Axelar: Gas Service
0.00005315 ETH
182640912025-04-22 16:06:3716 hrs ago1745337997
Axelar: Gas Service
0.00021496 ETH
182634642025-04-22 15:45:4317 hrs ago1745336743
Axelar: Gas Service
0.00010228 ETH
182634162025-04-22 15:44:0717 hrs ago1745336647
Axelar: Gas Service
0.00012606 ETH
View All Internal Transactions

Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
AxelarGasServiceProxy

Compiler Version
v0.8.9+commit.e5eed63a

Optimization Enabled:
Yes with 1000 runs

Other Settings:
london EvmVersion
File 1 of 3 : AxelarGasServiceProxy.sol
// SPDX-License-Identifier: MIT

pragma solidity 0.8.9;

import { Proxy } from '../util/Proxy.sol';
import { IUpgradable } from '../interfaces/IUpgradable.sol';

contract AxelarGasServiceProxy is Proxy {
    function contractId() internal pure override returns (bytes32) {
        return keccak256('axelar-gas-service');
    }
}

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

pragma solidity ^0.8.9;

// General interface for upgradable contracts
interface IUpgradable {
    error NotOwner();
    error InvalidOwner();
    error InvalidCodeHash();
    error InvalidImplementation();
    error SetupFailed();
    error NotProxy();

    event Upgraded(address indexed newImplementation);
    event OwnershipTransferred(address indexed newOwner);

    // Get current owner
    function owner() external view returns (address);

    function contractId() external pure returns (bytes32);

    function implementation() external view returns (address);

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

    function setup(bytes calldata data) external;
}

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

pragma solidity 0.8.9;

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

contract Proxy {
    error InvalidImplementation();
    error SetupFailed();
    error EtherNotAccepted();
    error NotOwner();
    error AlreadyInitialized();

    // bytes32(uint256(keccak256('eip1967.proxy.implementation')) - 1)
    bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;
    // keccak256('owner')
    bytes32 internal constant _OWNER_SLOT = 0x02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c0;

    constructor() {
        // solhint-disable-next-line no-inline-assembly
        assembly {
            sstore(_OWNER_SLOT, caller())
        }
    }

    function init(
        address implementationAddress,
        address newOwner,
        bytes memory params
    ) external {
        address owner;
        // solhint-disable-next-line no-inline-assembly
        assembly {
            owner := sload(_OWNER_SLOT)
        }
        if (msg.sender != owner) revert NotOwner();
        if (implementation() != address(0)) revert AlreadyInitialized();
        if (IUpgradable(implementationAddress).contractId() != contractId()) revert InvalidImplementation();

        // solhint-disable-next-line no-inline-assembly
        assembly {
            sstore(_IMPLEMENTATION_SLOT, implementationAddress)
            sstore(_OWNER_SLOT, newOwner)
        }
        // solhint-disable-next-line avoid-low-level-calls
        (bool success, ) = implementationAddress.delegatecall(
            //0x9ded06df is the setup selector.
            abi.encodeWithSelector(0x9ded06df, params)
        );
        if (!success) revert SetupFailed();
    }

    // solhint-disable-next-line no-empty-blocks
    function contractId() internal pure virtual returns (bytes32) {}

    function implementation() public view returns (address implementation_) {
        // solhint-disable-next-line no-inline-assembly
        assembly {
            implementation_ := sload(_IMPLEMENTATION_SLOT)
        }
    }

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

    // solhint-disable-next-line no-complex-fallback
    fallback() external payable {
        address implementaion_ = implementation();
        // solhint-disable-next-line no-inline-assembly
        assembly {
            calldatacopy(0, 0, calldatasize())

            let result := delegatecall(gas(), implementaion_, 0, calldatasize(), 0, 0)
            returndatacopy(0, 0, returndatasize())

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

    receive() external payable virtual {
        revert EtherNotAccepted();
    }
}

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 Security Audit

Contract ABI

API
[{"inputs":[],"name":"AlreadyInitialized","type":"error"},{"inputs":[],"name":"EtherNotAccepted","type":"error"},{"inputs":[],"name":"InvalidImplementation","type":"error"},{"inputs":[],"name":"NotOwner","type":"error"},{"inputs":[],"name":"SetupFailed","type":"error"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"implementation","outputs":[{"internalType":"address","name":"implementation_","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"implementationAddress","type":"address"},{"internalType":"address","name":"newOwner","type":"address"},{"internalType":"bytes","name":"params","type":"bytes"}],"name":"init","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"}],"name":"setup","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561001057600080fd5b50337f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c055610677806100436000396000f3fe6080604052600436106100385760003560e01c8063378dfd8e146100bf5780635c60da1b146100e15780639ded06df1461012c5761006f565b3661006f576040517f3733483400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006100997f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b90503660008037600080366000845af43d6000803e8080156100ba573d6000f35b3d6000fd5b3480156100cb57600080fd5b506100df6100da366004610465565b61014b565b005b3480156100ed57600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546040516001600160a01b03909116815260200160405180910390f35b34801561013857600080fd5b506100df610147366004610537565b5050565b7f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c054336001600160a01b038216146101af576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006101d97f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b031614610219576040517f0dc149f000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7ffaa2f015f2ce5aee225904728de2def86eb8837491efd21f1a04fc20d8e923f6846001600160a01b0316638291286c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561027357600080fd5b505afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab91906105a9565b146102e2576040517f68155f9a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b837f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55827f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c0556000846001600160a01b0316639ded06df8460405160240161034a91906105f2565b6040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516103989190610625565b600060405180830381855af49150503d80600081146103d3576040519150601f19603f3d011682016040523d82523d6000602084013e6103d8565b606091505b5050905080610413576040517f97905dfb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b80356001600160a01b038116811461043157600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060006060848603121561047a57600080fd5b6104838461041a565b92506104916020850161041a565b9150604084013567ffffffffffffffff808211156104ae57600080fd5b818601915086601f8301126104c257600080fd5b8135818111156104d4576104d4610436565b604051601f8201601f19908116603f011681019083821181831017156104fc576104fc610436565b8160405282815289602084870101111561051557600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000806020838503121561054a57600080fd5b823567ffffffffffffffff8082111561056257600080fd5b818501915085601f83011261057657600080fd5b81358181111561058557600080fd5b86602082850101111561059757600080fd5b60209290920196919550909350505050565b6000602082840312156105bb57600080fd5b5051919050565b60005b838110156105dd5781810151838201526020016105c5565b838111156105ec576000848401525b50505050565b60208152600082518060208401526106118160408501602087016105c2565b601f01601f19169190910160400192915050565b600082516106378184602087016105c2565b919091019291505056fea2646970667358221220651952c349510bec880aaba14c95732e193a934d9454dc378b340fc36d6ef99c64736f6c63430008090033

Deployed Bytecode

0x6080604052600436106100385760003560e01c8063378dfd8e146100bf5780635c60da1b146100e15780639ded06df1461012c5761006f565b3661006f576040517f3733483400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006100997f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b90503660008037600080366000845af43d6000803e8080156100ba573d6000f35b3d6000fd5b3480156100cb57600080fd5b506100df6100da366004610465565b61014b565b005b3480156100ed57600080fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546040516001600160a01b03909116815260200160405180910390f35b34801561013857600080fd5b506100df610147366004610537565b5050565b7f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c054336001600160a01b038216146101af576040517f30cd747100000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006101d97f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5490565b6001600160a01b031614610219576040517f0dc149f000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7ffaa2f015f2ce5aee225904728de2def86eb8837491efd21f1a04fc20d8e923f6846001600160a01b0316638291286c6040518163ffffffff1660e01b815260040160206040518083038186803b15801561027357600080fd5b505afa158015610287573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102ab91906105a9565b146102e2576040517f68155f9a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b837f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc55827f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c0556000846001600160a01b0316639ded06df8460405160240161034a91906105f2565b6040516020818303038152906040529060e01b6020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff83818316178352505050506040516103989190610625565b600060405180830381855af49150503d80600081146103d3576040519150601f19603f3d011682016040523d82523d6000602084013e6103d8565b606091505b5050905080610413576040517f97905dfb00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050505050565b80356001600160a01b038116811461043157600080fd5b919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b60008060006060848603121561047a57600080fd5b6104838461041a565b92506104916020850161041a565b9150604084013567ffffffffffffffff808211156104ae57600080fd5b818601915086601f8301126104c257600080fd5b8135818111156104d4576104d4610436565b604051601f8201601f19908116603f011681019083821181831017156104fc576104fc610436565b8160405282815289602084870101111561051557600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000806020838503121561054a57600080fd5b823567ffffffffffffffff8082111561056257600080fd5b818501915085601f83011261057657600080fd5b81358181111561058557600080fd5b86602082850101111561059757600080fd5b60209290920196919550909350505050565b6000602082840312156105bb57600080fd5b5051919050565b60005b838110156105dd5781810151838201526020016105c5565b838111156105ec576000848401525b50505050565b60208152600082518060208401526106118160408501602087016105c2565b601f01601f19169190910160400192915050565b600082516106378184602087016105c2565b919091019291505056fea2646970667358221220651952c349510bec880aaba14c95732e193a934d9454dc378b340fc36d6ef99c64736f6c63430008090033

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
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.