AVAX Price: $22.77 (+11.19%)
Gas: 1.5 nAVAX
 

Multichain Info

Transaction Hash
Method
Block
From
To
0x14d08fca607967182025-04-23 12:46:185 mins ago1745412378IN
0x69460570...25f0Ca22d
2.5 AVAX0.000064670.11576562
0xa5a11ab4607956752025-04-23 12:23:0028 mins ago1745410980IN
0x69460570...25f0Ca22d
10.02500786 AVAX0.000115470.12291052
0x00c8169b607901872025-04-23 10:16:452 hrs ago1745403405IN
0x69460570...25f0Ca22d
4.16464757 AVAX0.000071330.13640569
0xa5a11ab4607899172025-04-23 10:11:092 hrs ago1745403069IN
0x69460570...25f0Ca22d
10.02500786 AVAX0.000127470.13119296
0x14d08fca607804122025-04-23 6:34:186 hrs ago1745390058IN
0x69460570...25f0Ca22d
4.04828592 AVAX0.00009970.17847553
0x14d08fca607762552025-04-23 4:59:227 hrs ago1745384362IN
0x69460570...25f0Ca22d
20 AVAX0.00009990.18374075
0x14d08fca607728142025-04-23 3:39:149 hrs ago1745379554IN
0x69460570...25f0Ca22d
2.24 AVAX0.000073580.11936502
0x14d08fca607702042025-04-23 2:37:4910 hrs ago1745375869IN
0x69460570...25f0Ca22d
34.6 AVAX0.000077490.10705745
0x14d08fca607638912025-04-23 0:18:0012 hrs ago1745367480IN
0x69460570...25f0Ca22d
5.45198357 AVAX0.000067470.12656724
0x14d08fca607627002025-04-22 23:50:3913 hrs ago1745365839IN
0x69460570...25f0Ca22d
2 AVAX0.000071790.11526965
0x14d08fca607602752025-04-22 22:57:2213 hrs ago1745362642IN
0x69460570...25f0Ca22d
7 AVAX0.0137521825.15218295
0x14d08fca607598992025-04-22 22:48:5514 hrs ago1745362135IN
0x69460570...25f0Ca22d
22.52856994 AVAX0.000081420.1343197
0xa5a11ab4607591452025-04-22 22:33:0714 hrs ago1745361187IN
0x69460570...25f0Ca22d
8.02611472 AVAX0.000088750.13648431
0x14d08fca607583532025-04-22 22:16:3014 hrs ago1745360190IN
0x69460570...25f0Ca22d
1.0036394 AVAX0.000544411.00160119
0x60d09476607577092025-04-22 22:00:4214 hrs ago1745359242IN
0x69460570...25f0Ca22d
5 AVAX0.001808295.43838935
0x14d08fca607565742025-04-22 21:36:1615 hrs ago1745357776IN
0x69460570...25f0Ca22d
3.98607949 AVAX0.000176850.28849045
0x14d08fca607562552025-04-22 21:29:1715 hrs ago1745357357IN
0x69460570...25f0Ca22d
21.59142098 AVAX0.000411230.54238331
0x14d08fca607542682025-04-22 20:44:5716 hrs ago1745354697IN
0x69460570...25f0Ca22d
4 AVAX0.000126930.17295329
0x14d08fca607536522025-04-22 20:31:0716 hrs ago1745353867IN
0x69460570...25f0Ca22d
2.75309146 AVAX0.000090740.15257934
0x14d08fca607518912025-04-22 19:50:4317 hrs ago1745351443IN
0x69460570...25f0Ca22d
5 AVAX0.000057870.10354146
0xa5a11ab4607508482025-04-22 19:28:1417 hrs ago1745350094IN
0x69460570...25f0Ca22d
1.02611472 AVAX0.00008090.12441691
0x14d08fca607447932025-04-22 17:15:5519 hrs ago1745342155IN
0x69460570...25f0Ca22d
2 AVAX0.000096580.14303768
0xa5a11ab4607407392025-04-22 15:43:2421 hrs ago1745336604IN
0x69460570...25f0Ca22d
2.52611472 AVAX0.002231643.43821746
0xe5f27d54607404432025-04-22 15:35:4221 hrs ago1745336142IN
0x69460570...25f0Ca22d
35 AVAX0.001159869.26
0x14d08fca607386062025-04-22 14:45:4522 hrs ago1745333145IN
0x69460570...25f0Ca22d
4.75 AVAX0.004047367.0807953
VIEW ADVANCED FILTER

Latest 25 internal transactions (View All)

Parent Transaction Hash Block From To
607967182025-04-23 12:46:185 mins ago1745412378
0x69460570...25f0Ca22d
0.00000001 AVAX
607967182025-04-23 12:46:185 mins ago1745412378
0x69460570...25f0Ca22d
2.48249999 AVAX
607967182025-04-23 12:46:185 mins ago1745412378
0x69460570...25f0Ca22d
0.0175 AVAX
607959652025-04-23 12:29:1722 mins ago1745411357
0x69460570...25f0Ca22d
0.00000001 AVAX
607959652025-04-23 12:29:1722 mins ago1745411357
0x69460570...25f0Ca22d
0.51635999 AVAX
607959652025-04-23 12:29:1722 mins ago1745411357
0x69460570...25f0Ca22d
0.00364 AVAX
607956752025-04-23 12:23:0028 mins ago1745410980
0x69460570...25f0Ca22d
0.02500786 AVAX
607956752025-04-23 12:23:0028 mins ago1745410980
0x69460570...25f0Ca22d
9.92999999 AVAX
607956752025-04-23 12:23:0028 mins ago1745410980
0x69460570...25f0Ca22d
0.07 AVAX
607948732025-04-23 12:04:4847 mins ago1745409888
0x69460570...25f0Ca22d
0.00000001 AVAX
607948732025-04-23 12:04:4847 mins ago1745409888
0x69460570...25f0Ca22d
0.49874999 AVAX
607948732025-04-23 12:04:4847 mins ago1745409888
0x69460570...25f0Ca22d
0.0005 AVAX
607948732025-04-23 12:04:4847 mins ago1745409888
0x69460570...25f0Ca22d
0.00075 AVAX
607925772025-04-23 11:11:461 hr ago1745406706
0x69460570...25f0Ca22d
0.17658391 AVAX
607925772025-04-23 11:11:461 hr ago1745406706
0x69460570...25f0Ca22d
0.00134352 AVAX
607925772025-04-23 11:11:461 hr ago1745406706
0x69460570...25f0Ca22d
0.01400533 AVAX
607907212025-04-23 10:28:392 hrs ago1745404119
0x69460570...25f0Ca22d
0.00000001 AVAX
607907212025-04-23 10:28:392 hrs ago1745404119
0x69460570...25f0Ca22d
0.25436249 AVAX
607907212025-04-23 10:28:392 hrs ago1745404119
0x69460570...25f0Ca22d
0.000255 AVAX
607907212025-04-23 10:28:392 hrs ago1745404119
0x69460570...25f0Ca22d
0.0003825 AVAX
607901872025-04-23 10:16:452 hrs ago1745403405
0x69460570...25f0Ca22d
4.13549504 AVAX
607901872025-04-23 10:16:452 hrs ago1745403405
0x69460570...25f0Ca22d
0.02915253 AVAX
607899172025-04-23 10:11:092 hrs ago1745403069
0x69460570...25f0Ca22d
0.02500786 AVAX
607899172025-04-23 10:11:092 hrs ago1745403069
0x69460570...25f0Ca22d
9.92999999 AVAX
607899172025-04-23 10:11:092 hrs ago1745403069
0x69460570...25f0Ca22d
0.07 AVAX
View All Internal Transactions
Loading...
Loading

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

Contract Name:
RangoDiamond

Compiler Version
v0.8.16+commit.07a7930e

Optimization Enabled:
Yes with 10000 runs

Other Settings:
default evmVersion
File 1 of 3 : RangoDiamond.sol
// SPDX-License-Identifier: LGPL-3.0-only
pragma solidity 0.8.16;

import { LibDiamond } from "../libraries/LibDiamond.sol";
import { IDiamondCut } from "../interfaces/IDiamondCut.sol";

contract RangoDiamond {
    constructor(address _contractOwner, address _diamondCutFacet) payable {
        LibDiamond.setContractOwner(_contractOwner);

        // Add the diamondCut external function from the diamondCutFacet
        IDiamondCut.FacetCut[] memory cut = new IDiamondCut.FacetCut[](1);
        bytes4[] memory functionSelectors = new bytes4[](1);
        functionSelectors[0] = IDiamondCut.diamondCut.selector;
        cut[0] = IDiamondCut.FacetCut({
            facetAddress: _diamondCutFacet,
            action: IDiamondCut.FacetCutAction.Add,
            functionSelectors: functionSelectors
        });
        LibDiamond.diamondCut(cut, address(0), "");
    }

    // Find facet for function that is called and execute the
    // function if a facet is found and return any value.
    // solhint-disable-next-line no-complex-fallback
    fallback() external payable {
        LibDiamond.DiamondStorage storage ds;
        bytes32 position = LibDiamond.DIAMOND_STORAGE_POSITION;

        // get diamond storage
        // solhint-disable-next-line no-inline-assembly
        assembly {
            ds.slot := position
        }

        // get facet from function selector
        address facet = ds.selectorToFacetAndPosition[msg.sig].facetAddress;

        if (facet == address(0)) {
            revert LibDiamond.FunctionDoesNotExist();
        }

        // Execute external function from facet using delegatecall and return any value.
        // solhint-disable-next-line no-inline-assembly
        assembly {
            // copy function selector and any arguments
            calldatacopy(0, 0, calldatasize())
            // execute function call using the facet
            let result := delegatecall(gas(), facet, 0, calldatasize(), 0, 0)
            // get any return value
            returndatacopy(0, 0, returndatasize())
            // return any return value or error back to the caller
            switch result
            case 0 {
                revert(0, returndatasize())
            }
            default {
                return(0, returndatasize())
            }
        }
    }

    // Able to receive ether
    // solhint-disable-next-line no-empty-blocks
    receive() external payable {}
}

File 2 of 3 : IDiamondCut.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.16;

interface IDiamondCut {
    enum FacetCutAction {
        Add,
        Replace,
        Remove
    }
    // Add=0, Replace=1, Remove=2

    struct FacetCut {
        address facetAddress;
        FacetCutAction action;
        bytes4[] functionSelectors;
    }

    /// @notice Add/replace/remove any number of functions and optionally execute
    ///         a function with delegatecall
    /// @param _diamondCut Contains the facet addresses and function selectors
    /// @param _init The address of the contract or facet to execute _calldata
    /// @param _calldata A function call, including function selector and arguments
    ///                  _calldata is executed with delegatecall on _init
    function diamondCut(
        FacetCut[] calldata _diamondCut,
        address _init,
        bytes calldata _calldata
    ) external;

    event DiamondCut(FacetCut[] _diamondCut, address _init, bytes _calldata);
}

File 3 of 3 : LibDiamond.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.16;

import { IDiamondCut } from "../interfaces/IDiamondCut.sol";

/// Implementation of EIP-2535 Diamond Standard
/// https://eips.ethereum.org/EIPS/eip-2535
library LibDiamond {
    /// @dev keccak256("diamond.standard.diamond.storage");
    bytes32 internal constant DIAMOND_STORAGE_POSITION = hex"c8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c";

    // Diamond specific errors
    error IncorrectFacetCutAction();
    error NoSelectorsInFacet();
    error FunctionAlreadyExists();
    error FacetAddressIsZero();
    error FacetAddressIsNotZero();
    error FacetContainsNoCode();
    error FunctionDoesNotExist();
    error FunctionIsImmutable();
    error InitZeroButCalldataNotEmpty();
    error CalldataEmptyButInitNotZero();
    error InitReverted();
    // ----------------

    struct FacetAddressAndPosition {
        address facetAddress;
        uint96 functionSelectorPosition; // position in facetFunctionSelectors.functionSelectors array
    }

    struct FacetFunctionSelectors {
        bytes4[] functionSelectors;
        uint256 facetAddressPosition; // position of facetAddress in facetAddresses array
    }

    struct DiamondStorage {
        // maps function selector to the facet address and
        // the position of the selector in the facetFunctionSelectors.selectors array
        mapping(bytes4 => FacetAddressAndPosition) selectorToFacetAndPosition;
        // maps facet addresses to function selectors
        mapping(address => FacetFunctionSelectors) facetFunctionSelectors;
        // facet addresses
        address[] facetAddresses;
        // Used to query if a contract implements an interface.
        // Used to implement ERC-165.
        mapping(bytes4 => bool) supportedInterfaces;
        // owner of the contract
        address contractOwner;
    }

    function diamondStorage() internal pure returns (DiamondStorage storage ds) {
        bytes32 position = DIAMOND_STORAGE_POSITION;
        // solhint-disable-next-line no-inline-assembly
        assembly {
            ds.slot := position
        }
    }

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

    function setContractOwner(address _newOwner) internal {
        DiamondStorage storage ds = diamondStorage();
        address previousOwner = ds.contractOwner;
        ds.contractOwner = _newOwner;
        emit OwnershipTransferred(previousOwner, _newOwner);
    }

    function contractOwner() internal view returns (address contractOwner_) {
        contractOwner_ = diamondStorage().contractOwner;
    }

    function enforceIsContractOwner() internal view {
        require(msg.sender == diamondStorage().contractOwner, "LibDiamond: Must be contract owner");
    }

    event DiamondCut(IDiamondCut.FacetCut[] _diamondCut, address _init, bytes _calldata);

    // Internal function version of diamondCut
    function diamondCut(
        IDiamondCut.FacetCut[] memory _diamondCut,
        address _init,
        bytes memory _calldata
    ) internal {
        for (uint256 facetIndex; facetIndex < _diamondCut.length; ) {
            IDiamondCut.FacetCutAction action = _diamondCut[facetIndex].action;
            if (action == IDiamondCut.FacetCutAction.Add) {
                addFunctions(_diamondCut[facetIndex].facetAddress, _diamondCut[facetIndex].functionSelectors);
            } else if (action == IDiamondCut.FacetCutAction.Replace) {
                replaceFunctions(_diamondCut[facetIndex].facetAddress, _diamondCut[facetIndex].functionSelectors);
            } else if (action == IDiamondCut.FacetCutAction.Remove) {
                removeFunctions(_diamondCut[facetIndex].facetAddress, _diamondCut[facetIndex].functionSelectors);
            } else {
                revert IncorrectFacetCutAction();
            }
            unchecked {
                ++facetIndex;
            }
        }
        emit DiamondCut(_diamondCut, _init, _calldata);
        initializeDiamondCut(_init, _calldata);
    }

    function addFunctions(address _facetAddress, bytes4[] memory _functionSelectors) internal {
        if (_facetAddress == address(0)) {
            revert FacetAddressIsZero();
        }
        if (_functionSelectors.length == 0) {
            revert NoSelectorsInFacet();
        }
        DiamondStorage storage ds = diamondStorage();
        uint96 selectorPosition = uint96(ds.facetFunctionSelectors[_facetAddress].functionSelectors.length);
        // add new facet address if it does not exist
        if (selectorPosition == 0) {
            addFacet(ds, _facetAddress);
        }
        for (uint256 selectorIndex; selectorIndex < _functionSelectors.length; ) {
            bytes4 selector = _functionSelectors[selectorIndex];
            address oldFacetAddress = ds.selectorToFacetAndPosition[selector].facetAddress;
            if (oldFacetAddress != address(0)) {
                revert FunctionAlreadyExists();
            }
            addFunction(ds, selector, selectorPosition, _facetAddress);
            unchecked {
                ++selectorPosition;
                ++selectorIndex;
            }
        }
    }

    function replaceFunctions(address _facetAddress, bytes4[] memory _functionSelectors) internal {
        if (_functionSelectors.length == 0) {
            revert NoSelectorsInFacet();
        }
        if (_facetAddress == address(0)) {
            revert FacetAddressIsZero();
        }
        DiamondStorage storage ds = diamondStorage();
        uint96 selectorPosition = uint96(ds.facetFunctionSelectors[_facetAddress].functionSelectors.length);
        // add new facet address if it does not exist
        if (selectorPosition == 0) {
            addFacet(ds, _facetAddress);
        }
        for (uint256 selectorIndex; selectorIndex < _functionSelectors.length; ) {
            bytes4 selector = _functionSelectors[selectorIndex];
            address oldFacetAddress = ds.selectorToFacetAndPosition[selector].facetAddress;
            if (oldFacetAddress == _facetAddress) {
                revert FunctionAlreadyExists();
            }
            removeFunction(ds, oldFacetAddress, selector);
            addFunction(ds, selector, selectorPosition, _facetAddress);
            unchecked {
                ++selectorPosition;
                ++selectorIndex;
            }
        }
    }

    function removeFunctions(address _facetAddress, bytes4[] memory _functionSelectors) internal {
        if (_functionSelectors.length == 0) {
            revert NoSelectorsInFacet();
        }
        DiamondStorage storage ds = diamondStorage();
        // if function does not exist then do nothing and return
        if (_facetAddress != address(0)) {
            revert FacetAddressIsNotZero();
        }
        for (uint256 selectorIndex; selectorIndex < _functionSelectors.length; ) {
            bytes4 selector = _functionSelectors[selectorIndex];
            address oldFacetAddress = ds.selectorToFacetAndPosition[selector].facetAddress;
            removeFunction(ds, oldFacetAddress, selector);
            unchecked {
                ++selectorIndex;
            }
        }
    }

    function addFacet(DiamondStorage storage ds, address _facetAddress) internal {
        enforceHasContractCode(_facetAddress);
        ds.facetFunctionSelectors[_facetAddress].facetAddressPosition = ds.facetAddresses.length;
        ds.facetAddresses.push(_facetAddress);
    }

    function addFunction(
        DiamondStorage storage ds,
        bytes4 _selector,
        uint96 _selectorPosition,
        address _facetAddress
    ) internal {
        ds.selectorToFacetAndPosition[_selector].functionSelectorPosition = _selectorPosition;
        ds.facetFunctionSelectors[_facetAddress].functionSelectors.push(_selector);
        ds.selectorToFacetAndPosition[_selector].facetAddress = _facetAddress;
    }

    function removeFunction(
        DiamondStorage storage ds,
        address _facetAddress,
        bytes4 _selector
    ) internal {
        if (_facetAddress == address(0)) {
            revert FunctionDoesNotExist();
        }
        // an immutable function is a function defined directly in a diamond
        if (_facetAddress == address(this)) {
            revert FunctionIsImmutable();
        }
        // replace selector with last selector, then delete last selector
        uint256 selectorPosition = ds.selectorToFacetAndPosition[_selector].functionSelectorPosition;
        uint256 lastSelectorPosition = ds.facetFunctionSelectors[_facetAddress].functionSelectors.length - 1;
        // if not the same then replace _selector with lastSelector
        if (selectorPosition != lastSelectorPosition) {
            bytes4 lastSelector = ds.facetFunctionSelectors[_facetAddress].functionSelectors[lastSelectorPosition];
            ds.facetFunctionSelectors[_facetAddress].functionSelectors[selectorPosition] = lastSelector;
            ds.selectorToFacetAndPosition[lastSelector].functionSelectorPosition = uint96(selectorPosition);
        }
        // delete the last selector
        ds.facetFunctionSelectors[_facetAddress].functionSelectors.pop();
        delete ds.selectorToFacetAndPosition[_selector];

        // if no more selectors for facet address then delete the facet address
        if (lastSelectorPosition == 0) {
            // replace facet address with last facet address and delete last facet address
            uint256 lastFacetAddressPosition = ds.facetAddresses.length - 1;
            uint256 facetAddressPosition = ds.facetFunctionSelectors[_facetAddress].facetAddressPosition;
            if (facetAddressPosition != lastFacetAddressPosition) {
                address lastFacetAddress = ds.facetAddresses[lastFacetAddressPosition];
                ds.facetAddresses[facetAddressPosition] = lastFacetAddress;
                ds.facetFunctionSelectors[lastFacetAddress].facetAddressPosition = facetAddressPosition;
            }
            ds.facetAddresses.pop();
            delete ds.facetFunctionSelectors[_facetAddress].facetAddressPosition;
        }
    }

    function initializeDiamondCut(address _init, bytes memory _calldata) internal {
        if (_init == address(0)) {
            if (_calldata.length != 0) {
                revert InitZeroButCalldataNotEmpty();
            }
        } else {
            if (_calldata.length == 0) {
                revert CalldataEmptyButInitNotZero();
            }
            if (_init != address(this)) {
                enforceHasContractCode(_init);
            }
            // solhint-disable-next-line avoid-low-level-calls
            (bool success, bytes memory error) = _init.delegatecall(_calldata);
            if (!success) {
                if (error.length > 0) {
                    // bubble up the error
                    revert(string(error));
                } else {
                    revert InitReverted();
                }
            }
        }
    }

    function enforceHasContractCode(address _contract) internal view {
        uint256 contractSize;
        // solhint-disable-next-line no-inline-assembly
        assembly {
            contractSize := extcodesize(_contract)
        }
        if (contractSize == 0) {
            revert FacetContainsNoCode();
        }
    }
}

Settings
{
  "optimizer": {
    "enabled": true,
    "runs": 10000
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "metadata": {
    "useLiteralContent": true
  },
  "libraries": {}
}

Contract Security Audit

Contract ABI

API
[{"inputs":[{"internalType":"address","name":"_contractOwner","type":"address"},{"internalType":"address","name":"_diamondCutFacet","type":"address"}],"stateMutability":"payable","type":"constructor"},{"inputs":[],"name":"CalldataEmptyButInitNotZero","type":"error"},{"inputs":[],"name":"FacetAddressIsNotZero","type":"error"},{"inputs":[],"name":"FacetAddressIsZero","type":"error"},{"inputs":[],"name":"FacetContainsNoCode","type":"error"},{"inputs":[],"name":"FunctionAlreadyExists","type":"error"},{"inputs":[],"name":"FunctionDoesNotExist","type":"error"},{"inputs":[],"name":"FunctionIsImmutable","type":"error"},{"inputs":[],"name":"IncorrectFacetCutAction","type":"error"},{"inputs":[],"name":"InitReverted","type":"error"},{"inputs":[],"name":"InitZeroButCalldataNotEmpty","type":"error"},{"inputs":[],"name":"NoSelectorsInFacet","type":"error"},{"stateMutability":"payable","type":"fallback"},{"stateMutability":"payable","type":"receive"}]

Deployed Bytecode

0x60806040523661000b57005b600080357fffffffff000000000000000000000000000000000000000000000000000000001681527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c6020819052604090912054819073ffffffffffffffffffffffffffffffffffffffff16806100ae576040517fa9ad62f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3660008037600080366000845af43d6000803e8080156100cd573d6000f35b3d6000fd5b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c132080547fffffffffffffffffffffffff0000000000000000000000000000000000000000811673ffffffffffffffffffffffffffffffffffffffff8481169182179093556040517fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c939092169182907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3505050565b60005b83518110156103225760008482815181106101ac576101ac611149565b6020026020010151602001519050600060028111156101cd576101cd611178565b8160028111156101df576101df611178565b0361022d576102288583815181106101f9576101f9611149565b60200260200101516000015186848151811061021757610217611149565b60200260200101516040015161036d565b610319565b600181600281111561024157610241611178565b0361028a5761022885838151811061025b5761025b611149565b60200260200101516000015186848151811061027957610279611149565b60200260200101516040015161062a565b600281600281111561029e5761029e611178565b036102e7576102288583815181106102b8576102b8611149565b6020026020010151600001518684815181106102d6576102d6611149565b6020026020010151604001516108f0565b6040517fe548e6b500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161018f565b507f8faa70878671ccd212d20771b795c50af8fd3ff6cf27f4bde57e5d4de0aeb67383838360405161035693929190611215565b60405180910390a16103688282610a2c565b505050565b73ffffffffffffffffffffffffffffffffffffffff82166103ba576040517fc68ec83a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80516000036103f5576040517f92d2fe5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d60205260408120547fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c916bffffffffffffffffffffffff8216900361047b5761047b8285610bcd565b60005b835181101561062357600084828151811061049b5761049b611149565b6020908102919091018101517fffffffff00000000000000000000000000000000000000000000000000000000811660009081529186905260409091205490915073ffffffffffffffffffffffffffffffffffffffff16801561052a576040517fa023275d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fffffffff000000000000000000000000000000000000000000000000000000008216600081815260208781526040808320805473ffffffffffffffffffffffffffffffffffffffff908116740100000000000000000000000000000000000000006bffffffffffffffffffffffff8c16021782558c168085526001808c0185529285208054938401815585528385206008840401805463ffffffff60079095166004026101000a948502191660e08a901c94909402939093179092559390925287905281547fffffffffffffffffffffffff00000000000000000000000000000000000000001617905550506001918201910161047e565b5050505050565b8051600003610665576040517f92d2fe5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82166106b2576040517fc68ec83a00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff821660009081527fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131d60205260408120547fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c916bffffffffffffffffffffffff82169003610738576107388285610bcd565b60005b835181101561062357600084828151811061075857610758611149565b6020908102919091018101517fffffffff00000000000000000000000000000000000000000000000000000000811660009081529186905260409091205490915073ffffffffffffffffffffffffffffffffffffffff90811690871681036107ec576040517fa023275d00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6107f7858284610c43565b7fffffffff000000000000000000000000000000000000000000000000000000008216600081815260208781526040808320805473ffffffffffffffffffffffffffffffffffffffff908116740100000000000000000000000000000000000000006bffffffffffffffffffffffff8c16021782558c168085526001808c0185529285208054938401815585528385206008840401805463ffffffff60079095166004026101000a948502191660e08a901c94909402939093179092559390925287905281547fffffffffffffffffffffffff00000000000000000000000000000000000000001617905550506001918201910161073b565b805160000361092b576040517f92d2fe5000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fc8fcad8db84d3cc18b4c41d551ea0ee66dd599cde068d998e57d5e09332c131c73ffffffffffffffffffffffffffffffffffffffff83161561099a576040517f79c9df2200000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60005b8251811015610a265760008382815181106109ba576109ba611149565b6020908102919091018101517fffffffff00000000000000000000000000000000000000000000000000000000811660009081529185905260409091205490915073ffffffffffffffffffffffffffffffffffffffff16610a1c848284610c43565b505060010161099d565b50505050565b73ffffffffffffffffffffffffffffffffffffffff8216610a8457805115610a80576040517f9811686000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b8051600003610abf576040517f4220056600000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b73ffffffffffffffffffffffffffffffffffffffff82163014610ae557610ae58261110c565b6000808373ffffffffffffffffffffffffffffffffffffffff1683604051610b0d919061137d565b600060405180830381855af49150503d8060008114610b48576040519150601f19603f3d011682016040523d82523d6000602084013e610b4d565b606091505b509150915081610a2657805115610b9b57806040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b929190611399565b60405180910390fd5b6040517fc53ebed500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b610bd68161110c565b60028201805473ffffffffffffffffffffffffffffffffffffffff90921660008181526001948501602090815260408220860185905594840183559182529290200180547fffffffffffffffffffffffff0000000000000000000000000000000000000000169091179055565b73ffffffffffffffffffffffffffffffffffffffff8216610c90576040517fa9ad62f800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b3073ffffffffffffffffffffffffffffffffffffffff831603610cdf576040517fc3c5ec3700000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081166000908152602084815260408083205473ffffffffffffffffffffffffffffffffffffffff86168452600180880190935290832054740100000000000000000000000000000000000000009091046bffffffffffffffffffffffff169291610d69916113b3565b9050808214610eb05773ffffffffffffffffffffffffffffffffffffffff841660009081526001860160205260408120805483908110610dab57610dab611149565b6000918252602080832060088304015473ffffffffffffffffffffffffffffffffffffffff8916845260018a019091526040909220805460079092166004026101000a90920460e01b925082919085908110610e0957610e09611149565b600091825260208083206008830401805463ffffffff60079094166004026101000a938402191660e09590951c929092029390931790557fffffffff0000000000000000000000000000000000000000000000000000000092909216825286905260409020805473ffffffffffffffffffffffffffffffffffffffff16740100000000000000000000000000000000000000006bffffffffffffffffffffffff8516021790555b73ffffffffffffffffffffffffffffffffffffffff841660009081526001860160205260409020805480610ee657610ee66113f3565b6000828152602080822060087fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90940193840401805463ffffffff600460078716026101000a0219169055919092557fffffffff000000000000000000000000000000000000000000000000000000008516825286905260408120819055819003610623576002850154600090610f7f906001906113b3565b73ffffffffffffffffffffffffffffffffffffffff8616600090815260018089016020526040909120015490915080821461106d576000876002018381548110610fcb57610fcb611149565b60009182526020909120015460028901805473ffffffffffffffffffffffffffffffffffffffff909216925082918490811061100957611009611149565b600091825260208083209190910180547fffffffffffffffffffffffff00000000000000000000000000000000000000001673ffffffffffffffffffffffffffffffffffffffff948516179055929091168152600189810190925260409020018190555b86600201805480611080576110806113f3565b6000828152602080822083017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff90810180547fffffffffffffffffffffffff000000000000000000000000000000000000000016905590920190925573ffffffffffffffffffffffffffffffffffffffff88168252600189810190915260408220015550505050505050565b803b6000819003610a80576040517fe350060000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b60005b838110156111c25781810151838201526020016111aa565b50506000910152565b600081518084526111e38160208601602086016111a7565b601f017fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe0169290920160200192915050565b60006060808301818452808751808352608092508286019150828160051b8701016020808b0160005b84811015611340577fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff808a8503018652815188850173ffffffffffffffffffffffffffffffffffffffff825116865284820151600381106112c7577f4e487b7100000000000000000000000000000000000000000000000000000000600052602160045260246000fd5b868601526040918201519186018a905281519081905290840190600090898701905b8083101561132b5783517fffffffff000000000000000000000000000000000000000000000000000000001682529286019260019290920191908601906112e9565b5097850197955050509082019060010161123e565b505073ffffffffffffffffffffffffffffffffffffffff8a1690880152868103604088015261136f81896111cb565b9a9950505050505050505050565b6000825161138f8184602087016111a7565b9190910192915050565b6020815260006113ac60208301846111cb565b9392505050565b818103818111156113ed577f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603160045260246000fdfea26469706673582212200331dbf66047b164b6604529cff12ffb7cde5940ac4ae6b71be1ead5cf157c4f64736f6c63430008100033

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
Chain Token Portfolio % Price Amount Value
ZKSYNC59.85%$1,811.590.00503056$9.11
OPBNB12.55%$610.570.00312995$1.91
ETH5.41%$0.004091201.3467$0.8236
ETH1.52%$0.0000942,453.98$0.2315
ETH0.02%$1,811.590.00000202$0.003657
SCROLL6.60%$1,811.590.000555$1.01
BSC5.81%$610.680.00144836$0.884481
AVAX3.35%$0.9999320.511$0.5109
AVAX
Avalanche (AVAX)
0.01%$22.770.00007054$0.001606
LINEA2.01%$1,811.590.00016915$0.306437
POL1.89%$0.2225951.2925$0.28771
CELO0.56%$0.3333890.2549$0.084978
OP0.25%$1,811.530.00002077$0.037631
ARB0.07%$1,810.540.00000606$0.010979
BASE0.06%$1,8110.00000542$0.009812
BLAST0.03%$1,811.240.00000275$0.004985
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.