ETH Price: $2,518.96 (+3.19%)

Contract

0x0BbC02Ef7ce79A820B7EDda8d5D409ae7615e636
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Stake Token206670732024-09-03 2:29:475 hrs ago1725330587IN
0x0BbC02Ef...e7615e636
0 ETH0.00049321.69103011
Bridge Token206652592024-09-02 20:25:2311 hrs ago1725308723IN
0x0BbC02Ef...e7615e636
0 ETH0.001931838.65504517
Stake Token206638402024-09-02 15:40:4716 hrs ago1725291647IN
0x0BbC02Ef...e7615e636
0 ETH0.002485119.05094968
Stake Token206638382024-09-02 15:40:2316 hrs ago1725291623IN
0x0BbC02Ef...e7615e636
0 ETH0.002314918.43143618
Stake Token206635822024-09-02 14:48:4717 hrs ago1725288527IN
0x0BbC02Ef...e7615e636
0 ETH0.002327327.97930691
Bridge Token206611632024-09-02 6:42:1125 hrs ago1725259331IN
0x0BbC02Ef...e7615e636
0 ETH0.001254465.62245175
Bridge Token206586942024-09-01 22:27:1133 hrs ago1725229631IN
0x0BbC02Ef...e7615e636
0 ETH0.001163555.64546445
Stake Token206580152024-09-01 20:09:4735 hrs ago1725221387IN
0x0BbC02Ef...e7615e636
0 ETH0.000375191.36646575
Stake Token206577402024-09-01 19:14:2336 hrs ago1725218063IN
0x0BbC02Ef...e7615e636
0 ETH0.000500061.82127748
Stake Token206575022024-09-01 18:26:1137 hrs ago1725215171IN
0x0BbC02Ef...e7615e636
0 ETH0.000377831.35989668
Stake Token206568122024-09-01 16:07:3539 hrs ago1725206855IN
0x0BbC02Ef...e7615e636
0 ETH0.000342371.23226072
Bridge Token206566892024-09-01 15:42:5940 hrs ago1725205379IN
0x0BbC02Ef...e7615e636
0 ETH0.001444166.01098154
Stake Token206565072024-09-01 15:06:3540 hrs ago1725203195IN
0x0BbC02Ef...e7615e636
0 ETH0.000286981.04529812
Stake Token206562722024-09-01 14:19:2341 hrs ago1725200363IN
0x0BbC02Ef...e7615e636
0 ETH0.000464191.69063579
Stake Token206561482024-09-01 13:54:3542 hrs ago1725198875IN
0x0BbC02Ef...e7615e636
0 ETH0.000332231.21012765
Stake Token206561462024-09-01 13:54:1142 hrs ago1725198851IN
0x0BbC02Ef...e7615e636
0 ETH0.000475431.63003776
Stake Token206509292024-08-31 20:26:112 days ago1725135971IN
0x0BbC02Ef...e7615e636
0 ETH0.00022690.82645422
Stake Token206505572024-08-31 19:11:232 days ago1725131483IN
0x0BbC02Ef...e7615e636
0 ETH0.000313281.14100783
Stake Token206500852024-08-31 17:36:352 days ago1725125795IN
0x0BbC02Ef...e7615e636
0 ETH0.000467561.6031328
Bridge Token206496532024-08-31 16:09:592 days ago1725120599IN
0x0BbC02Ef...e7615e636
0 ETH0.001186645.75819769
Bridge Token206486892024-08-31 12:55:472 days ago1725108947IN
0x0BbC02Ef...e7615e636
0 ETH0.001316295.89762662
Stake Token206432522024-08-30 18:41:353 days ago1725043295IN
0x0BbC02Ef...e7615e636
0 ETH0.000751812.73816256
Bridge Token206424182024-08-30 15:54:353 days ago1725033275IN
0x0BbC02Ef...e7615e636
0 ETH0.002058069.98614734
Bridge Token206424142024-08-30 15:53:473 days ago1725033227IN
0x0BbC02Ef...e7615e636
0 ETH0.002103310.19958353
Bridge Token206424122024-08-30 15:53:233 days ago1725033203IN
0x0BbC02Ef...e7615e636
0 ETH0.0023347210.46413341
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
CrossChainProxy

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity Multiple files format)

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

import "./proxy.sol";

contract CrossChainProxy is baseProxy{
       constructor(address impl) {
        _setAdmin(msg.sender);
        _setLogic(impl);
    }
}

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

library StorageSlot {
    struct AddressSlot {
        address value;
    }

    struct BooleanSlot {
        bool value;
    }

    struct Bytes32Slot {
        bytes32 value;
    }

    struct Uint256Slot {
        uint256 value;
    }

    function getAddressSlot(bytes32 slot) internal pure returns (AddressSlot storage r) {
        assembly {
            r.slot := slot
        }
    }

    function getBooleanSlot(bytes32 slot) internal pure returns (BooleanSlot storage r) {
        assembly {
            r.slot := slot
        }
    }


    function getBytes32Slot(bytes32 slot) internal pure returns (Bytes32Slot storage r) {
        assembly {
            r.slot := slot
        }
    }


    function getUint256Slot(bytes32 slot) internal pure returns (Uint256Slot storage r) {
        assembly {
            r.slot := slot
        }
    }
}

contract Proxy {
    //EIP1967 Impl_solt: keccak-256 hash of "eip1967.proxy.implementation" subtracted by 1
    bytes32 internal constant _IMPLEMENTATION_SLOT = 0x360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc;
    //EIP1967 Admin_solt: keccak-256 hash of "eip1967.proxy.admin" subtracted by 1
    bytes32 internal constant _ADMIN_SLOT = 0xb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103;
  
    function _setAdmin(address admin_) internal {
        StorageSlot.getAddressSlot(_ADMIN_SLOT).value = admin_;
    }
    
    function _setLogic(address logic_) internal {
        StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value = logic_;
    }
    
    function logic() public view returns (address) {
        return StorageSlot.getAddressSlot(_IMPLEMENTATION_SLOT).value;
    }
    
    function admin() public view returns (address) {
       return StorageSlot.getAddressSlot(_ADMIN_SLOT).value;
    }
    
    
    fallback () external payable {
        assembly {
            let impl := sload(_IMPLEMENTATION_SLOT)
            calldatacopy(0, 0, calldatasize())
            let result := delegatecall(gas(), impl, 0, calldatasize(), 0, 0)
            returndatacopy(0, 0, returndatasize())
            switch result
            case 0 { revert(0, returndatasize()) }
            default { return(0, returndatasize()) }
        }
    }
    
    receive () external payable virtual {}
}


contract baseProxy is Proxy {
    event Upgraded(address indexed impl);
    event AdminChanged(address preAdmin, address newAdmin);
    
    modifier onlyAmdin(){
        require(msg.sender == admin(), "baseProxy: Caller not admin");
        _;
    }
    
    function changeAdmin(address newAdmin) external onlyAmdin returns(bool) {
        address preAdmin =  admin();
        _setAdmin(newAdmin);
        emit AdminChanged(preAdmin, newAdmin);
        return true;
    } 
    
    function upgrad(address newLogic) external onlyAmdin returns(bool) {
        _setLogic(newLogic);
        emit Upgraded(newLogic);
        return true;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"impl","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"preAdmin","type":"address"},{"indexed":false,"internalType":"address","name":"newAdmin","type":"address"}],"name":"AdminChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"impl","type":"address"}],"name":"Upgraded","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newAdmin","type":"address"}],"name":"changeAdmin","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"logic","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newLogic","type":"address"}],"name":"upgrad","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

608060405234801561000f575f80fd5b506040516104a63803806104a683398101604081905261002e916100ac565b61003733610068565b61006281807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc61008b565b506100d9565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61035b80546001600160a01b0319166001600160a01b039290921691909117905550565b5f602082840312156100bc575f80fd5b81516001600160a01b03811681146100d2575f80fd5b9392505050565b6103c0806100e65f395ff3fe608060405260043610610042575f3560e01c806331079f6e1461008b5780638f283970146100bf578063d7dfa0dd146100de578063f851a4401461010a57610049565b3661004957005b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54365f80375f80365f845af490503d5f803e808015610087573d5ff35b3d5ffd5b348015610096575f80fd5b506100aa6100a536600461035d565b61011e565b60405190151581526020015b60405180910390f35b3480156100ca575f80fd5b506100aa6100d936600461035d565b6101d0565b3480156100e9575f80fd5b506100f2610299565b6040516001600160a01b0390911681526020016100b6565b348015610115575f80fd5b506100f26102cb565b5f6101276102cb565b6001600160a01b0316336001600160a01b03161461018c5760405162461bcd60e51b815260206004820152601b60248201527f6261736550726f78793a2043616c6c6572206e6f742061646d696e000000000060448201526064015b60405180910390fd5b610195826102f2565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a2506001919050565b5f6101d96102cb565b6001600160a01b0316336001600160a01b0316146102395760405162461bcd60e51b815260206004820152601b60248201527f6261736550726f78793a2043616c6c6572206e6f742061646d696e00000000006044820152606401610183565b5f6102426102cb565b905061024d83610336565b604080516001600160a01b038084168252851660208201527f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f910160405180910390a150600192915050565b5f7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b546001600160a01b0316919050565b5f7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036102bc565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103610315565b5f6020828403121561036d575f80fd5b81356001600160a01b0381168114610383575f80fd5b939250505056fea2646970667358221220f3dfe94bfbb1a3dd010c546a36e160e4a216992f6a8bcd78b7bff80dcdba70f964736f6c63430008140033000000000000000000000000d231bf774f6be9a01a4df80515cf89bc37a0ab0c

Deployed Bytecode

0x608060405260043610610042575f3560e01c806331079f6e1461008b5780638f283970146100bf578063d7dfa0dd146100de578063f851a4401461010a57610049565b3661004957005b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc54365f80375f80365f845af490503d5f803e808015610087573d5ff35b3d5ffd5b348015610096575f80fd5b506100aa6100a536600461035d565b61011e565b60405190151581526020015b60405180910390f35b3480156100ca575f80fd5b506100aa6100d936600461035d565b6101d0565b3480156100e9575f80fd5b506100f2610299565b6040516001600160a01b0390911681526020016100b6565b348015610115575f80fd5b506100f26102cb565b5f6101276102cb565b6001600160a01b0316336001600160a01b03161461018c5760405162461bcd60e51b815260206004820152601b60248201527f6261736550726f78793a2043616c6c6572206e6f742061646d696e000000000060448201526064015b60405180910390fd5b610195826102f2565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b905f90a2506001919050565b5f6101d96102cb565b6001600160a01b0316336001600160a01b0316146102395760405162461bcd60e51b815260206004820152601b60248201527f6261736550726f78793a2043616c6c6572206e6f742061646d696e00000000006044820152606401610183565b5f6102426102cb565b905061024d83610336565b604080516001600160a01b038084168252851660208201527f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f910160405180910390a150600192915050565b5f7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b546001600160a01b0316919050565b5f7fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d61036102bc565b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b807fb53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103610315565b5f6020828403121561036d575f80fd5b81356001600160a01b0381168114610383575f80fd5b939250505056fea2646970667358221220f3dfe94bfbb1a3dd010c546a36e160e4a216992f6a8bcd78b7bff80dcdba70f964736f6c63430008140033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000d231bf774f6be9a01a4df80515cf89bc37a0ab0c

-----Decoded View---------------
Arg [0] : impl (address): 0xd231bF774F6bE9A01a4Df80515cf89bC37a0AB0C

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000d231bf774f6be9a01a4df80515cf89bc37a0ab0c


Deployed Bytecode Sourcemap

80:137:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1947:20:1;1941:27;2000:14;1997:1;1994;1981:34;2090:1;2087;2071:14;2068:1;2062:4;2055:5;2042:50;2028:64;;2126:16;2123:1;2120;2105:38;2163:6;2182:38;;;;2253:16;2250:1;2243:27;2182:38;2201:16;2198:1;2191:27;2825:157;;;;;;;;;;-1:-1:-1;2825:157:1;;;;;:::i;:::-;;:::i;:::-;;;470:14:2;;463:22;445:41;;433:2;418:18;2825:157:1;;;;;;;;2601:213;;;;;;;;;;-1:-1:-1;2601:213:1;;;;;:::i;:::-;;:::i;1602:125::-;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;;;;661:32:2;;;643:51;;631:2;616:18;1602:125:1;497:203:2;1737:115:1;;;;;;;;;;;;;:::i;2825:157::-;2886:4;2534:7;:5;:7::i;:::-;-1:-1:-1;;;;;2520:21:1;:10;-1:-1:-1;;;;;2520:21:1;;2512:61;;;;-1:-1:-1;;;2512:61:1;;907:2:2;2512:61:1;;;889:21:2;946:2;926:18;;;919:30;985:29;965:18;;;958:57;1032:18;;2512:61:1;;;;;;;;;2902:19:::1;2912:8;2902:9;:19::i;:::-;2936:18;::::0;-1:-1:-1;;;;;2936:18:1;::::1;::::0;::::1;::::0;;;::::1;-1:-1:-1::0;2971:4:1::1;2825:157:::0;;;:::o;2601:213::-;2667:4;2534:7;:5;:7::i;:::-;-1:-1:-1;;;;;2520:21:1;:10;-1:-1:-1;;;;;2520:21:1;;2512:61;;;;-1:-1:-1;;;2512:61:1;;907:2:2;2512:61:1;;;889:21:2;946:2;926:18;;;919:30;985:29;965:18;;;958:57;1032:18;;2512:61:1;705:351:2;2512:61:1;2683:16:::1;2703:7;:5;:7::i;:::-;2683:27;;2720:19;2730:8;2720:9;:19::i;:::-;2754:32;::::0;;-1:-1:-1;;;;;1291:15:2;;;1273:34;;1343:15;;1338:2;1323:18;;1316:43;2754:32:1::1;::::0;1208:18:2;2754:32:1::1;;;;;;;-1:-1:-1::0;2803:4:1::1;::::0;2601:213;-1:-1:-1;;2601:213:1:o;1602:125::-;1640:7;1073:66;1666:48;:54;-1:-1:-1;;;;;1666:54:1;;1602:125;-1:-1:-1;1602:125:1:o;1737:115::-;1775:7;1268:66;1800:39;300:147;1468:124;1579:6;1073:66;1522:48;:63;;-1:-1:-1;;;;;;1522:63:1;-1:-1:-1;;;;;1522:63:1;;;;;;;;;;-1:-1:-1;1468:124:1:o;1343:115::-;1445:6;1268:66;1397:39;300:147;14:286:2;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;168:23;;-1:-1:-1;;;;;220:31:2;;210:42;;200:70;;266:1;263;256:12;200:70;289:5;14:286;-1:-1:-1;;;14:286:2:o

Swarm Source

ipfs://f3dfe94bfbb1a3dd010c546a36e160e4a216992f6a8bcd78b7bff80dcdba70f9

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