// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;
contract FundSplitter {
address payable public deployerWallet;
address payable public gasWallet;
address payable public serviceWallet;
constructor(address payable _deployerWallet, address payable _gasWallet, address payable _serviceWallet) {
deployerWallet = _deployerWallet;
gasWallet = _gasWallet;
serviceWallet = _serviceWallet;
}
receive() external payable {
require(msg.value > 0, "Invalid amount");
uint256 amountDeployer = (msg.value * 63) / 100;
uint256 amountGas = (msg.value * 22) / 100;
uint256 amountService = msg.value - amountDeployer - amountGas;
deployerWallet.transfer(amountDeployer);
gasWallet.transfer(amountGas);
serviceWallet.transfer(amountService);
}
}
{
"compilationTarget": {
"contracts/Split.sol": "FundSplitter"
},
"evmVersion": "shanghai",
"libraries": {},
"metadata": {
"bytecodeHash": "ipfs"
},
"optimizer": {
"enabled": false,
"runs": 200
},
"remappings": []
}
[{"inputs":[{"internalType":"address payable","name":"_deployerWallet","type":"address"},{"internalType":"address payable","name":"_gasWallet","type":"address"},{"internalType":"address payable","name":"_serviceWallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"deployerWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"gasWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"serviceWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]