GLMR Price: $0.363849 (-5.28%)
Gas: 125 GWei

Contract

0xce16F69375520ab01377ce7B88f5BA8C48F8D666

Overview

GLMR Balance

Moonbeam Chain LogoMoonbeam Chain LogoMoonbeam Chain Logo0 GLMR

GLMR Value

$0.00
Transaction Hash
Method
Block
From
To
Call Bridge Call86351982024-12-06 13:22:0018 mins ago1733491320IN
Squid: Router
1.22436197 GLMR0.50117008126.25
Call Bridge Call86350292024-12-06 13:04:3036 mins ago1733490270IN
Squid: Router
0.96031837 GLMR0.593274125
Execute With Tok...86346972024-12-06 12:30:361 hr ago1733488236IN
Squid: Router
0 GLMR0.1505728175
Call Bridge Call86346882024-12-06 12:29:361 hr ago1733488176IN
Squid: Router
0.69997057 GLMR0.34999075126.8818
Call Bridge Call86345542024-12-06 12:15:541 hr ago1733487354IN
Squid: Router
3.78104962 GLMR0.54353708137
Call Bridge Call86345432024-12-06 12:14:361 hr ago1733487276IN
Squid: Router
0.87530774 GLMR0.491376125
Execute With Tok...86344992024-12-06 12:10:001 hr ago1733487000IN
Squid: Router
0 GLMR0.13842048165
Express Execute ...86344912024-12-06 12:09:001 hr ago1733486940IN
Squid: Router
0 GLMR0.60890976180
Express Execute ...86344792024-12-06 12:07:421 hr ago1733486862IN
Squid: Router
0 GLMR0.38262528180
Call Bridge Call86343222024-12-06 11:50:541 hr ago1733485854IN
Squid: Router
0.9616814 GLMR0.59490875125.001
Bridge Call86343162024-12-06 11:50:181 hr ago1733485818IN
Squid: Router
0.96071567 GLMR0.1425125
Call Bridge Call86343162024-12-06 11:50:181 hr ago1733485818IN
Squid: Router
0.9616814 GLMR0.1755014125.001
Call Bridge Call86342942024-12-06 11:48:001 hr ago1733485680IN
Squid: Router
0.9616814 GLMR0.59840278125.001
Call Bridge Call86342852024-12-06 11:47:001 hr ago1733485620IN
Squid: Router
0.96080214 GLMR0.1755014125.001
Fund And Run Mul...86342742024-12-06 11:45:541 hr ago1733485554IN
Squid: Router
0.81486835 GLMR0.210434125
Call Bridge Call86342532024-12-06 11:43:541 hr ago1733485434IN
Squid: Router
0.96080214 GLMR0.1755014125.001
Call Bridge Call86342262024-12-06 11:41:061 hr ago1733485266IN
Squid: Router
0.85442972 GLMR0.34560691126
Call Bridge Call86342252024-12-06 11:40:541 hr ago1733485254IN
Squid: Router
0.96335787 GLMR0.59514076125.001
Call Bridge Call86342082024-12-06 11:39:002 hrs ago1733485140IN
Squid: Router
0.96335787 GLMR0.59686477125.001
Call Bridge Call86342012024-12-06 11:38:182 hrs ago1733485098IN
Squid: Router
0.96335787 GLMR0.1755014125.001
Call Bridge Call86341642024-12-06 11:34:242 hrs ago1733484864IN
Squid: Router
0.96456504 GLMR0.59709677125.001
Call Bridge Call86341502024-12-06 11:32:542 hrs ago1733484774IN
Squid: Router
0.96456504 GLMR0.60460683125.001
Execute With Tok...86341502024-12-06 11:32:542 hrs ago1733484774IN
Squid: Router
0 GLMR0.10416083125.001
Call Bridge Call86341422024-12-06 11:32:062 hrs ago1733484726IN
Squid: Router
0.96456504 GLMR0.59983679125.001
Call Bridge Call86341402024-12-06 11:31:542 hrs ago1733484714IN
Squid: Router
0.83455535 GLMR0.593594125
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
86109472024-12-04 19:49:3641 hrs ago1733341776
Squid: Router
400.89178461 GLMR
86021752024-12-04 5:01:122 days ago1733288472
Squid: Router
8.71055472 GLMR
85851232024-12-03 0:11:123 days ago1733184672
Squid: Router
1,018.94887544 GLMR
85849822024-12-02 23:57:003 days ago1733183820
Squid: Router
13.29780462 GLMR
85553552024-11-30 21:45:485 days ago1733003148
Squid: Router
9.34732523 GLMR
85396212024-11-29 19:14:546 days ago1732907694
Squid: Router
201.14584281 GLMR
85362332024-11-29 13:33:427 days ago1732887222
Squid: Router
3,169.23851231 GLMR
85054362024-11-27 9:42:009 days ago1732700520
Squid: Router
415.99319576 GLMR
84830502024-11-25 19:49:4810 days ago1732564188
Squid: Router
1,785.97568814 GLMR
84800612024-11-25 14:45:0010 days ago1732545900
Squid: Router
997.03897102 GLMR
84800202024-11-25 14:40:5410 days ago1732545654
Squid: Router
1,778.46335184 GLMR
84800022024-11-25 14:39:0610 days ago1732545546
Squid: Router
2,003.32951963 GLMR
84799762024-11-25 14:36:3010 days ago1732545390
Squid: Router
1,503.46794205 GLMR
84791632024-11-25 13:14:0011 days ago1732540440
Squid: Router
501.3396533 GLMR
84696732024-11-24 21:02:3011 days ago1732482150
Squid: Router
1,160.90989299 GLMR
84696442024-11-24 20:59:3611 days ago1732481976
Squid: Router
1,000.90989299 GLMR
84696202024-11-24 20:57:1211 days ago1732481832
Squid: Router
1,000.90989299 GLMR
84695702024-11-24 20:51:5411 days ago1732481514
Squid: Router
3,177.90162649 GLMR
84695432024-11-24 20:49:1211 days ago1732481352
Squid: Router
100.93666128 GLMR
84695252024-11-24 20:47:2411 days ago1732481244
Squid: Router
34.68887276 GLMR
84483682024-11-23 8:55:0613 days ago1732352106
Squid: Router
123.14974582 GLMR
83435332024-11-15 22:06:0020 days ago1731708360
Squid: Router
1.20512005 GLMR
83260312024-11-14 16:13:0021 days ago1731600780
Squid: Router
4.00880319 GLMR
83131282024-11-13 18:06:1222 days ago1731521172
Squid: Router
506.58806489 GLMR
82819402024-11-11 12:56:5425 days ago1731329814
Squid: Router
831.7330218 GLMR
View All Internal 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
File 1 of 3 : SquidRouterProxy.sol
// 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");
    }
}

File 2 of 3 : IUpgradable.sol
// 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;
}

File 3 of 3 : Proxy.sol
// 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

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

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