Feature Tip: Add private address tag to any address under My Name Tag !
More Info
Private Name Tags
ContractCreator
Latest 11 from a total of 11 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Execute | 21364185 | 28 days ago | IN | 0 ETH | 0.00080481 | ||||
Execute | 21104724 | 64 days ago | IN | 0 ETH | 0.00025042 | ||||
Execute Batch | 21078718 | 68 days ago | IN | 0.29104697 ETH | 0.00322369 | ||||
Execute | 20954075 | 85 days ago | IN | 0 ETH | 0.00060225 | ||||
Execute Batch | 20934828 | 88 days ago | IN | 0.25854133 ETH | 0.00237386 | ||||
Execute Batch | 20880143 | 95 days ago | IN | 0.16789909 ETH | 0.00500231 | ||||
Execute Batch | 20836253 | 101 days ago | IN | 0.24796439 ETH | 0.00868921 | ||||
Execute | 20642314 | 128 days ago | IN | 0 ETH | 0.00061356 | ||||
Execute | 20607324 | 133 days ago | IN | 0 ETH | 0.0000862 | ||||
Transfer | 20607097 | 133 days ago | IN | 0.00217 ETH | 0.00004346 | ||||
Execute | 20581578 | 137 days ago | IN | 0 ETH | 0.00013 |
Loading...
Loading
Minimal Proxy Contract for 0x95a286ca0347b3c8daf06dad1c4233c95f06c894
Contract Name:
CoreRouter
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 500 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity 0.8.19; /// @title Cyan Wallet Core Router - A Cyan wallet's core router. /// @author Bulgantamir Gankhuyag - <[email protected]> /// @author Naranbayar Uuganbayar - <[email protected]> contract CoreRouter { address payable private immutable _this; address private _admin; address private _core; event SetRouterAdmin(address admin); event SetCore(address core); modifier onlyAdmin() { require(_admin == msg.sender, "Caller is not an admin."); _; } constructor(address core) { require(core != address(0x0), "Invalid core address."); _admin = msg.sender; _core = core; _this = payable(address(this)); } /// @notice Changes the admin of the router. /// @param admin Address of the new admin. function setRouterAdmin(address admin) external onlyAdmin { require(admin != address(0x0), "Invalid admin address."); _admin = admin; emit SetRouterAdmin(admin); } /// @notice Returns an admin address of the router. /// @return Address of the current admin. function getRouterAdmin() external view returns (address) { return _admin; } /// @notice Changes the address of the core contract. /// Note: Changing the core address will affect to all wallets. /// @param core Address of the new core contract. function setCore(address core) external onlyAdmin { require(core != address(0x0), "Invalid core address."); _core = core; emit SetCore(core); } /// @notice Returns the address of the core contract. /// @return Address of the current core contract. function getCore() external view returns (address) { return _core; } /// @notice Delegates all transcations to the core contract. fallback() external payable { address core = CoreRouter(_this).getCore(); assembly { calldatacopy(0, 0, calldatasize()) let success := delegatecall(gas(), core, 0, calldatasize(), 0, 0) returndatacopy(0, 0, returndatasize()) if eq(success, 0) { revert(0, returndatasize()) } return(0, returndatasize()) } } }
{ "optimizer": { "enabled": true, "runs": 500 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
[{"inputs":[{"internalType":"address","name":"core","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"core","type":"address"}],"name":"SetCore","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"admin","type":"address"}],"name":"SetRouterAdmin","type":"event"},{"stateMutability":"payable","type":"fallback"},{"inputs":[],"name":"getCore","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRouterAdmin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"core","type":"address"}],"name":"setCore","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"admin","type":"address"}],"name":"setRouterAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Loading...
Loading
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.