S Price: $0.603573 (-0.36%)

Contract

0xB2a477C6BA5E96f6dECbCEd836cB7d3d32ef9ecD

Overview

S Balance

Sonic LogoSonic LogoSonic Logo0 S

S Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Set Prices And E...50369422025-01-22 21:12:2013 secs ago1737580340IN
0xB2a477C6...d32ef9ecD
0 S0.0292941971.5
Set Prices And E...50355672025-01-22 20:59:1713 mins ago1737579557IN
0xB2a477C6...d32ef9ecD
0 S0.0294052371.5
Set Prices And E...50341672025-01-22 20:45:2227 mins ago1737578722IN
0xB2a477C6...d32ef9ecD
0 S0.0401539771.5
Set Prices And E...50340552025-01-22 20:44:2028 mins ago1737578660IN
0xB2a477C6...d32ef9ecD
0 S0.0283403171.5
Set Prices And E...50334432025-01-22 20:37:5034 mins ago1737578270IN
0xB2a477C6...d32ef9ecD
0 S0.0401521171.5
Set Prices And E...50294162025-01-22 19:57:501 hr ago1737575870IN
0xB2a477C6...d32ef9ecD
1 wei0.0526384471.5
Set Prices And E...50292412025-01-22 19:55:571 hr ago1737575757IN
0xB2a477C6...d32ef9ecD
0 S0.029404371.5
Set Prices And E...50283392025-01-22 19:46:191 hr ago1737575179IN
0xB2a477C6...d32ef9ecD
0 S0.029404371.5
Set Prices And E...50261532025-01-22 19:24:021 hr ago1737573842IN
0xB2a477C6...d32ef9ecD
1 wei0.0540933971.5
Set Prices And E...50259592025-01-22 19:21:591 hr ago1737573719IN
0xB2a477C6...d32ef9ecD
1 wei0.041771371.5
Set Prices And E...50255912025-01-22 19:18:081 hr ago1737573488IN
0xB2a477C6...d32ef9ecD
1 wei0.0549097871.5
Set Prices And L...50246692025-01-22 19:07:412 hrs ago1737572861IN
0xB2a477C6...d32ef9ecD
1 wei0.0283420555
Set Prices And L...50236112025-01-22 18:57:112 hrs ago1737572231IN
0xB2a477C6...d32ef9ecD
1 wei0.0290479755
Set Prices And E...50197812025-01-22 18:20:102 hrs ago1737570010IN
0xB2a477C6...d32ef9ecD
1 wei0.0421625471.5
Set Prices And E...50195432025-01-22 18:17:582 hrs ago1737569878IN
0xB2a477C6...d32ef9ecD
0 S0.0283393871.5
Set Prices And E...50189832025-01-22 18:12:542 hrs ago1737569574IN
0xB2a477C6...d32ef9ecD
1 wei0.0462336171.5
Set Prices And E...50188892025-01-22 18:12:133 hrs ago1737569533IN
0xB2a477C6...d32ef9ecD
1 wei0.0431526871.5
Set Prices And E...50177142025-01-22 18:01:373 hrs ago1737568897IN
0xB2a477C6...d32ef9ecD
0 S0.0405285571.5
Set Prices And E...50171172025-01-22 17:56:443 hrs ago1737568604IN
0xB2a477C6...d32ef9ecD
1 wei0.0526393771.5
Set Prices And E...50156102025-01-22 17:41:203 hrs ago1737567680IN
0xB2a477C6...d32ef9ecD
1 wei0.0549119271.5
Set Prices And E...50087612025-01-22 16:38:214 hrs ago1737563901IN
0xB2a477C6...d32ef9ecD
1 wei0.0552607771.5
Set Prices And E...50065472025-01-22 16:21:044 hrs ago1737562864IN
0xB2a477C6...d32ef9ecD
1 wei0.0421638371.5
Set Prices And E...50039962025-01-22 16:01:065 hrs ago1737561666IN
0xB2a477C6...d32ef9ecD
1 wei0.0552702171.5
Set Prices And E...50034892025-01-22 15:56:595 hrs ago1737561419IN
0xB2a477C6...d32ef9ecD
0 S0.0283403171.5
Set Prices And E...50004132025-01-22 15:32:125 hrs ago1737559932IN
0xB2a477C6...d32ef9ecD
0 S0.0401530471.5
View all transactions

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
50294162025-01-22 19:57:501 hr ago1737575870
0xB2a477C6...d32ef9ecD
1 wei
50261532025-01-22 19:24:021 hr ago1737573842
0xB2a477C6...d32ef9ecD
1 wei
50259592025-01-22 19:21:591 hr ago1737573719
0xB2a477C6...d32ef9ecD
1 wei
50255912025-01-22 19:18:081 hr ago1737573488
0xB2a477C6...d32ef9ecD
1 wei
50246692025-01-22 19:07:412 hrs ago1737572861
0xB2a477C6...d32ef9ecD
1 wei
50236112025-01-22 18:57:112 hrs ago1737572231
0xB2a477C6...d32ef9ecD
1 wei
50197812025-01-22 18:20:102 hrs ago1737570010
0xB2a477C6...d32ef9ecD
1 wei
50189832025-01-22 18:12:542 hrs ago1737569574
0xB2a477C6...d32ef9ecD
1 wei
50188892025-01-22 18:12:133 hrs ago1737569533
0xB2a477C6...d32ef9ecD
1 wei
50171172025-01-22 17:56:443 hrs ago1737568604
0xB2a477C6...d32ef9ecD
1 wei
50156102025-01-22 17:41:203 hrs ago1737567680
0xB2a477C6...d32ef9ecD
1 wei
50087612025-01-22 16:38:214 hrs ago1737563901
0xB2a477C6...d32ef9ecD
1 wei
50065472025-01-22 16:21:044 hrs ago1737562864
0xB2a477C6...d32ef9ecD
1 wei
50039962025-01-22 16:01:065 hrs ago1737561666
0xB2a477C6...d32ef9ecD
1 wei
49960652025-01-22 14:59:506 hrs ago1737557990
0xB2a477C6...d32ef9ecD
1 wei
49959152025-01-22 14:58:246 hrs ago1737557904
0xB2a477C6...d32ef9ecD
1 wei
49933542025-01-22 14:35:486 hrs ago1737556548
0xB2a477C6...d32ef9ecD
2 wei
49925672025-01-22 14:29:186 hrs ago1737556158
0xB2a477C6...d32ef9ecD
1 wei
49825362025-01-22 13:07:108 hrs ago1737551230
0xB2a477C6...d32ef9ecD
1 wei
49810432025-01-22 12:54:468 hrs ago1737550486
0xB2a477C6...d32ef9ecD
1 wei
49795762025-01-22 12:42:068 hrs ago1737549726
0xB2a477C6...d32ef9ecD
1 wei
49772682025-01-22 12:21:578 hrs ago1737548517
0xB2a477C6...d32ef9ecD
1 wei
49730742025-01-22 11:45:119 hrs ago1737546311
0xB2a477C6...d32ef9ecD
1 wei
49706652025-01-22 11:24:439 hrs ago1737545083
0xB2a477C6...d32ef9ecD
1 wei
49705472025-01-22 11:23:409 hrs ago1737545020
0xB2a477C6...d32ef9ecD
1 wei
View All Internal Transactions
Loading...
Loading

Similar Match Source Code
This contract matches the deployed Bytecode of the Source Code for Contract 0x2D270f66...B5C8a7493
The constructor portion of the code might be different and could alter the actual behaviour of the contract

Contract Name:
EIP173Proxy

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 999999 runs

Other Settings:
london EvmVersion, MIT license
File 1 of 2 : EIP173Proxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

import "./Proxy.sol";

interface ERC165 {
    function supportsInterface(bytes4 id) external view returns (bool);
}

///@notice Proxy implementing EIP173 for ownership management
contract EIP173Proxy is Proxy {
    // ////////////////////////// EVENTS ///////////////////////////////////////////////////////////////////////

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    // /////////////////////// CONSTRUCTOR //////////////////////////////////////////////////////////////////////

    constructor(
        address implementationAddress,
        address ownerAddress,
        bytes memory data
    ) payable {
        _setOwner(ownerAddress);
        _setImplementation(implementationAddress, data);
    }

    // ///////////////////// EXTERNAL ///////////////////////////////////////////////////////////////////////////

    function owner() external view returns (address) {
        return _owner();
    }

    function supportsInterface(bytes4 id) external view returns (bool) {
        if (id == 0x01ffc9a7 || id == 0x7f5828d0) {
            return true;
        }
        if (id == 0xFFFFFFFF) {
            return false;
        }

        ERC165 implementation;
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            implementation := sload(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc)
        }

        // Technically this is not standard compliant as ERC-165 require 30,000 gas which that call cannot ensure
        // because it is itself inside `supportsInterface` that might only get 30,000 gas.
        // In practise this is unlikely to be an issue.
        try implementation.supportsInterface(id) returns (bool support) {
            return support;
        } catch {
            return false;
        }
    }

    function transferOwnership(address newOwner) external onlyOwner {
        _setOwner(newOwner);
    }

    function upgradeTo(address newImplementation) external onlyOwner {
        _setImplementation(newImplementation, "");
    }

    function upgradeToAndCall(address newImplementation, bytes calldata data) external payable onlyOwner {
        _setImplementation(newImplementation, data);
    }

    // /////////////////////// MODIFIERS ////////////////////////////////////////////////////////////////////////

    modifier onlyOwner() {
        require(msg.sender == _owner(), "NOT_AUTHORIZED");
        _;
    }

    // ///////////////////////// INTERNAL //////////////////////////////////////////////////////////////////////

    function _owner() internal view returns (address adminAddress) {
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            adminAddress := sload(0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103)
        }
    }

    function _setOwner(address newOwner) internal {
        address previousOwner = _owner();
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            sstore(0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103, newOwner)
        }
        emit OwnershipTransferred(previousOwner, newOwner);
    }
}

File 2 of 2 : Proxy.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

// EIP-1967
abstract contract Proxy {
    // /////////////////////// EVENTS ///////////////////////////////////////////////////////////////////////////

    event ProxyImplementationUpdated(address indexed previousImplementation, address indexed newImplementation);

    // ///////////////////// EXTERNAL ///////////////////////////////////////////////////////////////////////////

    receive() external payable virtual {
        revert("ETHER_REJECTED"); // explicit reject by default
    }

    fallback() external payable {
        _fallback();
    }

    // ///////////////////////// INTERNAL //////////////////////////////////////////////////////////////////////

    function _fallback() internal {
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            let implementationAddress := sload(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc)
            calldatacopy(0x0, 0x0, calldatasize())
            let success := delegatecall(gas(), implementationAddress, 0x0, calldatasize(), 0, 0)
            let retSz := returndatasize()
            returndatacopy(0, 0, retSz)
            switch success
            case 0 {
                revert(0, retSz)
            }
            default {
                return(0, retSz)
            }
        }
    }

    function _setImplementation(address newImplementation, bytes memory data) internal {
        address previousImplementation;
        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            previousImplementation := sload(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc)
        }

        // solhint-disable-next-line security/no-inline-assembly
        assembly {
            sstore(0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc, newImplementation)
        }

        emit ProxyImplementationUpdated(previousImplementation, newImplementation);

        if (data.length > 0) {
            (bool success, ) = newImplementation.delegatecall(data);
            if (!success) {
                assembly {
                    // This assembly ensure the revert contains the exact string data
                    let returnDataSize := returndatasize()
                    returndatacopy(0, 0, returnDataSize)
                    revert(0, returnDataSize)
                }
            }
        }
    }
}

Settings
{
  "evmVersion": "london",
  "libraries": {},
  "metadata": {
    "bytecodeHash": "ipfs",
    "useLiteralContent": true
  },
  "optimizer": {
    "enabled": true,
    "runs": 999999
  },
  "remappings": [],
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"implementationAddress","type":"address"},{"internalType":"address","name":"ownerAddress","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousImplementation","type":"address"},{"indexed":true,"internalType":"address","name":"newImplementation","type":"address"}],"name":"ProxyImplementationUpdated","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bytes4","name":"id","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"}],"name":"upgradeTo","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newImplementation","type":"address"},{"internalType":"bytes","name":"data","type":"bytes"}],"name":"upgradeToAndCall","outputs":[],"stateMutability":"payable","type":"function"},{"stateMutability":"payable","type":"receive"}]

Deployed Bytecode

0x60806040526004361061005e5760003560e01c80634f1ef286116100435780634f1ef286146101295780638da5cb5b1461013c578063f2fde38b14610176576100ca565b806301ffc9a7146100d45780633659cfe614610109576100ca565b366100ca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f45544845525f52454a454354454400000000000000000000000000000000000060448201526064015b60405180910390fd5b6100d2610196565b005b3480156100e057600080fd5b506100f46100ef366004610806565b6101e1565b60405190151581526020015b60405180910390f35b34801561011557600080fd5b506100d2610124366004610871565b6103af565b6100d261013736600461088c565b610481565b34801561014857600080fd5b5061015161057c565b60405173ffffffffffffffffffffffffffffffffffffffff9091168152602001610100565b34801561018257600080fd5b506100d2610191366004610871565b6105ab565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5460003681823780813683855af491503d8082833e8280156101d7578183f35b8183fd5b50505050565b60007f01ffc9a7000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316148061027457507f7f5828d0000000000000000000000000000000000000000000000000000000007fffffffff000000000000000000000000000000000000000000000000000000008316145b1561028157506001919050565b7fffffffff0000000000000000000000000000000000000000000000000000000080831614156102b357506000919050565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546040517f01ffc9a70000000000000000000000000000000000000000000000000000000081527fffffffff000000000000000000000000000000000000000000000000000000008416600482015273ffffffffffffffffffffffffffffffffffffffff8216906301ffc9a790602401602060405180830381865afa92505050801561039b575060408051601f3d9081017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe01682019092526103989181019061090f565b60015b6103a85750600092915050565b9392505050565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610465576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a454400000000000000000000000000000000000060448201526064016100c1565b61047e816040518060200160405280600081525061066a565b50565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610537576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a454400000000000000000000000000000000000060448201526064016100c1565b6105778383838080601f01602080910402602001604051908101604052809392919081815260200183838082843760009201919091525061066a92505050565b505050565b60006105a67fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b905090565b7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035473ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610661576040517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152600e60248201527f4e4f545f415554484f52495a454400000000000000000000000000000000000060448201526064016100c1565b61047e81610759565b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80549083905560405173ffffffffffffffffffffffffffffffffffffffff80851691908316907f5570d70a002632a7b0b3c9304cc89efb62d8da9eca0dbd7752c83b737906829690600090a38151156105775760008373ffffffffffffffffffffffffffffffffffffffff16836040516107059190610931565b600060405180830381855af49150503d8060008114610740576040519150601f19603f3d011682016040523d82523d6000602084013e610745565b606091505b50509050806101db573d806000803e806000fd5b60006107837fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035490565b9050817fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103558173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006020828403121561081857600080fd5b81357fffffffff00000000000000000000000000000000000000000000000000000000811681146103a857600080fd5b803573ffffffffffffffffffffffffffffffffffffffff8116811461086c57600080fd5b919050565b60006020828403121561088357600080fd5b6103a882610848565b6000806000604084860312156108a157600080fd5b6108aa84610848565b9250602084013567ffffffffffffffff808211156108c757600080fd5b818601915086601f8301126108db57600080fd5b8135818111156108ea57600080fd5b8760208285010111156108fc57600080fd5b6020830194508093505050509250925092565b60006020828403121561092157600080fd5b815180151581146103a857600080fd5b6000825160005b818110156109525760208186018101518583015201610938565b81811115610961576000828501525b50919091019291505056fea2646970667358221220e649c37c69d6249070369be01f33af3368fcdcea9814421a048306c2829c125964736f6c634300080a0033

Block Transaction 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.