Overview
S Balance
S Value
$0.00More Info
Private Name Tags
ContractCreator
Loading...
Loading
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0xE09E32Fd...852Cf5eEB The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
SonicRings
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.20; contract SonicRings { address public owner; address payable public marketingWallet; address payable public devWallet; address payable public devRewardWallet; uint256 public totalInvested; uint256 public totalWithdrawn; uint256 public totalDeposits; uint256 public totalReferralRewards; uint256 public totalDevReferralReinvested; uint256 public constant BASE_DAILY_PERCENT = 50; // 5.0% daily (50 / 1000) uint256 public constant BOOST_INCREMENT = 1; // 0.1% per day (1 / 1000) uint256 public constant MAX_BOOST_DAYS = 10; uint256 public constant REFERRAL_PERCENT = 80; // 8% referral reward uint256 public constant DEV_FEE = 30; // 3% dev fee uint256 public constant DEV_REFERRAL_BOOST = 170; // 17% boost if dev referral is used on Day 1 uint256 public constant USER_REFERRAL_BOOST = 133; // 13.3% boost if normal user referral is used on Day 1 uint256 public constant NORMAL_USER_BOOST = 0; // 5% base boost for normal investors uint256 public constant DEV_REFERRAL_TAX = 100; // 10% tax on dev referral deposits uint256 public constant DEV_TVL_REINVEST = 50; // 5% of dev referral goes back into TVL uint256 public constant DEV_DIRECT_REWARD = 50; // 5% of dev referral stays in dev reward wallet uint256[10] public TAX_SCHEDULE = [90, 80, 70, 60, 50, 40, 20, 15, 10, 5]; bool private _locked; modifier nonReentrant() { require(!_locked, "ReentrancyGuard: reentrant call"); _locked = true; _; _locked = false; } struct User { uint256 totalInvestedAmount; uint256 invested; uint256 depositPlusCompounded; uint256 withdrawn; uint256 lastActionTime; uint256 boostDays; uint256 depositTime; address referrer; uint256 referralRewards; bool devReferralUsed; bool userReferralUsed; uint256 compoundedRewards; uint256 referralBoostEndTime; // New field to track when boost expires bool hasEverUsedReferral; bool hasPerformedFirstAction; } mapping(address => User) public users; mapping(address => address[]) public referredUsers; modifier onlyOwner() { require(msg.sender == owner, "Not authorized"); _; } event Deposit(address indexed user, uint256 amount); event Withdraw(address indexed user, uint256 amount, uint256 tax); event ReferralReward( address indexed referrer, address indexed user, uint256 amount ); event Debug(string message); function getTaxSchedule(uint256 index) public view returns (uint256) { require(index < TAX_SCHEDULE.length, "Index out of bounds"); return TAX_SCHEDULE[index]; } function updateTaxSchedule(uint256[10] memory newTaxSchedule) external onlyOwner { TAX_SCHEDULE = newTaxSchedule; } function getReferralRewards(address user) public view returns (uint256) { return users[user].referralRewards; } function getReferredUsers(address user) public view returns (address[] memory) { return referredUsers[user]; } /** * @dev Returns the total value locked in the contract * @return Total amount of SONIC tokens in the contract */ function getTotalValueLocked() public view returns (uint256) { return address(this).balance; } function getCompoundableRewards(address userAddress) public view returns (uint256) { User storage user = users[userAddress]; if (user.depositPlusCompounded == 0) { return 0; } // Calculate time elapsed with cap uint256 timeElapsed = block.timestamp - user.lastActionTime; uint256 maxAccumulationTime = 86400; timeElapsed = timeElapsed > maxAccumulationTime ? maxAccumulationTime : timeElapsed; // Check if this is first action bool isFirstAction = !user.hasPerformedFirstAction; // Apply referral boost ONLY on first action uint256 dailyPercent; if (isFirstAction) { if (user.devReferralUsed) { dailyPercent = DEV_REFERRAL_BOOST; // 17% } else if (user.userReferralUsed) { dailyPercent = USER_REFERRAL_BOOST; // 13.3% } else { dailyPercent = BASE_DAILY_PERCENT; // 5% base rate } } else { // Normal calculation for subsequent actions dailyPercent = BASE_DAILY_PERCENT + (user.boostDays * BOOST_INCREMENT); } // Calculate ONLY new earnings since last action uint256 newEarnings = (user.depositPlusCompounded * dailyPercent * timeElapsed) / (86400 * 1000); return newEarnings; } function compound() external nonReentrant { User storage user = users[msg.sender]; require(user.invested > 0, "No investment found"); require( block.timestamp - user.lastActionTime >= 24 hours, "Can only compound once per day" ); // First action logic bool isFirstAction = !user.hasPerformedFirstAction; // Calculate daily rate with boost and referral bonuses uint256 dailyPercent = 0; // Apply referral boost ONLY on first action if (isFirstAction) { if (user.devReferralUsed) { dailyPercent = DEV_REFERRAL_BOOST; // 17% } else if (user.userReferralUsed) { dailyPercent = USER_REFERRAL_BOOST; // 13.3% } else { dailyPercent = BASE_DAILY_PERCENT; // 5% base rate } } else { // Normal calculation for subsequent actions dailyPercent = BASE_DAILY_PERCENT + (user.boostDays * BOOST_INCREMENT); } // Remaining function logic stays the same uint256 timeElapsed = block.timestamp - user.lastActionTime; uint256 maxAccumulationTime = 86400; timeElapsed = timeElapsed > maxAccumulationTime ? maxAccumulationTime : timeElapsed; uint256 earnings = (user.depositPlusCompounded * dailyPercent * timeElapsed) / (86400 * 1000); user.depositPlusCompounded += earnings; user.compoundedRewards = user.depositPlusCompounded; // Increment boost days ONLY if not first action or if it's first action and we're now completing it if (!isFirstAction) { // Not first action, normal boost increment user.boostDays = user.boostDays < MAX_BOOST_DAYS ? user.boostDays + 1 : MAX_BOOST_DAYS; } else { // First action just completed, start at 1 boost day user.boostDays = 1; } if (!user.hasPerformedFirstAction) { user.hasPerformedFirstAction = true; } user.lastActionTime = block.timestamp; emit Deposit(msg.sender, earnings); } function withdraw() external nonReentrant { User storage user = users[msg.sender]; require( block.timestamp >= user.depositTime + 24 hours, "Withdrawals are restricted in the first 24 hours" ); require( block.timestamp - user.lastActionTime >= 24 hours, "Can only withdraw once per day" ); // Calculate maximum withdrawal amount (total available value) uint256 maxAvailable = user.depositPlusCompounded; require(maxAvailable > 0, "No funds available to withdraw"); // Calculate 3x deposit limit uint256 maxLimit = user.totalInvestedAmount * 3; // Determine the actual amount to withdraw uint256 amount; if (maxAvailable <= maxLimit) { // User can withdraw everything amount = maxAvailable; } else { // User can only withdraw up to 3x their deposit amount = maxLimit; // The rest stays in the contract user.depositPlusCompounded = maxAvailable - maxLimit; } // First action logic bool isFirstAction = !user.hasPerformedFirstAction; // Calculate daily percent for this action uint256 dailyPercent = 0; // Apply referral boost ONLY on first action if (isFirstAction) { if (user.devReferralUsed) { dailyPercent = DEV_REFERRAL_BOOST; // 17% } else if (user.userReferralUsed) { dailyPercent = USER_REFERRAL_BOOST; // 13.3% } else { dailyPercent = BASE_DAILY_PERCENT; // 5% base rate } } else { // Normal calculation for subsequent actions dailyPercent = BASE_DAILY_PERCENT + (user.boostDays * BOOST_INCREMENT); } // Tax calculation uint256 index = user.boostDays >= TAX_SCHEDULE.length ? TAX_SCHEDULE.length - 1 : user.boostDays; uint256 taxRate = TAX_SCHEDULE[index]; uint256 taxAmount = (amount * taxRate) / 100; uint256 halfTax = taxAmount / 2; uint256 netAmount = amount - taxAmount; // Update user data: // Track only the net amount that users actually receive user.withdrawn += netAmount; // If we're not withdrawing everything, we've already updated depositPlusCompounded above // If we are withdrawing everything, we need to set it to 0 if (maxAvailable <= maxLimit) { user.depositPlusCompounded = 0; } // ALWAYS reset boost days on withdraw user.boostDays = 0; // Transfer logic (bool success, ) = payable(msg.sender).call{value: netAmount}(""); require(success, "Transfer to user failed"); (bool marketingSuccess, ) = marketingWallet.call{value: halfTax}(""); require(marketingSuccess, "Marketing wallet transfer failed"); totalInvested += halfTax; if (!user.hasPerformedFirstAction) { user.hasPerformedFirstAction = true; } user.lastActionTime = block.timestamp; totalWithdrawn += netAmount; emit Withdraw(msg.sender, amount, taxAmount); } function getAvailableRewards(address userAddress) public view returns (uint256) { User storage user = users[userAddress]; if (user.depositPlusCompounded == 0) { return 0; } // Simply return the user's total value (depositPlusCompounded) return user.depositPlusCompounded; } function deposit(address referrer) external payable nonReentrant { require(msg.value >= 10 * 10**18, "Minimum deposit is 10 SONIC"); require(msg.value > 0, "Must send SONIC"); User storage user = users[msg.sender]; // Check if this is the user's first ever deposit bool isFirstEverDeposit = (user.invested == 0); // Restructured referrer validation for clarity and reliability bool validReferrer = false; bool isDevReferral = false; // Check for dev referral if (referrer == devWallet || referrer == devRewardWallet) { validReferrer = true; isDevReferral = true; } // Check for user referral - store referrer user data first else if (referrer != address(0) && referrer != msg.sender) { User storage referrerUser = users[referrer]; if (referrerUser.invested > 0) { validReferrer = true; } } // Only apply referral flags for the first time ever per user if (validReferrer && !user.hasEverUsedReferral) { // Set the permanent flag to prevent future referral bonuses user.hasEverUsedReferral = true; user.referrer = referrer; // Store the referrer relationship // Add user to the referrer's list of referred users referredUsers[referrer].push(msg.sender); if (isDevReferral) { user.devReferralUsed = true; user.userReferralUsed = false; } else { user.devReferralUsed = false; user.userReferralUsed = true; } } // Calculate fees and rewards based on referral type uint256 devFee = 0; uint256 marketingFee = 0; uint256 referralReward = 0; uint256 depositAmount = 0; if (validReferrer) { if (isDevReferral) { // Dev referral: 10% tax total - 5% to marketing, 5% to dev wallet marketingFee = (msg.value * 50) / 1000; // 5% to marketing wallet devFee = (msg.value * 50) / 1000; // 5% to dev wallet // Send marketing fee (bool marketingSuccess, ) = marketingWallet.call{ value: marketingFee }(""); require(marketingSuccess, "Marketing wallet transfer failed"); // Send dev fee (bool devSuccess, ) = devWallet.call{value: devFee}(""); require(devSuccess, "Dev fee transfer failed"); // Calculate net deposit (90%) depositAmount = msg.value - marketingFee - devFee; } else { // User referral: 8% to referrer, 2% to dev wallet, 90% to deposit referralReward = (msg.value * 80) / 1000; // 8% to referrer devFee = (msg.value * 20) / 1000; // 2% to dev wallet // Send referral reward (bool refSuccess, ) = payable(referrer).call{ value: referralReward }(""); require(refSuccess, "Referral reward transfer failed"); // Update referrer's referral rewards users[referrer].referralRewards += referralReward; totalReferralRewards += referralReward; // Send dev fee (bool devSuccess, ) = devWallet.call{value: devFee}(""); require(devSuccess, "Dev fee transfer failed"); // Calculate net deposit (90%) depositAmount = msg.value - referralReward - devFee; // Emit referral reward event emit ReferralReward(referrer, msg.sender, referralReward); } } else { // Dev referral: 10% tax total - 5% to marketing, 5% to dev wallet marketingFee = (msg.value * 50) / 1000; // 5% to marketing wallet devFee = (msg.value * 50) / 1000; // 5% to dev wallet // Send marketing fee (bool marketingSuccess, ) = marketingWallet.call{ value: marketingFee }(""); require(marketingSuccess, "Marketing wallet transfer failed"); // Send dev fee (bool devSuccess, ) = devWallet.call{value: devFee}(""); require(devSuccess, "Dev fee transfer failed"); // Calculate net deposit (90%) depositAmount = msg.value - marketingFee - devFee; } // Update user data user.invested = user.invested + depositAmount; user.totalInvestedAmount += depositAmount; user.depositPlusCompounded = user.depositPlusCompounded + depositAmount; // Update compoundedRewards to include the new deposit user.compoundedRewards = user.depositPlusCompounded; // Only update depositTime if this is the user's first ever deposit if (isFirstEverDeposit) { user.depositTime = block.timestamp; user.lastActionTime = block.timestamp; user.hasPerformedFirstAction = false; // Initialize the flag } else { // Just update lastActionTime for subsequent deposits user.lastActionTime = block.timestamp; // Don't change hasPerformedFirstAction } // Always update lastActionTime user.lastActionTime = block.timestamp; // Update contract statistics totalInvested += depositAmount; totalDeposits++; emit Deposit(msg.sender, depositAmount); } function timeUntilNextAction(address userAddress) public view returns (uint256) { User storage user = users[userAddress]; // If user has no investments, they can act immediately if (user.invested == 0) { return 0; } // Calculate time since last action uint256 timeSinceLastAction = block.timestamp - user.lastActionTime; // Minimum time between actions (24 hours) uint256 minActionInterval = 86400; // 24 hours in seconds // If enough time has passed, return 0 (can act now) if (timeSinceLastAction >= minActionInterval) { return 0; } // Otherwise, return the remaining time return minActionInterval - timeSinceLastAction; } /** * @dev Returns the current tax rate for a user based on their boost days * @param userAddress Address of the user to check * @return Current tax rate percentage */ function getCurrentTaxRate(address userAddress) public view returns (uint256) { User storage user = users[userAddress]; uint256 index = user.boostDays >= TAX_SCHEDULE.length ? TAX_SCHEDULE.length - 1 : user.boostDays; return TAX_SCHEDULE[index]; } function getUserBasicInfo(address userAddress) public view returns ( uint256 invested, uint256 withdrawn, uint256 availableRewards, uint256 boostDays, uint256 currentDailyRate, uint256 currentTaxRate ) { User storage user = users[userAddress]; // Get available rewards uint256 availableRew = getAvailableRewards(userAddress); // Check if this is first action bool isFirstAction = !user.hasPerformedFirstAction; // Apply referral boost ONLY on first action uint256 dailyPercent; if (isFirstAction) { if (user.devReferralUsed) { dailyPercent = DEV_REFERRAL_BOOST; // 17% } else if (user.userReferralUsed) { dailyPercent = USER_REFERRAL_BOOST; // 13.3% } else { dailyPercent = BASE_DAILY_PERCENT; // 5% base rate } } else { // Normal calculation for subsequent actions dailyPercent = BASE_DAILY_PERCENT + (user.boostDays * BOOST_INCREMENT); } // Get current tax rate uint256 index = user.boostDays >= TAX_SCHEDULE.length ? TAX_SCHEDULE.length - 1 : user.boostDays; uint256 taxRate = TAX_SCHEDULE[index]; return ( user.invested, user.withdrawn, availableRew, user.boostDays, dailyPercent, taxRate ); } function getUserExtendedInfo(address userAddress) public view returns ( uint256 referralRewards, uint256 lastActionTime, uint256 depositTime, uint256 depositPlusCompounded, uint256 compoundableRewards ) { User storage user = users[userAddress]; uint256 compoundableRew = getCompoundableRewards(userAddress); return ( user.referralRewards, user.lastActionTime, user.depositTime, user.depositPlusCompounded, compoundableRew ); } function getUserInfo(address userAddress) public view returns ( uint256 invested, uint256 withdrawn, uint256 availableRewards, uint256 boostDays, uint256 currentDailyRate, uint256 currentTaxRate, uint256 referralRewards, uint256 lastActionTime, uint256 depositTime, uint256 depositPlusCompounded ) { User storage user = users[userAddress]; // Get available rewards uint256 availableRew = getAvailableRewards(userAddress); // Check if this is first action bool isFirstAction = !user.hasPerformedFirstAction; // Apply referral boost ONLY on first action uint256 dailyPercent; if (isFirstAction) { if (user.devReferralUsed) { dailyPercent = DEV_REFERRAL_BOOST; // 17% } else if (user.userReferralUsed) { dailyPercent = USER_REFERRAL_BOOST; // 13.3% } else { dailyPercent = BASE_DAILY_PERCENT; // 5% base rate } } else { // Normal calculation for subsequent actions dailyPercent = BASE_DAILY_PERCENT + (user.boostDays * BOOST_INCREMENT); } // Get current tax rate uint256 index = user.boostDays >= TAX_SCHEDULE.length ? TAX_SCHEDULE.length - 1 : user.boostDays; uint256 taxRate = TAX_SCHEDULE[index]; return ( user.invested, user.withdrawn, availableRew, user.boostDays, dailyPercent, taxRate, user.referralRewards, user.lastActionTime, user.depositTime, user.depositPlusCompounded ); } constructor() { owner = msg.sender; marketingWallet = payable(0x2c5896b947882Bf265A43996bB735b247C6DA0ce); devWallet = payable(0xc31354e0178D3B7abaa992C6aCD6929B657E6bC5); devRewardWallet = payable(0xeB79bF0ed0eC013A45BfD3Ed2B44e81349b7e2a9); } }
{ "optimizer": { "enabled": true, "runs": 200 }, "viaIR": true, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"message","type":"string"}],"name":"Debug","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"referrer","type":"address"},{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"ReferralReward","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tax","type":"uint256"}],"name":"Withdraw","type":"event"},{"inputs":[],"name":"BASE_DAILY_PERCENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"BOOST_INCREMENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_DIRECT_REWARD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_REFERRAL_BOOST","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_REFERRAL_TAX","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_TVL_REINVEST","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"MAX_BOOST_DAYS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"NORMAL_USER_BOOST","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"REFERRAL_PERCENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"TAX_SCHEDULE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"USER_REFERRAL_BOOST","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"compound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"referrer","type":"address"}],"name":"deposit","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"devRewardWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getAvailableRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getCompoundableRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getCurrentTaxRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getReferralRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"getReferredUsers","outputs":[{"internalType":"address[]","name":"","type":"address[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"getTaxSchedule","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalValueLocked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserBasicInfo","outputs":[{"internalType":"uint256","name":"invested","type":"uint256"},{"internalType":"uint256","name":"withdrawn","type":"uint256"},{"internalType":"uint256","name":"availableRewards","type":"uint256"},{"internalType":"uint256","name":"boostDays","type":"uint256"},{"internalType":"uint256","name":"currentDailyRate","type":"uint256"},{"internalType":"uint256","name":"currentTaxRate","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserExtendedInfo","outputs":[{"internalType":"uint256","name":"referralRewards","type":"uint256"},{"internalType":"uint256","name":"lastActionTime","type":"uint256"},{"internalType":"uint256","name":"depositTime","type":"uint256"},{"internalType":"uint256","name":"depositPlusCompounded","type":"uint256"},{"internalType":"uint256","name":"compoundableRewards","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserInfo","outputs":[{"internalType":"uint256","name":"invested","type":"uint256"},{"internalType":"uint256","name":"withdrawn","type":"uint256"},{"internalType":"uint256","name":"availableRewards","type":"uint256"},{"internalType":"uint256","name":"boostDays","type":"uint256"},{"internalType":"uint256","name":"currentDailyRate","type":"uint256"},{"internalType":"uint256","name":"currentTaxRate","type":"uint256"},{"internalType":"uint256","name":"referralRewards","type":"uint256"},{"internalType":"uint256","name":"lastActionTime","type":"uint256"},{"internalType":"uint256","name":"depositTime","type":"uint256"},{"internalType":"uint256","name":"depositPlusCompounded","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"referredUsers","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"timeUntilNextAction","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalDeposits","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalDevReferralReinvested","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalInvested","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalReferralRewards","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalWithdrawn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256[10]","name":"newTaxSchedule","type":"uint256[10]"}],"name":"updateTaxSchedule","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"users","outputs":[{"internalType":"uint256","name":"totalInvestedAmount","type":"uint256"},{"internalType":"uint256","name":"invested","type":"uint256"},{"internalType":"uint256","name":"depositPlusCompounded","type":"uint256"},{"internalType":"uint256","name":"withdrawn","type":"uint256"},{"internalType":"uint256","name":"lastActionTime","type":"uint256"},{"internalType":"uint256","name":"boostDays","type":"uint256"},{"internalType":"uint256","name":"depositTime","type":"uint256"},{"internalType":"address","name":"referrer","type":"address"},{"internalType":"uint256","name":"referralRewards","type":"uint256"},{"internalType":"bool","name":"devReferralUsed","type":"bool"},{"internalType":"bool","name":"userReferralUsed","type":"bool"},{"internalType":"uint256","name":"compoundedRewards","type":"uint256"},{"internalType":"uint256","name":"referralBoostEndTime","type":"uint256"},{"internalType":"bool","name":"hasEverUsedReferral","type":"bool"},{"internalType":"bool","name":"hasPerformedFirstAction","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Deployed Bytecode
0x6080806040526004361015610012575f80fd5b5f3560e01c90816304cdb842146115075750806305cfaf8e1461143d57806315bedb9114611422578063328644c61461140757806332e5b6d81461134157806333a8915a146113265780633ccfd60b14610fe0578063436a88c114610fc5578063441b55b114610fa85780634a2ff37e14610eb55780634b31971314610e985780634dd3db0114610e315780635216aeec14610e14578063607e14ee14610db85780636373db65146104085780636386c1c714610c7457806375f0a87414610c4c5780637d88209714610c2f578063860a8b0a14610408578063873e31fa14610c0c5780638da5cb5b14610be55780638e96ee5c14610bca5780638ea5220f14610ba2578063999127ee14610b7a5780639b473fa614610b575780639f99122f14610b3d578063a87430ba14610a4c578063ad04673f14610a2f578063b26025aa14610a14578063b9663e0e146109d9578063d72b3c04146109ae578063e73a9b4914610944578063e851c27214610918578063e92820e6146108b6578063ef97f1c91461089b578063f340fa011461040d578063f359f662146104085763f69e2046146101be575f80fd5b34610404575f3660031901126104045760016013546101e060ff82161561159b565b60ff191617601355335f52601460205260405f206001810154156103c957600481018054916201518061021384426115f4565b1061038457600c81019060ff825460081c1615805f1461035c57600982015460ff81161561033b575061024960aa955b426115f4565b620151808111156103365750620151805b6102836305265c0061027b600286019361027685549a8b611588565b611588565b0480976115e7565b809155600a830155155f1461032a576005018054600a811015610321576001810180911161030d57905b555b805460ff8160081c16156102fb575b50504290556040519081527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a26013805460ff19169055005b61ff0019166101001790555f806102be565b634e487b7160e01b5f52601160045260245ffd5b50600a906102ad565b600560019101556102af565b61025a565b60081c60ff161561035157610249608595610243565b610249603295610243565b60058201548080046001148115171561030d576032018060321161030d576102499095610243565b60405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c7920636f6d706f756e64206f6e6365207065722064617900006044820152606490fd5b60405162461bcd60e51b8152602060048201526013602482015272139bc81a5b9d995cdd1b595b9d08199bdd5b99606a1b6044820152606490fd5b5f80fd5b611558565b602036600319011261040457610421611542565b600160135461043360ff82161561159b565b60ff191617601355678ac7230489e80000341061085657341561081f57335f908152601460205260408120600181018054600254919492939015926001600160a01b03908116928291168314801561080b575b156107d65750506001805b80806107c7575b610714575b156106d957156105cf57506032340234810460320361030d576103e861051391046104e15f8080808560018060a01b03600154165af16104db611601565b50611640565b6105045f8080808560018060a01b03600254165af16104fe611601565b506117cf565b61050e81346115f4565b6115f4565b925b6105208482546115e7565b905561052d8383546115e7565b82556002820161053e8482546115e7565b809155600a8301555f146105c457426006820155426004820155600c810161ff001981541690555b600442910155610578816004546115e7565b6004556006545f19811461030d576001016006556040519081527fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c60203392a26013805460ff19169055005b426004820155610566565b926050340234810460500361030d576103e890046014340234810460140361030d576103e890045f808080858a5af1610606611601565b50156106945761066290865f526014602052600860405f200161062a8482546115e7565b9055610638836007546115e7565b6007556106585f8080808560018060a01b03600254165af16104fe611601565b61050e83346115f4565b946040519182527f53958b9c644a1d5529da7c36929d59417eb9a996f08e02a52632bfe20c92ef4860203393a3610515565b60405162461bcd60e51b815260206004820152601f60248201527f526566657272616c20726577617264207472616e73666572206661696c6564006044820152606490fd5b50506032340234810460320361030d576103e861070e91046104e15f8080808560018060a01b03600154165af16104db611601565b92610515565b600c8501805460ff191660011790556007850180546001600160a01b031916841790555f8381526015602052604090208054680100000000000000008110156107b35761076691600182018155611573565b81546001600160a01b0360039290921b91821b19163390911b179055811561079d5760098501805461ffff1916600117905561049d565b60098501805461ffff191661010017905561049d565b634e487b7160e01b5f52604160045260245ffd5b5060ff600c8601541615610498565b82151580610801575b1561049157825f526014602052600160405f2001541561049157506001610491565b50338314156107df565b506003546001600160a01b03168314610486565b60405162461bcd60e51b815260206004820152600f60248201526e4d7573742073656e6420534f4e494360881b6044820152606490fd5b60405162461bcd60e51b815260206004820152601b60248201527f4d696e696d756d206465706f73697420697320313020534f4e494300000000006044820152606490fd5b34610404575f36600319011261040457602060405160858152f35b34610404576040366003190112610404576108cf611542565b6001600160a01b03165f90815260156020526040902080546024359190821015610404576020916108ff91611573565b905460405160039290921b1c6001600160a01b03168152f35b3461040457602036600319011261040457600435600a8110156104045760209060090154604051908152f35b346104045760203660031901126104045760a061095f611542565b600180831b0381165f52601460205261097b60405f20916116b3565b60088201549160048101549060026006820154910154916040519485526020850152604084015260608301526080820152f35b346104045760203660031901126104045760206109d16109cc611542565b611784565b604051908152f35b34610404576020366003190112610404576001600160a01b036109fa611542565b165f5260146020526020600860405f200154604051908152f35b34610404575f36600319011261040457602047604051908152f35b34610404575f366003190112610404576020600754604051908152f35b34610404576020366003190112610404576001600160a01b03610a6d611542565b165f52601460205260405f2080549060018101549060028101546003820154600483015460058401546006850154600160a01b6001900360078701541691600887015493600988015495600a89015497600b8a015499600c01549a6040519c8d5260208d015260408c015260608b015260808a015260a089015260c088015260e087015261010086015260ff8116151561012086015260081c60ff16151561014085015261016084015261018083015260ff811615156101a083015260081c60ff1615156101c08201526101e090f35b34610404575f3660031901126104045760206040515f8152f35b346104045760203660031901126104045760206109d1610b75611542565b6116b3565b34610404575f366003190112610404576003546040516001600160a01b039091168152602090f35b34610404575f366003190112610404576002546040516001600160a01b039091168152602090f35b34610404575f36600319011261040457602060405160648152f35b34610404575f366003190112610404575f546040516001600160a01b039091168152602090f35b346104045760203660031901126104045760206109d1610c2a611542565b61168b565b34610404575f366003190112610404576020600654604051908152f35b34610404575f366003190112610404576001546040516001600160a01b039091168152602090f35b3461040457602036600319011261040457610c8d611542565b6001600160a01b0381165f90815260146020526040902090610cae9061168b565b9060ff600c82015460081c16155f14610d8557600981015460ff811615610d6c575060aa5b600582015491600a8310610d65576009935b600a851015610d51576101409460090154936001830154946003840154946008850154926004860154946002600688015497015497604051998a5260208a015260408901526060880152608087015260a086015260c085015260e0840152610100830152610120820152f35b634e487b7160e01b5f52603260045260245ffd5b8293610ce5565b60081c60ff1615610d7e576085610cd3565b6032610cd3565b60058101548080046001148115171561030d576032018060321115610cd357634e487b7160e01b5f52601160045260245ffd5b34610404576020366003190112610404576001600160a01b03610dd9611542565b165f90815260146020526040902060050154600a8110610e0f575060095b600a811015610d515760209060090154604051908152f35b610df7565b34610404575f366003190112610404576020600454604051908152f35b3461040457602036600319011261040457600435600a811015610e5d5760209060090154604051908152f35b60405162461bcd60e51b8152602060048201526013602482015272496e646578206f7574206f6620626f756e647360681b6044820152606490fd5b34610404575f366003190112610404576020600554604051908152f35b3461040457602036600319011261040457610ece611542565b6001600160a01b0381165f90815260146020526040902090610eef9061168b565b9060ff600c82015460081c16155f14610f8457600981015460ff811615610f69575060aa915b600582015492600a8410610f63576009935b600a851015610d515760c094600901549260036001860154950154604051958652602086015260408501526060840152608083015260a0820152f35b83610f27565b60081c60ff1615610f7c57608591610f15565b603291610f15565b60058101548080046001148115171561030d576032018060321161030d5791610f15565b34610404575f366003190112610404576020600854604051908152f35b34610404575f366003190112610404576020604051601e8152f35b34610404575f36600319011261040457600160135461100260ff82161561159b565b60ff191617601355335f52601460205260405f20600681015462015180810180911161030d5742106112c8576004810190620151806110428354426115f4565b10611283576002810190815490811561123e5780549160038302928084046003149015171561030d578281118015939061122b5750935b600c8201805460081c60ff1661120757600983015460ff8116156111f657505b600583018054600a81106111f057506009905b600a821015610d515760646110c65f93600901548a611588565b04968760011c9660036110d98a8c6115f4565b97016110e68882546115e7565b90556111e7575b50555f80808086335af16110ff611601565b50156111a257611131846111295f8080806111509a60018060a01b03600154165af16104db611601565b6004546115e7565b600455805460ff8160081c1615611190575b50504290556005546115e7565b60055560405191825260208201527ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b56860403392a26013805460ff19169055005b61ff0019166101001790558580611143565b60405162461bcd60e51b815260206004820152601760248201527f5472616e7366657220746f2075736572206661696c65640000000000000000006044820152606490fd5b829055886110ed565b906110ac565b60081c60ff165f0361109957611099565b60058301548080046001148115171561030d576032018060321161030d5750611099565b806112379196926115f4565b8455611079565b60405162461bcd60e51b815260206004820152601e60248201527f4e6f2066756e647320617661696c61626c6520746f20776974686472617700006044820152606490fd5b60405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c79207769746864726177206f6e6365207065722064617900006044820152606490fd5b60405162461bcd60e51b815260206004820152603060248201527f5769746864726177616c7320617265207265737472696374656420696e20746860448201526f6520666972737420323420686f75727360801b6064820152608490fd5b34610404575f36600319011261040457602060405160508152f35b34610404576020366003190112610404576001600160a01b03611362611542565b165f52601560205260405f20604051806020835491828152019081935f5260205f20905f5b8181106113e8575050508161139d910382611520565b604051918291602083019060208452518091526040830191905f5b8181106113c6575050500390f35b82516001600160a01b03168452859450602093840193909201916001016113b8565b82546001600160a01b0316845260209093019260019283019201611387565b34610404575f366003190112610404576020604051600a8152f35b34610404575f36600319011261040457602060405160aa8152f35b346104045761014036600319011261040457366023121561040457604051610140810181811067ffffffffffffffff8211176107b357604052803661014411610404576004905b61014482106114f7575f5483906001600160a01b031633036114c1575f5b600a81106114ac57005b600190602083519301928160090155016114a2565b60405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b6044820152606490fd5b8135815260209182019101611484565b34610404575f3660031901126104045780600160209252f35b90601f8019910116810190811067ffffffffffffffff8211176107b357604052565b600435906001600160a01b038216820361040457565b34610404575f36600319011261040457602060405160328152f35b8054821015610d51575f5260205f2001905f90565b8181029291811591840414171561030d57565b156115a257565b60405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606490fd5b9190820180921161030d57565b9190820391821161030d57565b3d1561163b573d9067ffffffffffffffff82116107b35760405191611630601f8201601f191660200184611520565b82523d5f602084013e565b606090565b1561164757565b606460405162461bcd60e51b815260206004820152602060248201527f4d61726b6574696e672077616c6c6574207472616e73666572206661696c65646044820152fd5b6001600160a01b03165f9081526014602052604090206002015480156116ae5790565b505f90565b6001600160a01b03165f9081526014602052604090206002810154801561177e576116e26004830154426115f4565b62015180811115611778575062015180915b600c81015460081c60ff1661174757916102766117289260096305265c0095015460ff81165f1461172c575060aa90611588565b0490565b60081c60ff161561173f57608590611588565b603290611588565b600501548080046001148115171561030d57603201918260321161030d57610276611728926305265c009490611588565b916116f4565b50505f90565b6001600160a01b03165f9081526014602052604090206001810154156116ae5760046117b2910154426115f4565b620151808110156116ae57620151800362015180811161030d5790565b156117d657565b60405162461bcd60e51b815260206004820152601760248201527f44657620666565207472616e73666572206661696c65640000000000000000006044820152606490fdfea26469706673582212205310a3716fd6e1b8d7563bdd89b25bc65c77dbd3dd6e5731954b07925dcfc42364736f6c634300081a0033
Deployed Bytecode Sourcemap
58:22115:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;1555:4;1492:7;58:22115;1483:52;58:22115;;;1491:8;1483:52;:::i;:::-;58:22115;;;;1492:7;58:22115;5055:10;58:22115;;5049:5;58:22115;;;;;1555:4;5084:13;;58:22115;5084:17;58:22115;;;5174:19;;58:22115;;5156:15;5197:8;5156:37;:15;;:37;:::i;:::-;:49;58:22115;;5324:28;;;58:22115;;;;;;;5323:29;5515:529;;;;;5552:20;;;58:22115;;;;;;;5592:33;6127:37;806:3;5548:296;;5156:15;6127:37;:::i;:::-;5197:8;6233:33;;5197:8;;;6233:93;5197:8;6233:93;6465:38;6441:12;6357:79;:26;;;58:22115;6357:53;58:22115;;6357:53;;;:::i;:::-;:79;:::i;:::-;58:22115;6465:38;;;:::i;:::-;58:22115;;;6513:22;;;58:22115;;6684:333;58:22115;;;6791:14;;58:22115;;6513:22;6791:31;;6513:22;;;1555:4;58:22115;;;;;;;6791:101;;58:22115;6684:333;58:22115;;;;;;;7031:29;7027:95;;6684:333;5156:15;;;58:22115;;;;;;;7184:29;58:22115;5055:10;7184:29;;1492:7;58:22115;;-1:-1:-1;;58:22115:0;;;;7027:95;-1:-1:-1;;58:22115:0;;;;;7027:95;;;;58:22115;;;;;;;;;;;;6791:101;;6513:22;6791:101;;;6684:333;6988:14;1555:4;6988:14;;58:22115;6684:333;;6233:93;;;5548:296;58:22115;;;;;;;6127:37;907:3;5653:191;5548:296;;5653:191;6127:37;1285:2;5653:191;5548:296;;5515:529;6000:14;;;58:22115;;;;1555:4;58:22115;;;;;;;1285:2;58:22115;;1285:2;58:22115;;;6127:37;5931:102;5515:529;;;58:22115;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;1492:7;58:22115;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;;58:22115:0;;;;;;:::i;:::-;1555:4;1492:7;58:22115;1483:52;58:22115;;;1491:8;1483:52;:::i;:::-;-1:-1:-1;;58:22115:0;;1492:7;58:22115;10969:11;10956:9;:24;58:22115;;10956:9;11030:13;58:22115;;11100:10;58:22115;;;;11094:5;58:22115;;;;;1555:4;11207:13;;58:22115;;11432:9;58:22115;11207:13;;58:22115;;11207:18;;;-1:-1:-1;;;;;58:22115:0;;;;;;;11420:21;;:52;;;;58:22115;11416:438;;;11488:20;;1555:4;11522:20;11416:438;11938:42;;;;11416:438;11934:623;;11416:438;12762:2653;;;12795:1878;;;10956:9;12943:2;10956:9;58:22115;10956:9;58:22115;;12943:2;58:22115;;;12949:4;13548:33;58:22115;;13235:61;58:22115;;;;;;;;;;1555:4;58:22115;;13134:83;;;;:::i;:::-;;13235:61;:::i;:::-;13420:46;58:22115;;;;;;;;;;11432:9;58:22115;;13369:33;;;;:::i;:::-;;13420:46;:::i;:::-;13548:24;10956:9;;13548:24;:::i;:::-;:33;:::i;:::-;12795:1878;;15469:29;58:22115;;;15469:29;:::i;:::-;58:22115;;15508:41;58:22115;;;15508:41;:::i;:::-;58:22115;;11432:9;15588:26;;:42;58:22115;;;15588:42;:::i;:::-;58:22115;;;15704:22;;;58:22115;15842:393;;;;15899:15;15880:16;;;58:22115;15899:15;58:22115;15928:19;;58:22115;15979:28;;;58:22115;;;;;;;15842:393;58:22115;16307:15;16285:19;;58:22115;16371:30;58:22115;;;16371:30;:::i;:::-;58:22115;;16411:15;58:22115;-1:-1:-1;;58:22115:0;;;;1555:4;58:22115;16411:15;58:22115;;;;;;16442:34;58:22115;11100:10;16442:34;;1492:7;58:22115;;-1:-1:-1;;58:22115:0;;;;15842:393;16157:15;58:22115;16135:19;;58:22115;15842:393;;12795:1878;10956:9;13733:2;10956:9;58:22115;10956:9;58:22115;;13733:2;58:22115;;;13739:4;58:22115;;11094:5;10956:9;58:22115;10956:9;58:22115;;11094:5;58:22115;;;13739:4;58:22115;;;13912:87;;;;;;;;;:::i;:::-;;58:22115;;;14501:35;58:22115;;;;11094:5;58:22115;;14144:31;58:22115;;;14144:31;:49;58:22115;;;14144:49;:::i;:::-;58:22115;;14211:38;58:22115;14211:38;58:22115;14211:38;:::i;:::-;;58:22115;14373:46;58:22115;;;;;;;;;;11432:9;58:22115;;14322:33;;;;:::i;14373:46::-;14501:26;10956:9;;14501:26;:::i;:35::-;58:22115;;;;;;14606:52;58:22115;11100:10;14606:52;;12795:1878;;58:22115;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;;12762:2653;10956:9;;14810:2;10956:9;58:22115;10956:9;58:22115;;14810:2;58:22115;;;14816:4;15371:33;58:22115;;15078:61;58:22115;;;;;;;;;;1555:4;58:22115;;14989:75;;;;:::i;15371:33::-;12762:2653;;;11934:623;12069:24;;;58:22115;;-1:-1:-1;;58:22115:0;1555:4;58:22115;;;12114:13;;;58:22115;;-1:-1:-1;;;;;;58:22115:0;;;;;-1:-1:-1;58:22115:0;;;12253:13;58:22115;;;;;;;;;;;;;;;1555:4;58:22115;;;;;:::i;:::-;;;-1:-1:-1;;;;;58:22115:0;;;;;;;;;;11100:10;58:22115;;;;;;12308:239;;;;12345:20;;;58:22115;;-1:-1:-1;;58:22115:0;1555:4;58:22115;;;11934:623;;12308:239;12458:20;;;58:22115;;-1:-1:-1;;58:22115:0;;;;;11934:623;;58:22115;;;;;;;;;;;;11938:42;11956:24;58:22115;11956:24;;;58:22115;;11955:25;11938:42;;11416:438;11639:22;;;:48;;;11416:438;11635:219;11416:438;11635:219;58:22115;;;11094:5;58:22115;;1555:4;58:22115;;;11764:21;58:22115;11760:84;11416:438;11760:84;11809:20;1555:4;11416:438;;11639:48;11100:10;;11665:22;;;11639:48;;11420:52;-1:-1:-1;11457:15:0;58:22115;-1:-1:-1;;;;;58:22115:0;11445:27;;11420:52;;58:22115;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;907:3;58:22115;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;:::i;:::-;-1:-1:-1;;;;;58:22115:0;;;;;2199:50;58:22115;;;;;;;;;;;2199:50;;;;;58:22115;2199:50;;;;:::i;:::-;58:22115;;;;;;;;;;-1:-1:-1;;;;;58:22115:0;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;1342:73;;;;;58:22115;;1342:73;58:22115;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;:::i;:::-;;;;;;;;;;19726:5;58:22115;;19780:35;58:22115;;;19780:35;;:::i;:::-;19847:20;;;58:22115;19881:19;58:22115;19881:19;;58:22115;19914:16;19944:26;19914:16;;;58:22115;19944:26;;58:22115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;-1:-1:-1;;;;;58:22115:0;;:::i;:::-;;;;3068:5;58:22115;;;3068:27;58:22115;;;3068:27;58:22115;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;3477:21;58:22115;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;339:35;58:22115;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;-1:-1:-1;;;;;58:22115:0;;:::i;:::-;;;;2156:37;58:22115;;;;;;;2156:37;;;;58:22115;2156:37;;;;58:22115;2156:37;;;58:22115;;2156:37;;58:22115;2156:37;;;58:22115;2156:37;;;58:22115;;;;;;;2156:37;;;58:22115;;2156:37;;;;58:22115;2156:37;;;;58:22115;2156:37;;;;58:22115;2156:37;;;;58:22115;2156:37;;;58:22115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2156:37;58:22115;;;;;;;;;;;;;;;;;;;;;;;;;;2156:37;58:22115;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;58:22115:0;;;;192:38;58:22115;;;-1:-1:-1;;;;;58:22115:0;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;154:32;58:22115;;;-1:-1:-1;;;;;58:22115:0;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;1104:3;58:22115;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;-1:-1:-1;;;;;58:22115:0;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;-1:-1:-1;;58:22115:0;;;;;305:28;58:22115;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;-1:-1:-1;;;;;58:22115:0;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;:::i;:::-;-1:-1:-1;;;;;58:22115:0;;;;;;20506:5;58:22115;;;;;;20591:32;;;:::i;:::-;20697:28;58:22115;20697:28;;;58:22115;;;;20696:29;20819:529;;;;20856:20;;;58:22115;;;;;;;20896:33;806:3;20852:296;21406:14;;;58:22115;;;21406:37;;58:22115;;;21406:104;;58:22115;;;;;;;;21424:12;58:22115;;21589:13;;;;58:22115;21616:14;58:22115;21616:14;;58:22115;21745:20;58:22115;21745:20;;58:22115;21779:19;58:22115;21779:19;;58:22115;21812:16;21842:26;21812:16;;;58:22115;21842:26;;58:22115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21406:104;;;;;20852:296;58:22115;;;;;;;907:3;20852:296;;20957:191;1285:2;20852:296;;20819:529;21304:14;;;58:22115;;;;549:1;58:22115;;;;;;;1285:2;58:22115;;1285:2;58:22115;;20819:529;58:22115;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;-1:-1:-1;;;;;58:22115:0;;:::i;:::-;;;;;;17612:5;58:22115;;;;;17656:14;;58:22115;;17656:37;;58:22115;;17656:104;58:22115;17656:104;58:22115;;;;;;;;17674:12;58:22115;;;;;;;;17656:104;;;58:22115;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;2726:27;;58:22115;;;;;2734:12;58:22115;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;270:29;58:22115;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;:::i;:::-;-1:-1:-1;;;;;58:22115:0;;;;;;18149:5;58:22115;;;;;;18234:32;;;:::i;:::-;18340:28;58:22115;18340:28;;;58:22115;;;;18339:29;18462:529;;;;18499:20;;;58:22115;;;;;;;18539:33;806:3;18495:296;;19049:14;;;58:22115;;;19049:37;;58:22115;;;19049:104;;58:22115;;;;;;;;19067:12;58:22115;;19232:13;58:22115;19232:13;;;58:22115;19259:14;;58:22115;;;;;;;;;;;;;;;;;;;;;;;;;;;19049:104;;;;18495:296;58:22115;;;;;;;907:3;18600:191;18495:296;;18600:191;1285:2;18600:191;18495:296;;18462:529;18947:14;;;58:22115;;;;549:1;58:22115;;;;;;;1285:2;58:22115;;1285:2;58:22115;;;18462:529;;;58:22115;;;;;;-1:-1:-1;;58:22115:0;;;;;380:41;58:22115;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;739:2;58:22115;;;;;;;;;-1:-1:-1;;58:22115:0;;;;1555:4;1492:7;58:22115;1483:52;58:22115;;;1491:8;1483:52;:::i;:::-;58:22115;;;;1492:7;58:22115;7304:10;58:22115;;7298:5;58:22115;;;;;7365:16;;;58:22115;7384:8;58:22115;;;;;;;7346:15;:46;58:22115;;;7516:19;;58:22115;7384:8;7498:37;58:22115;;7346:15;7498:37;:::i;:::-;:49;58:22115;;7708:26;;;58:22115;;;7752:16;;;58:22115;;;;;7898:1;58:22115;;;;;;7898:1;58:22115;;;;;;;7989:24;;;;;;;7985:341;;8073:21;7985:341;;8388:28;;;58:22115;;;;;;8566:529;;8603:20;;;58:22115;;;;;;;8643:33;8599:296;9148:14;;;58:22115;;;9148:37;;58:22115;;9148:104;58:22115;9148:104;;58:22115;;;;;;9350:3;9330:16;58:22115;;9166:12;58:22115;;9330:16;;:::i;:::-;58:22115;;;1555:4;58:22115;9424:18;7898:1;9424:18;;;;:::i;:::-;9547:14;;:27;58:22115;;;9547:27;:::i;:::-;58:22115;;9751:85;;9148:104;58:22115;;;7304:10;;;;;9967:46;;;;:::i;:::-;;58:22115;;;10227:24;58:22115;10155:61;58:22115;;;;10414:27;58:22115;;;;;;1555:4;58:22115;;10105:40;;;;:::i;10155:61::-;58:22115;;10227:24;:::i;:::-;58:22115;;;;;;;;;10266:29;10262:95;;9148:104;7346:15;;;58:22115;;9148:14;58:22115;10414:27;:::i;:::-;9148:14;58:22115;;;;;;;;;;10457:39;58:22115;7304:10;10457:39;;1492:7;58:22115;;-1:-1:-1;;58:22115:0;;;;10262:95;-1:-1:-1;;58:22115:0;;;;;10262:95;;;;58:22115;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;9350:3;;58:22115;9751:85;58:22115;;;9751:85;;;9148:104;;;;8599:296;58:22115;;;;8704:191;58:22115;8599:296;58:22115;8599:296;;8566:529;9051:14;;;58:22115;;;;1555:4;58:22115;;;;;;;1285:2;58:22115;;1285:2;58:22115;;;8566:529;;;7985:341;8186:17;8292:23;8186:17;;;8292:23;:::i;:::-;58:22115;;7985:341;;58:22115;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;675:2;58:22115;;;;;;;;;-1:-1:-1;;58:22115:0;;;;-1:-1:-1;;;;;58:22115:0;;:::i;:::-;;;;3232:13;58:22115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;58:22115:0;;;;;-1:-1:-1;58:22115:0;;;;;;;;;;;;;;;;-1:-1:-1;;;;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;624:2;58:22115;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;806:3;58:22115;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;58:22115:0;2295:10;:19;58:22115;;;;;;;;;;;;;;;;;;;;2937:29;58:22115;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;549:1;58:22115;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;-1:-1:-1;;;;;58:22115:0;;;;;;:::o;:::-;;;;;;-1:-1:-1;;58:22115:0;;;;;;;1285:2;58:22115;;;;;;;;;;;-1:-1:-1;58:22115:0;;-1:-1:-1;58:22115:0;;;-1:-1:-1;58:22115:0;:::o;:::-;;;;;;;;;;;;;;;;:::o;:::-;;;;:::o;:::-;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;-1:-1:-1;;58:22115:0;;;;;:::i;:::-;;;;-1:-1:-1;58:22115:0;;;;:::o;:::-;;;:::o;:::-;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;10509:358;-1:-1:-1;;;;;58:22115:0;;;;;10647:5;58:22115;;;;;10679:26;;58:22115;10679:31;;10675:70;;10509:358;:::o;10675:70::-;10726:8;58:22115;10726:8;:::o;3511:1460::-;-1:-1:-1;;;;;58:22115:0;-1:-1:-1;58:22115:0;;;3652:5;58:22115;;;;;3684:26;;;58:22115;3684:31;;3680:70;;3825:37;3843:19;;;58:22115;3825:15;:37;:::i;:::-;3902:5;3931:33;;3902:5;;;3931:93;3902:5;3931:93;;4098:28;;;58:22115;;;;;4220:529;;4257:20;4839:53;:79;4257:20;;4923:12;4257:20;;58:22115;;;;4253:296;58:22115;;;4297:33;806:3;4253:296;4839:53;:::i;:79::-;58:22115;3511:1460;:::o;4253:296::-;58:22115;;;;;;;907:3;4358:191;6357:79;:::i;4358:191::-;1285:2;4358:191;6357:79;:::i;4220:529::-;4705:14;;58:22115;;;;549:1;58:22115;;;;;;;1285:2;58:22115;;;1285:2;58:22115;;;4839:53;:79;4636:102;4923:12;4636:102;4220:529;4839:53;:::i;3931:93::-;;;;3680:70;3731:8;;-1:-1:-1;3731:8:0;:::o;16489:789::-;-1:-1:-1;;;;;58:22115:0;;;;;16627:5;58:22115;;;;;;16724:13;;58:22115;16724:18;16720:57;;16879:19;16861:37;16879:19;;58:22115;16861:15;:37;:::i;:::-;16988:5;17092:40;;;17088:79;;16988:5;58:22115;16988:5;58:22115;;;;16489:789;:::o;58:22115::-;;;;:::o;:::-;;;-1:-1:-1;;;58:22115:0;;;;;;;;;;;;;;;;;;;
Swarm Source
ipfs://5310a3716fd6e1b8d7563bdd89b25bc65c77dbd3dd6e5731954b07925dcfc423
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
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.