ETH Price: $2,809.11 (-4.85%)

Contract

0xce16F69375520ab01377ce7B88f5BA8C48F8D666

Overview

ETH Balance

Linea Mainnet LogoLinea Mainnet LogoLinea Mainnet Logo0 ETH

ETH Value

$0.00

Token Holdings

More Info

Private Name Tags

Transaction Hash
Block
From
To
Execute With Tok...283067892026-01-25 19:06:061 hr ago1769367966IN
Squid: Squid Router Proxy
0 ETH0.000005340.041904
Express Execute ...283063422026-01-25 18:48:521 hr ago1769366932IN
Squid: Squid Router Proxy
0 ETH0.000037450.10615092
Execute With Tok...283037522026-01-25 17:03:023 hrs ago1769360582IN
Squid: Squid Router Proxy
0 ETH0.000004690.041904
Express Execute ...283033542026-01-25 16:47:383 hrs ago1769359658IN
Squid: Squid Router Proxy
0 ETH0.000027820.07518869
Fund And Run Mul...283027032026-01-25 16:22:303 hrs ago1769358150IN
Squid: Squid Router Proxy
0 ETH0.00000960.03960017
Execute With Tok...282963502026-01-25 12:21:327 hrs ago1769343692IN
Squid: Squid Router Proxy
0 ETH0.000004710.04347588
Express Execute ...282963112026-01-25 12:20:087 hrs ago1769343608IN
Squid: Squid Router Proxy
0 ETH0.000505722
Execute With Tok...282960052026-01-25 12:08:568 hrs ago1769342936IN
Squid: Squid Router Proxy
0 ETH0.000005510.04476825
Express Execute ...282959662026-01-25 12:07:328 hrs ago1769342852IN
Squid: Squid Router Proxy
0 ETH0.000025320.10056959
Execute With Tok...282942292026-01-25 11:05:029 hrs ago1769339102IN
Squid: Squid Router Proxy
0 ETH0.000007530.06944723
Execute With Tok...282940942026-01-25 11:00:129 hrs ago1769338812IN
Squid: Squid Router Proxy
0 ETH0.000004540.041904
Execute With Tok...282940812026-01-25 10:59:469 hrs ago1769338786IN
Squid: Squid Router Proxy
0 ETH0.000004890.04511735
Execute With Tok...282940812026-01-25 10:59:469 hrs ago1769338786IN
Squid: Squid Router Proxy
0 ETH0.000004890.04511735
Execute With Tok...282940792026-01-25 10:59:429 hrs ago1769338782IN
Squid: Squid Router Proxy
0 ETH0.000005990.0552637
Execute With Tok...282940792026-01-25 10:59:429 hrs ago1769338782IN
Squid: Squid Router Proxy
0 ETH0.000005990.0552637
Execute With Tok...282940792026-01-25 10:59:429 hrs ago1769338782IN
Squid: Squid Router Proxy
0 ETH0.000005990.0552637
Execute With Tok...282937142026-01-25 10:46:029 hrs ago1769337962IN
Squid: Squid Router Proxy
0 ETH0.000004540.041904
Execute With Tok...282937142026-01-25 10:46:029 hrs ago1769337962IN
Squid: Squid Router Proxy
0 ETH0.000004540.041904
Execute With Tok...282937122026-01-25 10:45:589 hrs ago1769337958IN
Squid: Squid Router Proxy
0 ETH0.000004540.041904
Execute With Tok...282937112026-01-25 10:45:569 hrs ago1769337956IN
Squid: Squid Router Proxy
0 ETH0.000004540.041904
Execute With Tok...282937112026-01-25 10:45:569 hrs ago1769337956IN
Squid: Squid Router Proxy
0 ETH0.000004540.041904
Execute With Tok...282933832026-01-25 10:33:569 hrs ago1769337236IN
Squid: Squid Router Proxy
0 ETH0.000004070.03759494
Execute With Tok...282933662026-01-25 10:33:229 hrs ago1769337202IN
Squid: Squid Router Proxy
0 ETH0.000004540.041904
Execute With Tok...282930722026-01-25 10:22:329 hrs ago1769336552IN
Squid: Squid Router Proxy
0 ETH0.000005040.04647846
Express Execute ...282930472026-01-25 10:21:369 hrs ago1769336496IN
Squid: Squid Router Proxy
0 ETH0.000018320.07249488
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To
283067892026-01-25 19:06:061 hr ago1769367966
Squid: Squid Router Proxy
0 ETH
283067892026-01-25 19:06:061 hr ago1769367966
Squid: Squid Router Proxy
0 ETH
283067892026-01-25 19:06:061 hr ago1769367966
Squid: Squid Router Proxy
0 ETH
283067892026-01-25 19:06:061 hr ago1769367966
Squid: Squid Router Proxy
0 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0.00019551 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0.00019551 ETH
283065442026-01-25 18:56:361 hr ago1769367396
Squid: Squid Router Proxy
0.00019551 ETH
283063422026-01-25 18:48:521 hr ago1769366932
Squid: Squid Router Proxy
0 ETH
283063422026-01-25 18:48:521 hr ago1769366932
Squid: Squid Router Proxy
0 ETH
283063422026-01-25 18:48:521 hr ago1769366932
Squid: Squid Router Proxy
0 ETH
283063422026-01-25 18:48:521 hr ago1769366932
Squid: Squid Router Proxy
0 ETH
283063422026-01-25 18:48:521 hr ago1769366932
Squid: Squid Router Proxy
0 ETH
283063422026-01-25 18:48:521 hr ago1769366932
Squid: Squid Router Proxy
0 ETH
283063422026-01-25 18:48:521 hr ago1769366932
Squid: Squid Router Proxy
0 ETH
283037522026-01-25 17:03:023 hrs ago1769360582
Squid: Squid Router Proxy
0 ETH
283037522026-01-25 17:03:023 hrs ago1769360582
Squid: Squid Router Proxy
0 ETH
283037522026-01-25 17:03:023 hrs ago1769360582
Squid: Squid Router Proxy
0 ETH
283037522026-01-25 17:03:023 hrs ago1769360582
Squid: Squid Router Proxy
0 ETH
283033542026-01-25 16:47:383 hrs ago1769359658
Squid: Squid Router Proxy
0 ETH
283033542026-01-25 16:47:383 hrs ago1769359658
Squid: Squid Router Proxy
0 ETH
View All Internal Transactions
Cross-Chain Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SquidRouterProxy

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 99999 runs

Other Settings:
default evmVersion
// SPDX-License-Identifier: MIT
pragma solidity 0.8.17;

import {Proxy} from "@axelar-network/axelar-gmp-sdk-solidity/contracts/upgradables/Proxy.sol";

contract SquidRouterProxy is Proxy {
    function contractId() internal pure override returns (bytes32 id) {
        id = keccak256("squid-router");
    }
}

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

// 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 upgrade(
        address newImplementation,
        bytes32 newImplementationCodeHash,
        bytes calldata params
    ) external;

    function setup(bytes calldata data) external;
}

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.0;

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
{
  "optimizer": {
    "enabled": true,
    "runs": 99999
  },
  "viaIR": true,
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "metadata": {
    "useLiteralContent": true
  },
  "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"}]

6080806040523461003957337f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c05561069a908161003f8239f35b600080fdfe6080604052600436101561002c575b361561001f575b61001d6105f7565b005b610027610639565b610015565b6000803560e01c908163378dfd8e1461006b575080635c60da1b1461006257639ded06df0361000e5761005d61029f565b61000e565b5061005d61022d565b346101185760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610118576100a261011b565b6100aa610143565b6044359067ffffffffffffffff8211610114573660238301121561011457816004013592846100d8856101e4565b936100e66040519586610196565b8585523660248783010111610110578561010d9660246020930183880137850101526103b8565b80f35b5080fd5b8380fd5b80fd5b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361013e57565b600080fd5b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361013e57565b507f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176101d757604052565b6101df610166565b604052565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f60209267ffffffffffffffff8111610220575b01160190565b610228610166565b61021a565b503461013e5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013e5760207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff60405191168152f35b503461013e5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013e5760043567ffffffffffffffff80821161013e573660238301121561013e57816004013590811161013e573691016024011161013e57005b9081602091031261013e575190565b506040513d6000823e3d90fd5b60208082528251818301819052939260005b858110610374575050507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006040809697860101520116010190565b818101830151848201604001528201610334565b3d156103b3573d90610399826101e4565b916103a76040519384610196565b82523d6000602084013e565b606090565b91909173ffffffffffffffffffffffffffffffffffffffff917f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c0938385541633036105cd577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc93808554166105a357600460207fc097d45e5a99ca772ab5ec2e5457c2e249760944b95b0b97cbb6b03ec55bae8492604051928380927f8291286c00000000000000000000000000000000000000000000000000000000825289165afa908115610596575b600091610568575b500361053e576000948386955555604051610500816104d460208201947f9ded06df00000000000000000000000000000000000000000000000000000000865260248301610322565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610196565b51915af461050c610388565b501561051457565b60046040517f97905dfb000000000000000000000000000000000000000000000000000000008152fd5b60046040517f68155f9a000000000000000000000000000000000000000000000000000000008152fd5b610589915060203d811161058f575b6105818183610196565b810190610306565b3861048b565b503d610577565b61059e610315565b610483565b60046040517f0dc149f0000000000000000000000000000000000000000000000000000000008152fd5b60046040517f30cd7471000000000000000000000000000000000000000000000000000000008152fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546000808092368280378136915af43d82803e15610635573d90f35b3d90fd5b5060046040517f37334834000000000000000000000000000000000000000000000000000000008152fdfea26469706673582212205a1ae4e4554ee5e5b30712df541f3571c30f56cc0963334dec2abbb4f5176f4d64736f6c63430008110033

Deployed Bytecode

0x6080604052600436101561002c575b361561001f575b61001d6105f7565b005b610027610639565b610015565b6000803560e01c908163378dfd8e1461006b575080635c60da1b1461006257639ded06df0361000e5761005d61029f565b61000e565b5061005d61022d565b346101185760607ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc360112610118576100a261011b565b6100aa610143565b6044359067ffffffffffffffff8211610114573660238301121561011457816004013592846100d8856101e4565b936100e66040519586610196565b8585523660248783010111610110578561010d9660246020930183880137850101526103b8565b80f35b5080fd5b8380fd5b80fd5b6004359073ffffffffffffffffffffffffffffffffffffffff8216820361013e57565b600080fd5b6024359073ffffffffffffffffffffffffffffffffffffffff8216820361013e57565b507f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b90601f7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0910116810190811067ffffffffffffffff8211176101d757604052565b6101df610166565b604052565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f60209267ffffffffffffffff8111610220575b01160190565b610228610166565b61021a565b503461013e5760007ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013e5760207f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5473ffffffffffffffffffffffffffffffffffffffff60405191168152f35b503461013e5760207ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc36011261013e5760043567ffffffffffffffff80821161013e573660238301121561013e57816004013590811161013e573691016024011161013e57005b9081602091031261013e575190565b506040513d6000823e3d90fd5b60208082528251818301819052939260005b858110610374575050507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0601f8460006040809697860101520116010190565b818101830151848201604001528201610334565b3d156103b3573d90610399826101e4565b916103a76040519384610196565b82523d6000602084013e565b606090565b91909173ffffffffffffffffffffffffffffffffffffffff917f02016836a56b71f0d02689e69e326f4f4c1b9057164ef592671cf0d37c8040c0938385541633036105cd577f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc93808554166105a357600460207fc097d45e5a99ca772ab5ec2e5457c2e249760944b95b0b97cbb6b03ec55bae8492604051928380927f8291286c00000000000000000000000000000000000000000000000000000000825289165afa908115610596575b600091610568575b500361053e576000948386955555604051610500816104d460208201947f9ded06df00000000000000000000000000000000000000000000000000000000865260248301610322565b037fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe08101835282610196565b51915af461050c610388565b501561051457565b60046040517f97905dfb000000000000000000000000000000000000000000000000000000008152fd5b60046040517f68155f9a000000000000000000000000000000000000000000000000000000008152fd5b610589915060203d811161058f575b6105818183610196565b810190610306565b3861048b565b503d610577565b61059e610315565b610483565b60046040517f0dc149f0000000000000000000000000000000000000000000000000000000008152fd5b60046040517f30cd7471000000000000000000000000000000000000000000000000000000008152fd5b507f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546000808092368280378136915af43d82803e15610635573d90f35b3d90fd5b5060046040517f37334834000000000000000000000000000000000000000000000000000000008152fdfea26469706673582212205a1ae4e4554ee5e5b30712df541f3571c30f56cc0963334dec2abbb4f5176f4d64736f6c63430008110033

Block Transaction Gas Used Reward
view all blocks sequenced

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

Validator Index Block Amount
View All Withdrawals

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