OP Sepolia Testnet

Contract

0xbE406F0189A0B4cf3A05C286473D23791Dd44Cc6

Overview

ETH Balance

0.892140286607170624 ETH

Multichain Info

N/A
Transaction Hash
Method
Block
From
To
Add Native Gas199554312024-11-15 23:30:0286 days ago1731713402IN
0xbE406F01...91Dd44Cc6
0.000065387806023 ETH0.0000598629910.00010025
Upgrade113260752024-04-30 5:24:50286 days ago1714454690IN
0xbE406F01...91Dd44Cc6
0 ETH0.0000613903151.50000025
Update Gas Info99394442024-03-29 3:03:48318 days ago1711681428IN
0xbE406F01...91Dd44Cc6
0 ETH0.0006515101261.50000025
Upgrade98167512024-03-26 6:54:02321 days ago1711436042IN
0xbE406F01...91Dd44Cc6
0 ETH0.0000613879241.50000025
Transfer Ownersh...89067802024-03-05 5:21:40342 days ago1709616100IN
0xbE406F01...91Dd44Cc6
0 ETH0.0000554958491.50000025
Init89001372024-03-05 1:40:14342 days ago1709602814IN
0xbE406F01...91Dd44Cc6
0 ETH0.0000816931511.50000025

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
236439752025-02-09 8:41:3022 hrs ago1739090490
0xbE406F01...91Dd44Cc6
0.000115170248392 ETH
236429382025-02-09 8:06:5623 hrs ago1739088416
0xbE406F01...91Dd44Cc6
0.000261865466006 ETH
236264672025-02-08 22:57:5432 hrs ago1739055474
0xbE406F01...91Dd44Cc6
0.000733221470042 ETH
236255662025-02-08 22:27:5232 hrs ago1739053672
0xbE406F01...91Dd44Cc6
0.001578851278807 ETH
235854002025-02-08 0:09:002 days ago1738973340
0xbE406F01...91Dd44Cc6
0.000030199743976 ETH
235812052025-02-07 21:49:102 days ago1738964950
0xbE406F01...91Dd44Cc6
0.000030126755913 ETH
235338822025-02-06 19:31:443 days ago1738870304
0xbE406F01...91Dd44Cc6
0.000019986018807 ETH
235338822025-02-06 19:31:443 days ago1738870304
0xbE406F01...91Dd44Cc6
0.00001930355806 ETH
235329572025-02-06 19:00:543 days ago1738868454
0xbE406F01...91Dd44Cc6
0.0000495 ETH
235329162025-02-06 18:59:323 days ago1738868372
0xbE406F01...91Dd44Cc6
0.0000495 ETH
234931672025-02-05 20:54:344 days ago1738788874
0xbE406F01...91Dd44Cc6
0.000017491251405 ETH
234922932025-02-05 20:25:264 days ago1738787126
0xbE406F01...91Dd44Cc6
0.0000495 ETH
233346822025-02-02 4:51:448 days ago1738471904
0xbE406F01...91Dd44Cc6
0.000360618801502 ETH
233337712025-02-02 4:21:228 days ago1738470082
0xbE406F01...91Dd44Cc6
0.00045380637246 ETH
232035132025-01-30 3:59:2611 days ago1738209566
0xbE406F01...91Dd44Cc6
0.000153314187797 ETH
232033332025-01-30 3:53:2611 days ago1738209206
0xbE406F01...91Dd44Cc6
0.000153919250023 ETH
232025012025-01-30 3:25:4211 days ago1738207542
0xbE406F01...91Dd44Cc6
0.000313676685695 ETH
232023892025-01-30 3:21:5811 days ago1738207318
0xbE406F01...91Dd44Cc6
0.000327694132161 ETH
231797382025-01-29 14:46:5611 days ago1738162016
0xbE406F01...91Dd44Cc6
0.000401358316851 ETH
231786652025-01-29 14:11:1011 days ago1738159870
0xbE406F01...91Dd44Cc6
0.000588440539109 ETH
231036882025-01-27 20:31:5613 days ago1738009916
0xbE406F01...91Dd44Cc6
0.00040220051691 ETH
231026152025-01-27 19:56:1013 days ago1738007770
0xbE406F01...91Dd44Cc6
0.000592663859709 ETH
231015682025-01-27 19:21:1613 days ago1738005676
0xbE406F01...91Dd44Cc6
0.000953994772299 ETH
231004952025-01-27 18:45:3013 days ago1738003530
0xbE406F01...91Dd44Cc6
0.001169392372811 ETH
230737172025-01-27 3:52:5414 days ago1737949974
0xbE406F01...91Dd44Cc6
0.000824245767011 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

Contract Source Code (Solidity Standard Json-Input format)

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 ABI

[{"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
[ 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.