Source Code
Overview
ETH Balance
0 ETH
More Info
ContractCreator
Multichain Info
N/A
Loading...
Loading
Contract Name:
MockReferrals
Compiler Version
v0.8.20+commit.a1b79de6
Optimization Enabled:
Yes with 200 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;
contract MockReferrals {
mapping(address => address) public sportReferrals;
uint public constant referrerFeeDefault = 5e15;
uint public referrerFeeSilver;
uint public referrerFeeGold;
mapping(address => bool) public silverAddresses;
mapping(address => bool) public goldAddresses;
function getReferrerFee(address referrer) external view returns (uint) {
return
goldAddresses[referrer] ? referrerFeeGold : (silverAddresses[referrer] ? referrerFeeSilver : referrerFeeDefault);
}
function setReferrer(address referrer, address referred) external {
require(referrer != address(0) && referred != address(0), "Cant refer zero addresses");
require(referrer != referred, "Cant refer to yourself");
sportReferrals[referred] = referrer;
}
}{
"optimizer": {
"enabled": true,
"runs": 200
},
"evmVersion": "paris",
"outputSelection": {
"*": {
"*": [
"evm.bytecode",
"evm.deployedBytecode",
"devdoc",
"userdoc",
"metadata",
"abi"
]
}
},
"libraries": {}
}Contract ABI
API[{"inputs":[{"internalType":"address","name":"referrer","type":"address"}],"name":"getReferrerFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"goldAddresses","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"referrerFeeDefault","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"referrerFeeGold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"referrerFeeSilver","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"referrer","type":"address"},{"internalType":"address","name":"referred","type":"address"}],"name":"setReferrer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"silverAddresses","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"sportReferrals","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"}]Contract Creation Code
608060405234801561001057600080fd5b50610380806100206000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c80637b1d73521161005b5780637b1d73521461012b578063bbddaca31461014e578063c7d1f5f114610163578063f64c411c1461017657600080fd5b80630662f6dc1461008d578063149dace8146100c55780632274d8d4146101065780635cfe17e81461011d575b600080fd5b6100b061009b3660046102f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6100ee6100d33660046102f5565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016100bc565b61010f60025481565b6040519081526020016100bc565b61010f6611c37937e0800081565b6100b06101393660046102f5565b60046020526000908152604090205460ff1681565b61016161015c366004610317565b61017f565b005b61010f6101713660046102f5565b61027a565b61010f60015481565b6001600160a01b0382161580159061019f57506001600160a01b03811615155b6101f05760405162461bcd60e51b815260206004820152601960248201527f43616e74207265666572207a65726f206164647265737365730000000000000060448201526064015b60405180910390fd5b806001600160a01b0316826001600160a01b03160361024a5760405162461bcd60e51b815260206004820152601660248201527521b0b73a103932b332b9103a37903cb7bab939b2b63360511b60448201526064016101e7565b6001600160a01b0390811660009081526020819052604090208054919092166001600160a01b0319909116179055565b6001600160a01b03811660009081526004602052604081205460ff166102cf576001600160a01b03821660009081526003602052604090205460ff166102c7576611c37937e080006102d3565b6001546102d3565b6002545b92915050565b80356001600160a01b03811681146102f057600080fd5b919050565b60006020828403121561030757600080fd5b610310826102d9565b9392505050565b6000806040838503121561032a57600080fd5b610333836102d9565b9150610341602084016102d9565b9050925092905056fea2646970667358221220ae26675db46a035e500603a8e3588b8b58217a0dfcb9d60c3e0cee48b37ea4a564736f6c63430008140033
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100885760003560e01c80637b1d73521161005b5780637b1d73521461012b578063bbddaca31461014e578063c7d1f5f114610163578063f64c411c1461017657600080fd5b80630662f6dc1461008d578063149dace8146100c55780632274d8d4146101065780635cfe17e81461011d575b600080fd5b6100b061009b3660046102f5565b60036020526000908152604090205460ff1681565b60405190151581526020015b60405180910390f35b6100ee6100d33660046102f5565b6000602081905290815260409020546001600160a01b031681565b6040516001600160a01b0390911681526020016100bc565b61010f60025481565b6040519081526020016100bc565b61010f6611c37937e0800081565b6100b06101393660046102f5565b60046020526000908152604090205460ff1681565b61016161015c366004610317565b61017f565b005b61010f6101713660046102f5565b61027a565b61010f60015481565b6001600160a01b0382161580159061019f57506001600160a01b03811615155b6101f05760405162461bcd60e51b815260206004820152601960248201527f43616e74207265666572207a65726f206164647265737365730000000000000060448201526064015b60405180910390fd5b806001600160a01b0316826001600160a01b03160361024a5760405162461bcd60e51b815260206004820152601660248201527521b0b73a103932b332b9103a37903cb7bab939b2b63360511b60448201526064016101e7565b6001600160a01b0390811660009081526020819052604090208054919092166001600160a01b0319909116179055565b6001600160a01b03811660009081526004602052604081205460ff166102cf576001600160a01b03821660009081526003602052604090205460ff166102c7576611c37937e080006102d3565b6001546102d3565b6002545b92915050565b80356001600160a01b03811681146102f057600080fd5b919050565b60006020828403121561030757600080fd5b610310826102d9565b9392505050565b6000806040838503121561032a57600080fd5b610333836102d9565b9150610341602084016102d9565b9050925092905056fea2646970667358221220ae26675db46a035e500603a8e3588b8b58217a0dfcb9d60c3e0cee48b37ea4a564736f6c63430008140033
Loading...
Loading
Loading...
Loading
Loading...
Loading
Loading...
Loading
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.