Feature Tip: Add private address tag to any address under My Name Tag !
Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
View more zero value Internal Transactions in Advanced View mode
Advanced mode:
Loading...
Loading
Contract Name:
FeeSettings
Compiler Version
v0.8.17+commit.8df45f5f
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: BUSL-1.1 pragma solidity ^0.8.17; import '../lib/ownable/Ownable.sol'; import './IFeeSettings.sol'; contract FeeSettings is IFeeSettings, Ownable { address _feeAddress; uint256 _feePercent = 300; // 0.3% uint256 constant _maxFeePercent = 1000; // max fee is 1% uint256 _feeEth = 1e16; uint256 constant _maxFeeEth = 35e15; // max fixed eth fee is 0.035 eth constructor() { _feeAddress = msg.sender; } function feeAddress() external view returns (address) { return _feeAddress; } function feePercent() external view returns (uint256) { return _feePercent; } function feeDecimals() external pure returns(uint256){ return 100000; } function feeEth() external view returns (uint256) { return _feeEth; } function setFeeAddress(address newFeeAddress) public onlyOwner { _feeAddress = newFeeAddress; } function setFeePercent(uint256 newFeePercent) external onlyOwner { require(newFeePercent >= 0 && newFeePercent <= _maxFeePercent); _feePercent = newFeePercent; } function setFeeEth(uint256 newFeeEth) external onlyOwner { require(newFeeEth >= 0 && newFeeEth <= _maxFeeEth); _feeEth = newFeeEth; } }
// SPDX-License-Identifier: BUSL-1.1 pragma solidity ^0.8.17; import './IOwnable.sol'; contract Ownable is IOwnable { address _owner; constructor() { _owner = msg.sender; } modifier onlyOwner() { require(_owner == msg.sender, 'caller is not the owner'); _; } function owner() external virtual view returns (address) { return _owner; } function transferOwnership(address newOwner) external override onlyOwner { _owner = newOwner; } }
// SPDX-License-Identifier: BUSL-1.1 pragma solidity ^0.8.17; interface IFeeSettings { function feeAddress() external returns (address); // address to pay fee function feePercent() external returns (uint256); // fee in 1/decimals for deviding values function feeDecimals() external view returns(uint256); // fee decimals function feeEth() external returns (uint256); // fee value for not dividing deal points }
// SPDX-License-Identifier: BUSL-1.1 pragma solidity ^0.8.17; interface IOwnable { function owner() external view returns (address); function transferOwnership(address newOwner) external; }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"feeAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeDecimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"feeEth","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feePercent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newFeeAddress","type":"address"}],"name":"setFeeAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFeeEth","type":"uint256"}],"name":"setFeeEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newFeePercent","type":"uint256"}],"name":"setFeePercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
608060405261012c600255662386f26fc1000060035534801561002157600080fd5b5060008054336001600160a01b0319918216811783556001805490921617905561031c90819061005190396000f3fe608060405234801561001057600080fd5b50600436106100935760003560e01c80638705fcd4116100665780638705fcd4146100f15780638da5cb5b14610104578063a3b73aff14610115578063cc0f178614610128578063f2fde38b1461013157600080fd5b806341275358146100985780635e9dc44c146100c25780637ce3489b146100d45780637fd6f15c146100e9575b600080fd5b6001546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6003545b6040519081526020016100b9565b6100e76100e2366004610266565b610144565b005b6002546100c6565b6100e76100ff36600461027f565b61018b565b6000546001600160a01b03166100a5565b6100e7610123366004610266565b6101d7565b620186a06100c6565b6100e761013f36600461027f565b61021a565b6000546001600160a01b031633146101775760405162461bcd60e51b815260040161016e906102af565b60405180910390fd5b6103e881111561018657600080fd5b600255565b6000546001600160a01b031633146101b55760405162461bcd60e51b815260040161016e906102af565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146102015760405162461bcd60e51b815260040161016e906102af565b667c58508723800081111561021557600080fd5b600355565b6000546001600160a01b031633146102445760405162461bcd60e51b815260040161016e906102af565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121561027857600080fd5b5035919050565b60006020828403121561029157600080fd5b81356001600160a01b03811681146102a857600080fd5b9392505050565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060408201526060019056fea2646970667358221220124acbfcd35d9f888bf4a1bc7049ebd5134ef0e2527be1eb9aa3b7c1a08e73c464736f6c63430008110033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100935760003560e01c80638705fcd4116100665780638705fcd4146100f15780638da5cb5b14610104578063a3b73aff14610115578063cc0f178614610128578063f2fde38b1461013157600080fd5b806341275358146100985780635e9dc44c146100c25780637ce3489b146100d45780637fd6f15c146100e9575b600080fd5b6001546001600160a01b03165b6040516001600160a01b0390911681526020015b60405180910390f35b6003545b6040519081526020016100b9565b6100e76100e2366004610266565b610144565b005b6002546100c6565b6100e76100ff36600461027f565b61018b565b6000546001600160a01b03166100a5565b6100e7610123366004610266565b6101d7565b620186a06100c6565b6100e761013f36600461027f565b61021a565b6000546001600160a01b031633146101775760405162461bcd60e51b815260040161016e906102af565b60405180910390fd5b6103e881111561018657600080fd5b600255565b6000546001600160a01b031633146101b55760405162461bcd60e51b815260040161016e906102af565b600180546001600160a01b0319166001600160a01b0392909216919091179055565b6000546001600160a01b031633146102015760405162461bcd60e51b815260040161016e906102af565b667c58508723800081111561021557600080fd5b600355565b6000546001600160a01b031633146102445760405162461bcd60e51b815260040161016e906102af565b600080546001600160a01b0319166001600160a01b0392909216919091179055565b60006020828403121561027857600080fd5b5035919050565b60006020828403121561029157600080fd5b81356001600160a01b03811681146102a857600080fd5b9392505050565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e657200000000000000000060408201526060019056fea2646970667358221220124acbfcd35d9f888bf4a1bc7049ebd5134ef0e2527be1eb9aa3b7c1a08e73c464736f6c63430008110033
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.