Source Code
Overview
ETH Balance
0 ETH
ETH Value
$0.00Latest 1 from a total of 1 transactions
| Transaction Hash |
|
Block
|
From
|
To
|
|||||
|---|---|---|---|---|---|---|---|---|---|
| Set Commission S... | 19851780 | 123 days ago | IN | 0 ETH | 0.00000459 |
Latest 25 internal transactions (View All)
Advanced mode:
| Parent Transaction Hash | Block | From | To | |||
|---|---|---|---|---|---|---|
| 36399596 | 2 hrs ago | 0.00264 ETH | ||||
| 36399596 | 2 hrs ago | 0.00036 ETH | ||||
| 36399596 | 2 hrs ago | 0.003 ETH | ||||
| 36395421 | 2 hrs ago | 0.00264 ETH | ||||
| 36395421 | 2 hrs ago | 0.00036 ETH | ||||
| 36395421 | 2 hrs ago | 0.003 ETH | ||||
| 36390902 | 3 hrs ago | 0.00264 ETH | ||||
| 36390902 | 3 hrs ago | 0.00036 ETH | ||||
| 36390902 | 3 hrs ago | 0.003 ETH | ||||
| 36375992 | 5 hrs ago | 0.010296 ETH | ||||
| 36375992 | 5 hrs ago | 0.001404 ETH | ||||
| 36375992 | 5 hrs ago | 0.0117 ETH | ||||
| 36374628 | 5 hrs ago | 0.010296 ETH | ||||
| 36374628 | 5 hrs ago | 0.001404 ETH | ||||
| 36374628 | 5 hrs ago | 0.0117 ETH | ||||
| 36371226 | 5 hrs ago | 0.010296 ETH | ||||
| 36371226 | 5 hrs ago | 0.001404 ETH | ||||
| 36371226 | 5 hrs ago | 0.0117 ETH | ||||
| 36331801 | 11 hrs ago | 0.010296 ETH | ||||
| 36331801 | 11 hrs ago | 0.001404 ETH | ||||
| 36331801 | 11 hrs ago | 0.0117 ETH | ||||
| 36323562 | 12 hrs ago | 0.010296 ETH | ||||
| 36323562 | 12 hrs ago | 0.001404 ETH | ||||
| 36323562 | 12 hrs ago | 0.0117 ETH | ||||
| 36270540 | 19 hrs ago | 0.00286 ETH |
Cross-Chain Transactions
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Name:
Splitter
Compiler Version
v0.8.24+commit.e11b9ed9
ZkSolc Version
v1.5.15
Optimization Enabled:
Yes with Mode 3
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.8.24;
import {Ownable} from "@openzeppelin/contracts/access/Ownable.sol";
uint256 constant SHARE_PRECISION = 1_000_000_000;
contract Splitter is Ownable {
error InvalidAddress();
error InvalidCommissionShare();
error TransferFailed(address target, uint256 value);
address public commissionAddress;
address public restAddress;
uint256 public commissionShare;
constructor(address _commissionAddress, address _restAddress, uint256 _commissionShare) Ownable(msg.sender) {
if (_commissionAddress == address(0)) revert InvalidAddress();
if (_restAddress == address(0)) revert InvalidAddress();
if (_commissionShare > SHARE_PRECISION) revert InvalidCommissionShare();
commissionAddress = _commissionAddress;
restAddress = _restAddress;
commissionShare = _commissionShare;
}
receive() external payable {
uint256 commissionValue = msg.value * commissionShare / SHARE_PRECISION;
uint256 restValue = msg.value - commissionValue;
_safeTransfer(commissionAddress, commissionValue);
_safeTransfer(restAddress, restValue);
}
function setCommissionAddress(address newCommissionAddress) external onlyOwner {
if(newCommissionAddress == address(0)) revert InvalidAddress();
commissionAddress = newCommissionAddress;
}
function setRestAddress(address newRestAddress) external onlyOwner {
if(newRestAddress == address(0)) revert InvalidAddress();
restAddress = newRestAddress;
}
function setCommissionShare(uint256 newCommissionShare) external onlyOwner {
if (newCommissionShare > SHARE_PRECISION) revert InvalidCommissionShare();
commissionShare = newCommissionShare;
}
function _safeTransfer(address to, uint256 value) internal {
(bool success, ) = to.call{value: value}("");
if (!success) revert TransferFailed(to, value);
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.0) (access/Ownable.sol)
pragma solidity ^0.8.20;
import {Context} from "../utils/Context.sol";
/**
* @dev Contract module which provides a basic access control mechanism, where
* there is an account (an owner) that can be granted exclusive access to
* specific functions.
*
* The initial owner is set to the address provided by the deployer. This can
* later be changed with {transferOwnership}.
*
* This module is used through inheritance. It will make available the modifier
* `onlyOwner`, which can be applied to your functions to restrict their use to
* the owner.
*/
abstract contract Ownable is Context {
address private _owner;
/**
* @dev The caller account is not authorized to perform an operation.
*/
error OwnableUnauthorizedAccount(address account);
/**
* @dev The owner is not a valid owner account. (eg. `address(0)`)
*/
error OwnableInvalidOwner(address owner);
event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);
/**
* @dev Initializes the contract setting the address provided by the deployer as the initial owner.
*/
constructor(address initialOwner) {
if (initialOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(initialOwner);
}
/**
* @dev Throws if called by any account other than the owner.
*/
modifier onlyOwner() {
_checkOwner();
_;
}
/**
* @dev Returns the address of the current owner.
*/
function owner() public view virtual returns (address) {
return _owner;
}
/**
* @dev Throws if the sender is not the owner.
*/
function _checkOwner() internal view virtual {
if (owner() != _msgSender()) {
revert OwnableUnauthorizedAccount(_msgSender());
}
}
/**
* @dev Leaves the contract without owner. It will not be possible to call
* `onlyOwner` functions. Can only be called by the current owner.
*
* NOTE: Renouncing ownership will leave the contract without an owner,
* thereby disabling any functionality that is only available to the owner.
*/
function renounceOwnership() public virtual onlyOwner {
_transferOwnership(address(0));
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Can only be called by the current owner.
*/
function transferOwnership(address newOwner) public virtual onlyOwner {
if (newOwner == address(0)) {
revert OwnableInvalidOwner(address(0));
}
_transferOwnership(newOwner);
}
/**
* @dev Transfers ownership of the contract to a new account (`newOwner`).
* Internal function without access restriction.
*/
function _transferOwnership(address newOwner) internal virtual {
address oldOwner = _owner;
_owner = newOwner;
emit OwnershipTransferred(oldOwner, newOwner);
}
}// SPDX-License-Identifier: MIT
// OpenZeppelin Contracts (last updated v5.0.1) (utils/Context.sol)
pragma solidity ^0.8.20;
/**
* @dev Provides information about the current execution context, including the
* sender of the transaction and its data. While these are generally available
* via msg.sender and msg.data, they should not be accessed in such a direct
* manner, since when dealing with meta-transactions the account sending and
* paying for execution may not be the actual sender (as far as an application
* is concerned).
*
* This contract is only required for intermediate, library-like contracts.
*/
abstract contract Context {
function _msgSender() internal view virtual returns (address) {
return msg.sender;
}
function _msgData() internal view virtual returns (bytes calldata) {
return msg.data;
}
function _contextSuffixLength() internal view virtual returns (uint256) {
return 0;
}
}{
"viaIR": true,
"optimizer": {
"enabled": true,
"mode": "3"
},
"evmVersion": "paris",
"outputSelection": {
"*": {
"*": [
"abi"
]
}
},
"detectMissingLibraries": false,
"forceEVMLA": false,
"enableEraVMExtensions": false,
"codegen": "yul",
"libraries": {}
}Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"address","name":"_commissionAddress","type":"address"},{"internalType":"address","name":"_restAddress","type":"address"},{"internalType":"uint256","name":"_commissionShare","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"InvalidAddress","type":"error"},{"inputs":[],"name":"InvalidCommissionShare","type":"error"},{"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"OwnableInvalidOwner","type":"error"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"OwnableUnauthorizedAccount","type":"error"},{"inputs":[{"internalType":"address","name":"target","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"}],"name":"TransferFailed","type":"error"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"inputs":[],"name":"commissionAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"commissionShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"restAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newCommissionAddress","type":"address"}],"name":"setCommissionAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newCommissionShare","type":"uint256"}],"name":"setCommissionShare","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newRestAddress","type":"address"}],"name":"setRestAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]Contract Creation Code
9c4d535b00000000000000000000000000000000000000000000000000000000000000000100009505299e81c997277ec9ab7ddde695d6b6b0df8d0e28bbd62e2157cde2000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000600000000000000000000000008ae66d19e1c7de4da5a8a3848ffe1f503aca4cac00000000000000000000000082b5a11c4cba6ae9786ba53fd03b3727cfe9f39e0000000000000000000000000000000000000000000000000000000008f0d180
Deployed Bytecode
0x000400000000000200000060031002700000006e033001970000000100200190000000270000c13d0000008002000039000000400020043f000000040030008c0000005a0000413d000000000201043b000000e0022002700000007e0020009c0000006e0000a13d0000007f0020009c000000a20000a13d000000800020009c000000b70000613d000000810020009c000000e10000613d000000820020009c0000014a0000c13d0000000002000416000000000002004b0000014a0000c13d000000240030008c0000014a0000413d0000000401100370000000000101043b000000000200041a00000071032001970000000002000411000000000023004b000001170000c13d000000750010009c000001260000413d0000007701000041000000800010043f0000008c01000041000001b5000104300000000002000416000000000002004b0000014a0000c13d0000001f023000390000006f022001970000008002200039000000400020043f0000001f0430018f00000070053001980000008002500039000000380000613d0000008006000039000000000701034f000000007807043c0000000006860436000000000026004b000000340000c13d000000000004004b000000450000613d000000000151034f0000000304400210000000000502043300000000054501cf000000000545022f000000000101043b0000010004400089000000000141022f00000000014101cf000000000151019f0000000000120435000000600030008c0000014a0000413d000000800700043d000000710070009c0000014a0000213d000000a00400043d000000710040009c0000014a0000213d000000400200043d0000000006000411000000000006004b000000f60000c13d0000007a010000410000000000120435000000040120003900000000000104350000006e0020009c0000006e0200804100000040012002100000007b011001c7000001b500010430000000000003004b0000014a0000c13d0000000301000039000000000301041a000000000100041600000000023100a9000000000001004b000000650000613d00000000041200d9000000000043004b000000680000c13d0000007c0220012a000000000121004b000000ab0000813d0000007d01000041000000000010043f0000001101000039000000040010043f0000007b01000041000001b500010430000000850020009c000000860000213d000000880020009c000000cb0000613d000000890020009c0000014a0000c13d0000000002000416000000000002004b0000014a0000c13d000000240030008c0000014a0000413d0000000401100370000000000101043b000000710010009c0000014a0000213d000000000200041a00000071032001970000000002000411000000000023004b000001170000c13d0000007100100198000000c70000613d0000000102000039000001360000013d000000860020009c000000d10000613d000000870020009c0000014a0000c13d0000000001000416000000000001004b0000014a0000c13d000000000100041a00000071021001970000000005000411000000000052004b0000011c0000c13d0000007201100197000000000010041b00000000010004140000006e0010009c0000006e01008041000000c00110021000000073011001c70000800d0200003900000003030000390000007404000041000000000600001901b301ae0000040f00000001002001900000014a0000613d0000000001000019000001b40001042e000000830020009c000000d90000613d000000840020009c0000014a0000c13d0000000001000416000000000001004b0000014a0000c13d0000000101000039000000cf0000013d000400000001001d0000000101000039000000000101041a000000710110019701b3015d0000040f0000000201000039000000000101041a0000007101100197000000040200002901b3015d0000040f0000000001000019000001b40001042e0000000002000416000000000002004b0000014a0000c13d000000240030008c0000014a0000413d0000000401100370000000000101043b000000710010009c0000014a0000213d000000000200041a00000071032001970000000002000411000000000023004b000001170000c13d0000007100100198000001350000c13d0000007901000041000000800010043f0000008c01000041000001b5000104300000000001000416000000000001004b0000014a0000c13d0000000201000039000000000101041a000000dd0000013d0000000001000416000000000001004b0000014a0000c13d0000000301000039000000000101041a000000800010043f0000008d01000041000001b40001042e0000000001000416000000000001004b0000014a0000c13d000000000100041a0000007101100197000000800010043f0000008d01000041000001b40001042e0000000002000416000000000002004b0000014a0000c13d000000240030008c0000014a0000413d0000000401100370000000000101043b000000710010009c0000014a0000213d000000000200041a00000071032001970000000005000411000000000053004b0000011c0000c13d00000071061001980000013c0000c13d0000007a01000041000000800010043f000000840000043f0000008b01000041000001b500010430000200000002001d000000c00100043d000100000001001d000000000100041a0000007202100197000000000262019f000000000020041b000000000200041400000071051001970000006e0020009c0000006e02008041000000c00120021000000073011001c70000800d020000390000000303000039000400000007001d000300000004001d000000740400004101b301ae0000040f0000000304000029000000040300002900000001002001900000014a0000613d000000000003004b000001210000c13d0000007901000041000000020200002900000000001204350000006e0020009c0000006e02008041000000400120021000000078011001c7000001b5000104300000008a01000041000000800010043f000000840020043f0000008b01000041000001b5000104300000008a01000041000000800010043f000000840050043f0000008b01000041000001b500010430000000000004004b0000012a0000c13d000000400100043d00000079020000410000012f0000013d0000000302000039000000000012041b0000000001000019000001b40001042e0000000105000029000000750050009c0000014c0000413d000000400100043d000000770200004100000000002104350000006e0010009c0000006e01008041000000400110021000000078011001c7000001b5000104300000000202000039000000000302041a0000007203300197000000000113019f000000000012041b0000000001000019000001b40001042e0000007202200197000000000112019f000000000010041b00000000010004140000006e0010009c0000006e01008041000000c00110021000000073011001c70000800d020000390000000303000039000000740400004101b301ae0000040f0000000100200190000000a00000c13d0000000001000019000001b5000104300000000101000039000000000201041a0000007202200197000000000232019f000000000021041b0000000201000039000000000201041a0000007202200197000000000242019f000000000021041b0000000301000039000000000051041b0000002001000039000001000010044300000120000004430000007601000041000001b40001042e0002000000000002000000000401001900000000010004140000006e0010009c0000006e01008041000000c001100210000000000002004b000200000004001d000100000002001d0000016c0000613d000000000302001900000073011001c7000080090200003900000000050000190000016d0000013d000000000204001901b301ae0000040f00000060031002700000006e03300198000001960000613d0000001f043000390000006f044001970000003f044000390000008e04400197000000400500043d0000000004450019000000000054004b000000000600003900000001060040390000008f0040009c000001a80000213d0000000100600190000001a80000c13d000000400040043f0000001f0430018f000000000635043600000070053001980000000003560019000001890000613d000000000701034f000000007807043c0000000006860436000000000036004b000001850000c13d000000000004004b000001960000613d000000000151034f0000000304400210000000000503043300000000054501cf000000000545022f000000000101043b0000010004400089000000000141022f00000000014101cf000000000151019f00000000001304350000000100200190000001990000613d000000000001042d000000400100043d0000002402100039000000010300002900000000003204350000009002000041000000000021043500000002020000290000007102200197000000040310003900000000002304350000006e0010009c0000006e01008041000000400110021000000091011001c7000001b5000104300000007d01000041000000000010043f0000004101000039000000040010043f0000007b01000041000001b500010430000001b1002104210000000102000039000000000001042d0000000002000019000000000001042d000001b300000432000001b40001042e000001b5000104300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffff00000000000000000000000000000000000000000000000000000001ffffffe000000000000000000000000000000000000000000000000000000000ffffffe0000000000000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000008be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0000000000000000000000000000000000000000000000000000000003b9aca010000000200000000000000000000000000000040000001000000000000000000689ea250000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004000000000000000000000000e6c4247b000000000000000000000000000000000000000000000000000000001e4fbdf7000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000024000000000000000000000000000000000000000000000000000000000000000000000000000000003b9aca004e487b7100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008da5cb5a00000000000000000000000000000000000000000000000000000000a899fd4000000000000000000000000000000000000000000000000000000000a899fd4100000000000000000000000000000000000000000000000000000000f2fde38b00000000000000000000000000000000000000000000000000000000ff9e67a2000000000000000000000000000000000000000000000000000000008da5cb5b00000000000000000000000000000000000000000000000000000000931742d30000000000000000000000000000000000000000000000000000000048f85c990000000000000000000000000000000000000000000000000000000048f85c9a00000000000000000000000000000000000000000000000000000000715018a600000000000000000000000000000000000000000000000000000000164a58b60000000000000000000000000000000000000000000000000000000040fff80c118cdaa70000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000240000008000000000000000000000000000000000000000000000000000000004000000800000000000000000000000000000000000000000000000000000002000000080000000000000000000000000000000000000000000000000000000000000000000000003ffffffe0000000000000000000000000000000000000000000000000ffffffffffffffff1c43b976000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044000000000000000000000000000000000000000000a26469706673582212204b7c3f1ce82a776404c1899dbbc27f97d501a87105bad8bb834002562751578964736f6c6378247a6b736f6c633a312e352e31353b736f6c633a302e382e32343b6c6c766d3a312e302e320055
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000008ae66d19e1c7de4da5a8a3848ffe1f503aca4cac00000000000000000000000082b5a11c4cba6ae9786ba53fd03b3727cfe9f39e0000000000000000000000000000000000000000000000000000000008f0d180
-----Decoded View---------------
Arg [0] : _commissionAddress (address): 0x8aE66D19E1c7DE4DA5A8a3848FFe1F503ACa4caC
Arg [1] : _restAddress (address): 0x82B5A11c4Cba6aE9786ba53fd03B3727CfE9f39E
Arg [2] : _commissionShare (uint256): 150000000
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000008ae66d19e1c7de4da5a8a3848ffe1f503aca4cac
Arg [1] : 00000000000000000000000082b5a11c4cba6ae9786ba53fd03b3727cfe9f39e
Arg [2] : 0000000000000000000000000000000000000000000000000000000008f0d180
Loading...
Loading
Loading...
Loading
Loading...
Loading
Net Worth in USD
$0.00
Net Worth in ETH
0
Multichain Portfolio | 35 Chains
| Chain | Token | Portfolio % | Price | Amount | Value |
|---|
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.