Source Code
Overview
S Balance
More Info
ContractCreator
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
Referral
Compiler Version
v0.8.26+commit.8a97fa7a
Optimization Enabled:
Yes with 1000 runs
Other Settings:
paris EvmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: UNLICENSED pragma solidity ^0.8.24; import "./interfaces/IManager.sol"; contract Referral { struct ReferralInfo { address[] referrals; uint256[] timeOfReferrals; } mapping(address => string) private shortReferralCodes; mapping(string => address) private shortCodeOwners; mapping(address => bytes32) private bytesReferralCodes; mapping(bytes32 => address) private codeOwnersBytes; mapping(address => ReferralInfo) private referrals; mapping(address => address) private referrers; mapping(address => bool) private isAuthorized; bool public isStarted = false; uint256 private salt; IManager private Manager; //--------------------------------------------------// constructor(address _manager) { Manager = IManager(_manager); } //--------------------------------------------------// modifier onlyStaking() { address _Staking = Manager.getContract("Staking"); require( msg.sender == _Staking || msg.sender == Manager.owner(), "Only Staking can call this function" ); _; } modifier onlyOwner() { require( msg.sender == Manager.owner(), "Only owner can call this function" ); _; } //--------------------------------------------------// function setManager(address _manager) external onlyOwner { Manager = IManager(_manager); } function setIsStarted(bool _isStarted) external onlyOwner { isStarted = _isStarted; } function setIsAuthorizedBatch( address[] memory users, bool _isAuthorized ) external onlyOwner { for (uint256 i = 0; i < users.length; i++) { isAuthorized[users[i]] = _isAuthorized; } } function setIsAuthorized( address user, bool _isAuthorized ) external onlyOwner { isAuthorized[user] = _isAuthorized; } //--------------------------------------------------// /** * @dev generates a referral code for the caller */ function generateReferralCode() external { address sender = msg.sender; require(isStarted || isAuthorized[sender], "Not authorized"); require( bytesReferralCodes[sender] == 0, "Referral code already generated" ); bytes32 referralCode; string memory shortCode; do { salt++; referralCode = keccak256(abi.encodePacked(sender, salt)); shortCode = _toShortCode(referralCode); } while ( codeOwnersBytes[referralCode] != address(0) || shortCodeOwners[shortCode] != address(0) ); shortReferralCodes[sender] = shortCode; shortCodeOwners[shortCode] = sender; bytesReferralCodes[sender] = referralCode; codeOwnersBytes[referralCode] = sender; } /** * @dev uses a referral code to set the referrer of the caller * @param code the referral code to be used */ function useReferralCode(string memory code) external { address sender = msg.sender; address _referrer = shortCodeOwners[code]; require(_referrer != address(0), "Referral code does not exist"); require(sender != _referrer, "Cannot use your own referral code"); require( referrers[sender] == address(0), "Already used a referral code" ); referrals[_referrer].referrals.push(sender); referrals[_referrer].timeOfReferrals.push(block.timestamp); referrers[sender] = _referrer; } //--------------------------------------------------// function _toShortCode( bytes32 hashCode ) private pure returns (string memory) { bytes memory alphabet = "0123456789abcdef"; bytes memory str = new bytes(10); for (uint8 i = 0; i < 10; i++) { str[i] = alphabet[uint8(hashCode[i]) & 0x0f]; } return string(str); } //--------------------------------------------------// function getUserFromCode( string memory code ) external view onlyStaking returns (address) { return shortCodeOwners[code]; } function getReferrals( address user ) external view onlyStaking returns (address[] memory) { return referrals[user].referrals; } function getTimeOfReferrals( address user ) external view onlyStaking returns (uint256[] memory) { return referrals[user].timeOfReferrals; } /** * @dev gets the referral code of a user * @param user the user to get the referral code of */ function getCodeFromUser( address user ) external view returns (string memory) { return shortReferralCodes[user]; } /** * @dev gets the referrer of a user * @param user the user to get the referrer of */ function getReferrer(address user) external view returns (address) { return referrers[user]; } /** * @dev gets the amount of referrals a user has * @param user the user to get the amount of referrals of */ function getAmountOfReferrals( address user ) external view returns (uint256) { return referrals[user].referrals.length; } /** * @dev returns either if a user has a referral code or not * @param user the user to check */ function getHasAReferralCode(address user) external view returns (bool) { return bytesReferralCodes[user] != 0; } }
// SPDX-License-Identifier: UNLICENSED pragma solidity ^0.8.20; interface IManager { function getContract(string memory name) external view returns (address); function owner() external view returns (address); }
{ "optimizer": { "enabled": true, "runs": 1000 }, "evmVersion": "paris", "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "libraries": {} }
[{"inputs":[{"internalType":"address","name":"_manager","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"inputs":[],"name":"generateReferralCode","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getAmountOfReferrals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getCodeFromUser","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getHasAReferralCode","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getReferrals","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getReferrer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getTimeOfReferrals","outputs":[{"internalType":"uint256[]","name":"","type":"uint256[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"string","name":"code","type":"string"}],"name":"getUserFromCode","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isStarted","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"bool","name":"_isAuthorized","type":"bool"}],"name":"setIsAuthorized","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"users","type":"address[]"},{"internalType":"bool","name":"_isAuthorized","type":"bool"}],"name":"setIsAuthorizedBatch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isStarted","type":"bool"}],"name":"setIsStarted","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_manager","type":"address"}],"name":"setManager","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"code","type":"string"}],"name":"useReferralCode","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526007805460ff19169055348015601957600080fd5b506040516117ee3803806117ee833981016040819052603691605a565b600980546001600160a01b0319166001600160a01b03929092169190911790556088565b600060208284031215606b57600080fd5b81516001600160a01b0381168114608157600080fd5b9392505050565b611757806100976000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80635873a1961161008c5780639cade937116100665780639cade93714610221578063b0a2fc1b14610258578063d0ebdbe714610260578063f9f6864a1461027357600080fd5b80635873a196146101db5780635d23273f146101ee5780636208aebe1461020157600080fd5b806333a8433a116100c857806333a8433a1461015757806341a0894d1461016a5780634a9fefc71461018a578063544736e6146101ce57600080fd5b8063105af005146100ef578063166aa8a8146101045780631e1c154a14610117575b600080fd5b6101026100fd3660046112be565b610293565b005b61010261011236600461138a565b6103db565b6101426101253660046113ac565b6001600160a01b0316600090815260026020526040902054151590565b60405190151581526020015b60405180910390f35b6101026101653660046113c9565b6104cf565b61017d6101783660046113ac565b6106b8565b60405161014e9190611463565b6101b66101983660046113ac565b6001600160a01b039081166000908152600560205260409020541690565b6040516001600160a01b03909116815260200161014e565b6007546101429060ff1681565b6101b66101e93660046113c9565b6108b0565b6101026101fc3660046114af565b610a62565b61021461020f3660046113ac565b610b6e565b60405161014e91906114ff565b61024a61022f3660046113ac565b6001600160a01b031660009081526004602052604090205490565b60405190815260200161014e565b610102610c1a565b61010261026e3660046113ac565b610e54565b6102866102813660046113ac565b610f64565b60405161014e9190611532565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030a919061156a565b6001600160a01b0316336001600160a01b0316146103795760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b60648201526084015b60405180910390fd5b60005b82518110156103d657816006600085848151811061039c5761039c611587565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905560010161037c565b505050565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561042e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610452919061156a565b6001600160a01b0316336001600160a01b0316146104bc5760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608401610370565b6007805460ff1916911515919091179055565b600033905060006001836040516104e6919061159d565b908152604051908190036020019020546001600160a01b031690508061054e5760405162461bcd60e51b815260206004820152601c60248201527f526566657272616c20636f646520646f6573206e6f74206578697374000000006044820152606401610370565b806001600160a01b0316826001600160a01b0316036105d55760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f742075736520796f7572206f776e20726566657272616c20636f6460448201527f65000000000000000000000000000000000000000000000000000000000000006064820152608401610370565b6001600160a01b03828116600090815260056020526040902054161561063d5760405162461bcd60e51b815260206004820152601c60248201527f416c72656164792075736564206120726566657272616c20636f6465000000006044820152606401610370565b6001600160a01b03908116600081815260046020908152604080832080546001818101835582865284862090910180549890971673ffffffffffffffffffffffffffffffffffffffff199889168117909755908101805491820181558452828420429101559382526005905291909120805490921617905550565b600954604051633581777360e01b81526020600482015260076024820152665374616b696e6760c81b60448201526060916000916001600160a01b0390911690633581777390606401602060405180830381865afa15801561071e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610742919061156a565b9050336001600160a01b03821614806107e25750600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cd919061156a565b6001600160a01b0316336001600160a01b0316145b61083a5760405162461bcd60e51b815260206004820152602360248201527f4f6e6c79205374616b696e672063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610370565b6001600160a01b038316600090815260046020908152604091829020805483518184028101840190945280845290918301828280156108a257602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610884575b505050505091505b50919050565b600954604051633581777360e01b81526020600482015260076024820152665374616b696e6760c81b604482015260009182916001600160a01b0390911690633581777390606401602060405180830381865afa158015610915573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610939919061156a565b9050336001600160a01b03821614806109d95750600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c4919061156a565b6001600160a01b0316336001600160a01b0316145b610a315760405162461bcd60e51b815260206004820152602360248201527f4f6e6c79205374616b696e672063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610370565b600183604051610a41919061159d565b908152604051908190036020019020546001600160a01b0316915050919050565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ab5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad9919061156a565b6001600160a01b0316336001600160a01b031614610b435760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608401610370565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6001600160a01b0381166000908152602081905260409020805460609190610b95906115b9565b80601f0160208091040260200160405190810160405280929190818152602001828054610bc1906115b9565b8015610c0e5780601f10610be357610100808354040283529160200191610c0e565b820191906000526020600020905b815481529060010190602001808311610bf157829003601f168201915b50505050509050919050565b600754339060ff1680610c4557506001600160a01b03811660009081526006602052604090205460ff165b610c915760405162461bcd60e51b815260206004820152600e60248201527f4e6f7420617574686f72697a65640000000000000000000000000000000000006044820152606401610370565b6001600160a01b03811660009081526002602052604090205415610cf75760405162461bcd60e51b815260206004820152601f60248201527f526566657272616c20636f646520616c72656164792067656e657261746564006044820152606401610370565b600060605b60088054906000610d0c836115ed565b90915550506008546040516bffffffffffffffffffffffff19606086901b1660208201526034810191909152605401604051602081830303815290604052805190602001209150610d5c82611153565b6000838152600360205260409020549091506001600160a01b0316151580610db6575060006001600160a01b0316600182604051610d9a919061159d565b908152604051908190036020019020546001600160a01b031614155b610cfc576001600160a01b0383166000908152602081905260409020610ddc8282611662565b5082600182604051610dee919061159d565b9081526040805160209281900383019020805473ffffffffffffffffffffffffffffffffffffffff199081166001600160a01b03958616179091559590921660008181526002835283812086905594855260039091529220805490931690911790915550565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ecb919061156a565b6001600160a01b0316336001600160a01b031614610f355760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608401610370565b6009805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b600954604051633581777360e01b81526020600482015260076024820152665374616b696e6760c81b60448201526060916000916001600160a01b0390911690633581777390606401602060405180830381865afa158015610fca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fee919061156a565b9050336001600160a01b038216148061108e5750600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611055573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611079919061156a565b6001600160a01b0316336001600160a01b0316145b6110e65760405162461bcd60e51b815260206004820152602360248201527f4f6e6c79205374616b696e672063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610370565b6001600160a01b038316600090815260046020908152604091829020600101805483518184028101840190945280845290918301828280156108a257602002820191906000526020600020905b815481526020019060010190808311611133575050505050915050919050565b604080518082018252601081527f303132333435363738396162636465660000000000000000000000000000000060208201528151600a8082528184019093526060926000919060208201818036833701905050905060005b600a8160ff1610156112425782858260ff16602081106111ce576111ce611587565b1a60f81b60f81c600f1660ff16815181106111eb576111eb611587565b602001015160f81c60f81b828260ff168151811061120b5761120b611587565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506001016111ac565b509392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112895761128961124a565b604052919050565b6001600160a01b03811681146112a657600080fd5b50565b803580151581146112b957600080fd5b919050565b600080604083850312156112d157600080fd5b823567ffffffffffffffff8111156112e857600080fd5b8301601f810185136112f957600080fd5b803567ffffffffffffffff8111156113135761131361124a565b8060051b61132360208201611260565b9182526020818401810192908101908884111561133f57600080fd5b6020850194505b8385101561136d578435925061135b83611291565b82825260209485019490910190611346565b8096505050505050611381602084016112a9565b90509250929050565b60006020828403121561139c57600080fd5b6113a5826112a9565b9392505050565b6000602082840312156113be57600080fd5b81356113a581611291565b6000602082840312156113db57600080fd5b813567ffffffffffffffff8111156113f257600080fd5b8201601f8101841361140357600080fd5b803567ffffffffffffffff81111561141d5761141d61124a565b611430601f8201601f1916602001611260565b81815285602083850101111561144557600080fd5b81602084016020830137600091810160200191909152949350505050565b602080825282518282018190526000918401906040840190835b818110156114a45783516001600160a01b031683526020938401939092019160010161147d565b509095945050505050565b600080604083850312156114c257600080fd5b82356114cd81611291565b9150611381602084016112a9565b60005b838110156114f65781810151838201526020016114de565b50506000910152565b602081526000825180602084015261151e8160408501602087016114db565b601f01601f19169190910160400192915050565b602080825282518282018190526000918401906040840190835b818110156114a457835183526020938401939092019160010161154c565b60006020828403121561157c57600080fd5b81516113a581611291565b634e487b7160e01b600052603260045260246000fd5b600082516115af8184602087016114db565b9190910192915050565b600181811c908216806115cd57607f821691505b6020821081036108aa57634e487b7160e01b600052602260045260246000fd5b60006001820161160d57634e487b7160e01b600052601160045260246000fd5b5060010190565b601f8211156103d657806000526020600020601f840160051c8101602085101561163b5750805b601f840160051c820191505b8181101561165b5760008155600101611647565b5050505050565b815167ffffffffffffffff81111561167c5761167c61124a565b6116908161168a84546115b9565b84611614565b6020601f8211600181146116c457600083156116ac5750848201515b600019600385901b1c1916600184901b17845561165b565b600084815260208120601f198516915b828110156116f457878501518255602094850194600190920191016116d4565b50848210156117125786840151600019600387901b60f8161c191681555b50505050600190811b0190555056fea26469706673582212207a46551371fd18ab60bb093d1cef09691f1d83232e29e31853d6c84f3c0e25fe64736f6c634300081a00330000000000000000000000007a8991cd99d714734c48b61b915f13a7807c82df
Deployed Bytecode
0x608060405234801561001057600080fd5b50600436106100ea5760003560e01c80635873a1961161008c5780639cade937116100665780639cade93714610221578063b0a2fc1b14610258578063d0ebdbe714610260578063f9f6864a1461027357600080fd5b80635873a196146101db5780635d23273f146101ee5780636208aebe1461020157600080fd5b806333a8433a116100c857806333a8433a1461015757806341a0894d1461016a5780634a9fefc71461018a578063544736e6146101ce57600080fd5b8063105af005146100ef578063166aa8a8146101045780631e1c154a14610117575b600080fd5b6101026100fd3660046112be565b610293565b005b61010261011236600461138a565b6103db565b6101426101253660046113ac565b6001600160a01b0316600090815260026020526040902054151590565b60405190151581526020015b60405180910390f35b6101026101653660046113c9565b6104cf565b61017d6101783660046113ac565b6106b8565b60405161014e9190611463565b6101b66101983660046113ac565b6001600160a01b039081166000908152600560205260409020541690565b6040516001600160a01b03909116815260200161014e565b6007546101429060ff1681565b6101b66101e93660046113c9565b6108b0565b6101026101fc3660046114af565b610a62565b61021461020f3660046113ac565b610b6e565b60405161014e91906114ff565b61024a61022f3660046113ac565b6001600160a01b031660009081526004602052604090205490565b60405190815260200161014e565b610102610c1a565b61010261026e3660046113ac565b610e54565b6102866102813660046113ac565b610f64565b60405161014e9190611532565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156102e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061030a919061156a565b6001600160a01b0316336001600160a01b0316146103795760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b60648201526084015b60405180910390fd5b60005b82518110156103d657816006600085848151811061039c5761039c611587565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905560010161037c565b505050565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561042e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610452919061156a565b6001600160a01b0316336001600160a01b0316146104bc5760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608401610370565b6007805460ff1916911515919091179055565b600033905060006001836040516104e6919061159d565b908152604051908190036020019020546001600160a01b031690508061054e5760405162461bcd60e51b815260206004820152601c60248201527f526566657272616c20636f646520646f6573206e6f74206578697374000000006044820152606401610370565b806001600160a01b0316826001600160a01b0316036105d55760405162461bcd60e51b815260206004820152602160248201527f43616e6e6f742075736520796f7572206f776e20726566657272616c20636f6460448201527f65000000000000000000000000000000000000000000000000000000000000006064820152608401610370565b6001600160a01b03828116600090815260056020526040902054161561063d5760405162461bcd60e51b815260206004820152601c60248201527f416c72656164792075736564206120726566657272616c20636f6465000000006044820152606401610370565b6001600160a01b03908116600081815260046020908152604080832080546001818101835582865284862090910180549890971673ffffffffffffffffffffffffffffffffffffffff199889168117909755908101805491820181558452828420429101559382526005905291909120805490921617905550565b600954604051633581777360e01b81526020600482015260076024820152665374616b696e6760c81b60448201526060916000916001600160a01b0390911690633581777390606401602060405180830381865afa15801561071e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610742919061156a565b9050336001600160a01b03821614806107e25750600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107a9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107cd919061156a565b6001600160a01b0316336001600160a01b0316145b61083a5760405162461bcd60e51b815260206004820152602360248201527f4f6e6c79205374616b696e672063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610370565b6001600160a01b038316600090815260046020908152604091829020805483518184028101840190945280845290918301828280156108a257602002820191906000526020600020905b81546001600160a01b03168152600190910190602001808311610884575b505050505091505b50919050565b600954604051633581777360e01b81526020600482015260076024820152665374616b696e6760c81b604482015260009182916001600160a01b0390911690633581777390606401602060405180830381865afa158015610915573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610939919061156a565b9050336001600160a01b03821614806109d95750600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c4919061156a565b6001600160a01b0316336001600160a01b0316145b610a315760405162461bcd60e51b815260206004820152602360248201527f4f6e6c79205374616b696e672063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610370565b600183604051610a41919061159d565b908152604051908190036020019020546001600160a01b0316915050919050565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ab5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ad9919061156a565b6001600160a01b0316336001600160a01b031614610b435760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608401610370565b6001600160a01b03919091166000908152600660205260409020805460ff1916911515919091179055565b6001600160a01b0381166000908152602081905260409020805460609190610b95906115b9565b80601f0160208091040260200160405190810160405280929190818152602001828054610bc1906115b9565b8015610c0e5780601f10610be357610100808354040283529160200191610c0e565b820191906000526020600020905b815481529060010190602001808311610bf157829003601f168201915b50505050509050919050565b600754339060ff1680610c4557506001600160a01b03811660009081526006602052604090205460ff165b610c915760405162461bcd60e51b815260206004820152600e60248201527f4e6f7420617574686f72697a65640000000000000000000000000000000000006044820152606401610370565b6001600160a01b03811660009081526002602052604090205415610cf75760405162461bcd60e51b815260206004820152601f60248201527f526566657272616c20636f646520616c72656164792067656e657261746564006044820152606401610370565b600060605b60088054906000610d0c836115ed565b90915550506008546040516bffffffffffffffffffffffff19606086901b1660208201526034810191909152605401604051602081830303815290604052805190602001209150610d5c82611153565b6000838152600360205260409020549091506001600160a01b0316151580610db6575060006001600160a01b0316600182604051610d9a919061159d565b908152604051908190036020019020546001600160a01b031614155b610cfc576001600160a01b0383166000908152602081905260409020610ddc8282611662565b5082600182604051610dee919061159d565b9081526040805160209281900383019020805473ffffffffffffffffffffffffffffffffffffffff199081166001600160a01b03958616179091559590921660008181526002835283812086905594855260039091529220805490931690911790915550565b600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ea7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ecb919061156a565b6001600160a01b0316336001600160a01b031614610f355760405162461bcd60e51b815260206004820152602160248201527f4f6e6c79206f776e65722063616e2063616c6c20746869732066756e6374696f6044820152603760f91b6064820152608401610370565b6009805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b600954604051633581777360e01b81526020600482015260076024820152665374616b696e6760c81b60448201526060916000916001600160a01b0390911690633581777390606401602060405180830381865afa158015610fca573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fee919061156a565b9050336001600160a01b038216148061108e5750600960009054906101000a90046001600160a01b03166001600160a01b0316638da5cb5b6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611055573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611079919061156a565b6001600160a01b0316336001600160a01b0316145b6110e65760405162461bcd60e51b815260206004820152602360248201527f4f6e6c79205374616b696e672063616e2063616c6c20746869732066756e637460448201526234b7b760e91b6064820152608401610370565b6001600160a01b038316600090815260046020908152604091829020600101805483518184028101840190945280845290918301828280156108a257602002820191906000526020600020905b815481526020019060010190808311611133575050505050915050919050565b604080518082018252601081527f303132333435363738396162636465660000000000000000000000000000000060208201528151600a8082528184019093526060926000919060208201818036833701905050905060005b600a8160ff1610156112425782858260ff16602081106111ce576111ce611587565b1a60f81b60f81c600f1660ff16815181106111eb576111eb611587565b602001015160f81c60f81b828260ff168151811061120b5761120b611587565b60200101907effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916908160001a9053506001016111ac565b509392505050565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156112895761128961124a565b604052919050565b6001600160a01b03811681146112a657600080fd5b50565b803580151581146112b957600080fd5b919050565b600080604083850312156112d157600080fd5b823567ffffffffffffffff8111156112e857600080fd5b8301601f810185136112f957600080fd5b803567ffffffffffffffff8111156113135761131361124a565b8060051b61132360208201611260565b9182526020818401810192908101908884111561133f57600080fd5b6020850194505b8385101561136d578435925061135b83611291565b82825260209485019490910190611346565b8096505050505050611381602084016112a9565b90509250929050565b60006020828403121561139c57600080fd5b6113a5826112a9565b9392505050565b6000602082840312156113be57600080fd5b81356113a581611291565b6000602082840312156113db57600080fd5b813567ffffffffffffffff8111156113f257600080fd5b8201601f8101841361140357600080fd5b803567ffffffffffffffff81111561141d5761141d61124a565b611430601f8201601f1916602001611260565b81815285602083850101111561144557600080fd5b81602084016020830137600091810160200191909152949350505050565b602080825282518282018190526000918401906040840190835b818110156114a45783516001600160a01b031683526020938401939092019160010161147d565b509095945050505050565b600080604083850312156114c257600080fd5b82356114cd81611291565b9150611381602084016112a9565b60005b838110156114f65781810151838201526020016114de565b50506000910152565b602081526000825180602084015261151e8160408501602087016114db565b601f01601f19169190910160400192915050565b602080825282518282018190526000918401906040840190835b818110156114a457835183526020938401939092019160010161154c565b60006020828403121561157c57600080fd5b81516113a581611291565b634e487b7160e01b600052603260045260246000fd5b600082516115af8184602087016114db565b9190910192915050565b600181811c908216806115cd57607f821691505b6020821081036108aa57634e487b7160e01b600052602260045260246000fd5b60006001820161160d57634e487b7160e01b600052601160045260246000fd5b5060010190565b601f8211156103d657806000526020600020601f840160051c8101602085101561163b5750805b601f840160051c820191505b8181101561165b5760008155600101611647565b5050505050565b815167ffffffffffffffff81111561167c5761167c61124a565b6116908161168a84546115b9565b84611614565b6020601f8211600181146116c457600083156116ac5750848201515b600019600385901b1c1916600184901b17845561165b565b600084815260208120601f198516915b828110156116f457878501518255602094850194600190920191016116d4565b50848210156117125786840151600019600387901b60f8161c191681555b50505050600190811b0190555056fea26469706673582212207a46551371fd18ab60bb093d1cef09691f1d83232e29e31853d6c84f3c0e25fe64736f6c634300081a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007a8991cd99d714734c48b61b915f13a7807c82df
-----Decoded View---------------
Arg [0] : _manager (address): 0x7A8991cD99D714734C48b61B915f13A7807C82dF
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a8991cd99d714734c48b61b915f13a7807c82df
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 31 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ 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.