Sonic Blaze Testnet

Contract

0xEFaF715d2fC0f700C7711E378fD3f36beb296734

Overview

S Balance

Sonic Blaze LogoSonic Blaze LogoSonic Blaze Logo0 S

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To

There are no matching entries

Please try again later

Parent Transaction Hash Block From To
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
SonicMiner

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at testnet.sonicscan.org on 2025-02-28
*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.20;

contract SonicMiner {
    
    address public owner;
    address public marketingWallet;
    address public devWallet;
    address 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; // Boost resets on day 10
    uint256 public constant REFERRAL_PERCENT = 80; // 8% referral reward
    uint256 public constant DEV_FEE = 30; // 3% dev fee
     // Max withdrawal 10% of user's share
    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 = 50; // 5% base boost for normal investors
    uint256 public constant DEV_REFERRAL_REINVEST = 20; // 2% of dev referral reinvested into contract
    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];

    struct User {
        uint256 maxWithdrawLimit;
        uint256 invested;
        uint256 withdrawn;
        uint256 lastActionTime;
        uint256 boostDays;
        address referrer;
        uint256 referralRewards;
        bool devReferralUsed;
        bool userReferralUsed;
    }
    
    mapping(address => User) public users;
    
    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);
    function withdraw(uint256 amount) external {
        User storage user = users[msg.sender];
        require(amount <= user.invested * 3, "Max single withdrawal limit exceeded");
        if (user.withdrawn + amount >= user.invested * 3) {
            user.withdrawn = 0; // Reset withdrawn amount after reaching 3x limit
        } else {
            user.withdrawn += amount;
        }
        require(block.timestamp - user.lastActionTime >= 1 minutes, "Can only withdraw once per day");
        
        uint256 taxRate = TAX_SCHEDULE[user.boostDays >= TAX_SCHEDULE.length ? TAX_SCHEDULE.length - 1 : user.boostDays];
        uint256 taxAmount = (amount * taxRate) / 100;
        uint256 netAmount = amount - taxAmount;
        
        user.withdrawn += amount;
        user.boostDays = 0; // Reset tax schedule after withdrawal
        user.lastActionTime = block.timestamp;
        
        payable(msg.sender).transfer(netAmount);
        emit Withdraw(msg.sender, amount, taxAmount);
    }
        
    constructor() {
        owner = msg.sender;
        marketingWallet = 0x2c5896b947882Bf265A43996bB735b247C6DA0ce;
        devWallet = 0xc31354e0178D3B7abaa992C6aCD6929B657E6bC5;
        devRewardWallet = 0xeB79bF0ed0eC013A45BfD3Ed2B44e81349b7e2a9;
    }
    
    function deposit(address referrer) external payable {
        users[msg.sender].lastActionTime = block.timestamp; // Reset timer when reinvesting
        require(users[msg.sender].withdrawn < users[msg.sender].invested * 3, "Max withdrawal limit reached");
        require(msg.value > 0, "Must send BNB");
        
        uint256 devFee = (msg.value * DEV_FEE) / 1000;
        uint256 referralReward = (msg.value * REFERRAL_PERCENT) / 1000;
        uint256 depositAmount = msg.value - devFee - referralReward;
        
        payable(devWallet).transfer(devFee);
        
        User storage user = users[msg.sender];
        user.invested += depositAmount;
        user.lastActionTime = block.timestamp;
        
        if (referrer != address(0) && referrer != msg.sender && users[referrer].invested > 0) {
            uint256 devReferralFee = (referralReward * 20) / 100; // 2% to dev from referral reward
            uint256 reinvestAmount = (devReferralFee * DEV_REFERRAL_REINVEST) / 100; // 2% reinvested
            referralReward -= devReferralFee;
            
            payable(devWallet).transfer(devReferralFee - reinvestAmount);
            payable(referrer).transfer(referralReward);
            users[referrer].referralRewards += referralReward;
            totalReferralRewards += referralReward;
            totalDevReferralReinvested += reinvestAmount;
            
            emit ReferralReward(referrer, msg.sender, referralReward);
            
            if (referrer == devWallet) {
                user.devReferralUsed = true;
            } else {
                user.userReferralUsed = true;
            }
        }
        
        totalInvested += depositAmount;
        totalDeposits++;
        
        emit Deposit(msg.sender, depositAmount);
    }
    
    function compound() external {
        
        User storage user = users[msg.sender];
        require(user.invested > 0, "No investment found");
        require(block.timestamp - user.lastActionTime >= 1 minutes, "Can only compound once per day");
        
        uint256 dailyPercent = BASE_DAILY_PERCENT + (user.boostDays * BOOST_INCREMENT);
        uint256 earnings = (user.invested * dailyPercent) / 1000;
        user.invested += earnings;
        
        user.boostDays = user.boostDays < MAX_BOOST_DAYS ? user.boostDays + 1 : MAX_BOOST_DAYS;
        user.lastActionTime = block.timestamp;
        
        emit Deposit(msg.sender, earnings); // Log compounding as a deposit event
    }
}

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"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_REINVEST","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","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"address","name":"","type":"address"}],"name":"users","outputs":[{"internalType":"uint256","name":"maxWithdrawLimit","type":"uint256"},{"internalType":"uint256","name":"invested","type":"uint256"},{"internalType":"uint256","name":"withdrawn","type":"uint256"},{"internalType":"uint256","name":"lastActionTime","type":"uint256"},{"internalType":"uint256","name":"boostDays","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"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"}]

6101c0604052605a6080908152605060a052604660c052603c60e052603261010052602861012052601461014052600f61016052600a61018081905260056101a05261004d916009916100ce565b50348015610059575f80fd5b505f80546001600160a01b03199081163317909155600180548216732c5896b947882bf265a43996bb735b247c6da0ce17905560028054821673c31354e0178d3b7abaa992c6acd6929b657e6bc51790556003805490911673eb79bf0ed0ec013a45bfd3ed2b44e81349b7e2a9179055610125565b82600a8101928215610101579160200282015b82811115610101578251829060ff169055916020019190600101906100e1565b5061010d929150610111565b5090565b5b8082111561010d575f8155600101610112565b610caf806101325f395ff3fe608060405260043610610161575f3560e01c80637d882097116100cd578063a87430ba11610087578063ef97f1c911610062578063ef97f1c914610403578063f340fa0114610417578063f359f66214610250578063f69e20461461042a575f80fd5b8063a87430ba1461030c578063ad04673f146103cf578063e851c272146103e4575f80fd5b80637d8820971461029b578063860a8b0a146102505780638da5cb5b146102b05780638ea5220f146102ce578063999127ee146102ed5780639f99122f14610250575f80fd5b8063441b55b11161011e578063441b55b1146101fd5780634b319713146102125780634c8adc9d146102275780635216aeec1461023b5780636373db651461025057806375f0a87414610264575f80fd5b806304cdb8421461016557806315bedb911461018c5780632e1a7d4d146101a0578063328644c6146101c157806333a8915a146101d5578063436a88c1146101e9575b5f80fd5b348015610170575f80fd5b50610179600181565b6040519081526020015b60405180910390f35b348015610197575f80fd5b5061017960aa81565b3480156101ab575f80fd5b506101bf6101ba366004610b93565b61043e565b005b3480156101cc575f80fd5b50610179600a81565b3480156101e0575f80fd5b50610179605081565b3480156101f4575f80fd5b50610179601e81565b348015610208575f80fd5b5061017960085481565b34801561021d575f80fd5b5061017960055481565b348015610232575f80fd5b50610179601481565b348015610246575f80fd5b5061017960045481565b34801561025b575f80fd5b50610179603281565b34801561026f575f80fd5b50600154610283906001600160a01b031681565b6040516001600160a01b039091168152602001610183565b3480156102a6575f80fd5b5061017960065481565b3480156102bb575f80fd5b505f54610283906001600160a01b031681565b3480156102d9575f80fd5b50600254610283906001600160a01b031681565b3480156102f8575f80fd5b50600354610283906001600160a01b031681565b348015610317575f80fd5b5061037e610326366004610baa565b60136020525f908152604090208054600182015460028301546003840154600485015460058601546006870154600790970154959694959394929391926001600160a01b039091169160ff8082169161010090041689565b60408051998a5260208a019890985296880195909552606087019390935260808601919091526001600160a01b031660a085015260c0840152151560e0830152151561010082015261012001610183565b3480156103da575f80fd5b5061017960075481565b3480156103ef575f80fd5b506101796103fe366004610b93565b610658565b34801561040e575f80fd5b50610179608581565b6101bf610425366004610baa565b61066e565b348015610435575f80fd5b506101bf610a1f565b335f908152601360205260409020600181015461045c906003610beb565b8211156104bc5760405162461bcd60e51b8152602060048201526024808201527f4d61782073696e676c65207769746864726177616c206c696d697420657863656044820152631959195960e21b60648201526084015b60405180910390fd5b60018101546104cc906003610beb565b8282600201546104dc9190610c08565b106104ec575f6002820155610505565b81816002015f8282546104ff9190610c08565b90915550505b603c8160030154426105179190610c1b565b10156105655760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c79207769746864726177206f6e63652070657220646179000060448201526064016104b3565b5f6009600a8360040154101561057f57826004015461058b565b61058b6001600a610c1b565b600a811061059b5761059b610c2e565b015490505f60646105ac8386610beb565b6105b69190610c42565b90505f6105c38286610c1b565b905084846002015f8282546105d89190610c08565b90915550505f60048501819055426003860155604051339183156108fc02918491818181858888f19350505050158015610614573d5f803e3d5ffd5b50604080518681526020810184905233917ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b56891015b60405180910390a25050505050565b600981600a8110610667575f80fd5b0154905081565b335f9081526013602052604090204260038083019190915560019091015461069591610beb565b335f90815260136020526040902060020154106106f45760405162461bcd60e51b815260206004820152601c60248201527f4d6178207769746864726177616c206c696d697420726561636865640000000060448201526064016104b3565b5f34116107335760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1039b2b7321021272160991b60448201526064016104b3565b5f6103e8610742601e34610beb565b61074c9190610c42565b90505f6103e861075d605034610beb565b6107679190610c42565b90505f816107758434610c1b565b61077f9190610c1b565b6002546040519192506001600160a01b03169084156108fc029085905f818181858888f193505050501580156107b7573d5f803e3d5ffd5b50335f908152601360205260408120600181018054919284926107db908490610c08565b90915550504260038201556001600160a01b0385161580159061080757506001600160a01b0385163314155b801561082c57506001600160a01b0385165f9081526013602052604090206001015415155b156109c3575f606461083f856014610beb565b6108499190610c42565b90505f6064610859601484610beb565b6108639190610c42565b905061086f8286610c1b565b6002549095506001600160a01b03166108fc61088b8385610c1b565b6040518115909202915f818181858888f193505050501580156108b0573d5f803e3d5ffd5b506040516001600160a01b0388169086156108fc029087905f818181858888f193505050501580156108e4573d5f803e3d5ffd5b506001600160a01b0387165f908152601360205260408120600601805487929061090f908490610c08565b925050819055508460075f8282546109279190610c08565b925050819055508060085f82825461093f9190610c08565b909155505060405185815233906001600160a01b038916907f53958b9c644a1d5529da7c36929d59417eb9a996f08e02a52632bfe20c92ef489060200160405180910390a36002546001600160a01b03908116908816036109ae5760078301805460ff191660011790556109c0565b60078301805461ff0019166101001790555b50505b8160045f8282546109d49190610c08565b909155505060068054905f6109e883610c61565b909155505060405182815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c90602001610649565b335f9081526013602052604090206001810154610a745760405162461bcd60e51b8152602060048201526013602482015272139bc81a5b9d995cdd1b595b9d08199bdd5b99606a1b60448201526064016104b3565b603c816003015442610a869190610c1b565b1015610ad45760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c7920636f6d706f756e64206f6e63652070657220646179000060448201526064016104b3565b5f60018260040154610ae69190610beb565b610af1906032610c08565b90505f6103e8828460010154610b079190610beb565b610b119190610c42565b905080836001015f828254610b269190610c08565b90915550506004830154600a11610b3e57600a610b4e565b6004830154610b4e906001610c08565b600484015542600384015560405181815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c9060200160405180910390a2505050565b5f60208284031215610ba3575f80fd5b5035919050565b5f60208284031215610bba575f80fd5b81356001600160a01b0381168114610bd0575f80fd5b9392505050565b634e487b7160e01b5f52601160045260245ffd5b8082028115828204841417610c0257610c02610bd7565b92915050565b80820180821115610c0257610c02610bd7565b81810381811115610c0257610c02610bd7565b634e487b7160e01b5f52603260045260245ffd5b5f82610c5c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60018201610c7257610c72610bd7565b506001019056fea2646970667358221220e775b1c54d874e43b15e504c3f7da40d1b9e9443306e538672a74e308db15c2564736f6c63430008140033

Deployed Bytecode

0x608060405260043610610161575f3560e01c80637d882097116100cd578063a87430ba11610087578063ef97f1c911610062578063ef97f1c914610403578063f340fa0114610417578063f359f66214610250578063f69e20461461042a575f80fd5b8063a87430ba1461030c578063ad04673f146103cf578063e851c272146103e4575f80fd5b80637d8820971461029b578063860a8b0a146102505780638da5cb5b146102b05780638ea5220f146102ce578063999127ee146102ed5780639f99122f14610250575f80fd5b8063441b55b11161011e578063441b55b1146101fd5780634b319713146102125780634c8adc9d146102275780635216aeec1461023b5780636373db651461025057806375f0a87414610264575f80fd5b806304cdb8421461016557806315bedb911461018c5780632e1a7d4d146101a0578063328644c6146101c157806333a8915a146101d5578063436a88c1146101e9575b5f80fd5b348015610170575f80fd5b50610179600181565b6040519081526020015b60405180910390f35b348015610197575f80fd5b5061017960aa81565b3480156101ab575f80fd5b506101bf6101ba366004610b93565b61043e565b005b3480156101cc575f80fd5b50610179600a81565b3480156101e0575f80fd5b50610179605081565b3480156101f4575f80fd5b50610179601e81565b348015610208575f80fd5b5061017960085481565b34801561021d575f80fd5b5061017960055481565b348015610232575f80fd5b50610179601481565b348015610246575f80fd5b5061017960045481565b34801561025b575f80fd5b50610179603281565b34801561026f575f80fd5b50600154610283906001600160a01b031681565b6040516001600160a01b039091168152602001610183565b3480156102a6575f80fd5b5061017960065481565b3480156102bb575f80fd5b505f54610283906001600160a01b031681565b3480156102d9575f80fd5b50600254610283906001600160a01b031681565b3480156102f8575f80fd5b50600354610283906001600160a01b031681565b348015610317575f80fd5b5061037e610326366004610baa565b60136020525f908152604090208054600182015460028301546003840154600485015460058601546006870154600790970154959694959394929391926001600160a01b039091169160ff8082169161010090041689565b60408051998a5260208a019890985296880195909552606087019390935260808601919091526001600160a01b031660a085015260c0840152151560e0830152151561010082015261012001610183565b3480156103da575f80fd5b5061017960075481565b3480156103ef575f80fd5b506101796103fe366004610b93565b610658565b34801561040e575f80fd5b50610179608581565b6101bf610425366004610baa565b61066e565b348015610435575f80fd5b506101bf610a1f565b335f908152601360205260409020600181015461045c906003610beb565b8211156104bc5760405162461bcd60e51b8152602060048201526024808201527f4d61782073696e676c65207769746864726177616c206c696d697420657863656044820152631959195960e21b60648201526084015b60405180910390fd5b60018101546104cc906003610beb565b8282600201546104dc9190610c08565b106104ec575f6002820155610505565b81816002015f8282546104ff9190610c08565b90915550505b603c8160030154426105179190610c1b565b10156105655760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c79207769746864726177206f6e63652070657220646179000060448201526064016104b3565b5f6009600a8360040154101561057f57826004015461058b565b61058b6001600a610c1b565b600a811061059b5761059b610c2e565b015490505f60646105ac8386610beb565b6105b69190610c42565b90505f6105c38286610c1b565b905084846002015f8282546105d89190610c08565b90915550505f60048501819055426003860155604051339183156108fc02918491818181858888f19350505050158015610614573d5f803e3d5ffd5b50604080518681526020810184905233917ff279e6a1f5e320cca91135676d9cb6e44ca8a08c0b88342bcdb1144f6511b56891015b60405180910390a25050505050565b600981600a8110610667575f80fd5b0154905081565b335f9081526013602052604090204260038083019190915560019091015461069591610beb565b335f90815260136020526040902060020154106106f45760405162461bcd60e51b815260206004820152601c60248201527f4d6178207769746864726177616c206c696d697420726561636865640000000060448201526064016104b3565b5f34116107335760405162461bcd60e51b815260206004820152600d60248201526c26bab9ba1039b2b7321021272160991b60448201526064016104b3565b5f6103e8610742601e34610beb565b61074c9190610c42565b90505f6103e861075d605034610beb565b6107679190610c42565b90505f816107758434610c1b565b61077f9190610c1b565b6002546040519192506001600160a01b03169084156108fc029085905f818181858888f193505050501580156107b7573d5f803e3d5ffd5b50335f908152601360205260408120600181018054919284926107db908490610c08565b90915550504260038201556001600160a01b0385161580159061080757506001600160a01b0385163314155b801561082c57506001600160a01b0385165f9081526013602052604090206001015415155b156109c3575f606461083f856014610beb565b6108499190610c42565b90505f6064610859601484610beb565b6108639190610c42565b905061086f8286610c1b565b6002549095506001600160a01b03166108fc61088b8385610c1b565b6040518115909202915f818181858888f193505050501580156108b0573d5f803e3d5ffd5b506040516001600160a01b0388169086156108fc029087905f818181858888f193505050501580156108e4573d5f803e3d5ffd5b506001600160a01b0387165f908152601360205260408120600601805487929061090f908490610c08565b925050819055508460075f8282546109279190610c08565b925050819055508060085f82825461093f9190610c08565b909155505060405185815233906001600160a01b038916907f53958b9c644a1d5529da7c36929d59417eb9a996f08e02a52632bfe20c92ef489060200160405180910390a36002546001600160a01b03908116908816036109ae5760078301805460ff191660011790556109c0565b60078301805461ff0019166101001790555b50505b8160045f8282546109d49190610c08565b909155505060068054905f6109e883610c61565b909155505060405182815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c90602001610649565b335f9081526013602052604090206001810154610a745760405162461bcd60e51b8152602060048201526013602482015272139bc81a5b9d995cdd1b595b9d08199bdd5b99606a1b60448201526064016104b3565b603c816003015442610a869190610c1b565b1015610ad45760405162461bcd60e51b815260206004820152601e60248201527f43616e206f6e6c7920636f6d706f756e64206f6e63652070657220646179000060448201526064016104b3565b5f60018260040154610ae69190610beb565b610af1906032610c08565b90505f6103e8828460010154610b079190610beb565b610b119190610c42565b905080836001015f828254610b269190610c08565b90915550506004830154600a11610b3e57600a610b4e565b6004830154610b4e906001610c08565b600484015542600384015560405181815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c9060200160405180910390a2505050565b5f60208284031215610ba3575f80fd5b5035919050565b5f60208284031215610bba575f80fd5b81356001600160a01b0381168114610bd0575f80fd5b9392505050565b634e487b7160e01b5f52601160045260245ffd5b8082028115828204841417610c0257610c02610bd7565b92915050565b80820180821115610c0257610c02610bd7565b81810381811115610c0257610c02610bd7565b634e487b7160e01b5f52603260045260245ffd5b5f82610c5c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60018201610c7257610c72610bd7565b506001019056fea2646970667358221220e775b1c54d874e43b15e504c3f7da40d1b9e9443306e538672a74e308db15c2564736f6c63430008140033

Deployed Bytecode Sourcemap

61:6002:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;508:43;;;;;;;;;;;;550:1;508:43;;;;;160:25:1;;;148:2;133:18;508:43:0;;;;;;;;836:48;;;;;;;;;;;;881:3;836:48;;2211:1015;;;;;;;;;;-1:-1:-1;2211:1015:0;;;;;:::i;:::-;;:::i;:::-;;585:43;;;;;;;;;;;;626:2;585:43;;661:45;;;;;;;;;;;;704:2;661:45;;735:36;;;;;;;;;;;;769:2;735:36;;374:41;;;;;;;;;;;;;;;;261:29;;;;;;;;;;;;;;;;1140:50;;;;;;;;;;;;1188:2;1140:50;;226:28;;;;;;;;;;;;;;;;1337:46;;;;;;;;;;;;1381:2;1337:46;;121:30;;;;;;;;;;-1:-1:-1;121:30:0;;;;-1:-1:-1;;;;;121:30:0;;;;;;-1:-1:-1;;;;;545:32:1;;;527:51;;515:2;500:18;121:30:0;381:203:1;297:28:0;;;;;;;;;;;;;;;;94:20;;;;;;;;;;-1:-1:-1;94:20:0;;;;-1:-1:-1;;;;;94:20:0;;;158:24;;;;;;;;;;-1:-1:-1;158:24:0;;;;-1:-1:-1;;;;;158:24:0;;;189:30;;;;;;;;;;-1:-1:-1;189:30:0;;;;-1:-1:-1;;;;;189:30:0;;;1830:37;;;;;;;;;;-1:-1:-1;1830:37:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;1830:37:0;;;;;;;;;;;;;;;;;;;1239:25:1;;;1295:2;1280:18;;1273:34;;;;1323:18;;;1316:34;;;;1381:2;1366:18;;1359:34;;;;1424:3;1409:19;;1402:35;;;;-1:-1:-1;;;;;1474:32:1;1494:3;1453:19;;1446:61;1538:3;1523:19;;1516:35;1595:14;1588:22;1582:3;1567:19;;1560:51;1655:14;1648:22;1642:3;1627:19;;1620:51;1226:3;1211:19;1830:37:0;880:797:1;332:35:0;;;;;;;;;;;;;;;;1441:73;;;;;;;;;;-1:-1:-1;1441:73:0;;;;;:::i;:::-;;:::i;937:49::-;;;;;;;;;;;;983:3;937:49;;3512:1827;;;;;;:::i;:::-;;:::i;5351:709::-;;;;;;;;;;;;;:::i;2211:1015::-;2291:10;2265:17;2285;;;:5;:17;;;;;2331:13;;;;:17;;2347:1;2331:17;:::i;:::-;2321:6;:27;;2313:76;;;;-1:-1:-1;;;2313:76:0;;2189:2:1;2313:76:0;;;2171:21:1;2228:2;2208:18;;;2201:30;2267:34;2247:18;;;2240:62;-1:-1:-1;;;2318:18:1;;;2311:34;2362:19;;2313:76:0;;;;;;;;;2431:13;;;;:17;;2447:1;2431:17;:::i;:::-;2421:6;2404:4;:14;;;:23;;;;:::i;:::-;:44;2400:202;;2482:1;2465:14;;;:18;2400:202;;;2584:6;2566:4;:14;;;:24;;;;;;;:::i;:::-;;;;-1:-1:-1;;2400:202:0;2661:9;2638:4;:19;;;2620:15;:37;;;;:::i;:::-;:50;;2612:93;;;;-1:-1:-1;;;2612:93:0;;2857:2:1;2612:93:0;;;2839:21:1;2896:2;2876:18;;;2869:30;2935:32;2915:18;;;2908:60;2985:18;;2612:93:0;2655:354:1;2612:93:0;2726:15;2744:12;2775:19;2757:4;:14;;;:37;;:80;;2823:4;:14;;;2757:80;;;2797:23;2819:1;2797:19;:23;:::i;:::-;2744:94;;;;;;;:::i;:::-;;;;-1:-1:-1;2849:17:0;2890:3;2870:16;2744:94;2870:6;:16;:::i;:::-;2869:24;;;;:::i;:::-;2849:44;-1:-1:-1;2904:17:0;2924:18;2849:44;2924:6;:18;:::i;:::-;2904:38;;2981:6;2963:4;:14;;;:24;;;;;;;:::i;:::-;;;;-1:-1:-1;;3015:1:0;2998:14;;;:18;;;3088:15;3066:19;;;:37;3124:39;;3132:10;;3124:39;;;;;3153:9;;3124:39;3015:1;3124:39;3153:9;3132:10;3124:39;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3179:39:0;;;3542:25:1;;;3598:2;3583:18;;3576:34;;;3188:10:0;;3179:39;;3515:18:1;3179:39:0;;;;;;;;2254:972;;;;2211:1015;:::o;1441:73::-;;;;;;;;;;;;;;;-1:-1:-1;1441:73:0;:::o;3512:1827::-;3581:10;3575:17;;;;:5;:17;;;;;3610:15;3575:32;;;;:50;;;;3706:26;;;;;:30;;;:::i;:::-;3682:10;3676:17;;;;:5;:17;;;;;:27;;;:60;3668:101;;;;-1:-1:-1;;;3668:101:0;;3823:2:1;3668:101:0;;;3805:21:1;3862:2;3842:18;;;3835:30;3901;3881:18;;;3874:58;3949:18;;3668:101:0;3621:352:1;3668:101:0;3800:1;3788:9;:13;3780:39;;;;-1:-1:-1;;;3780:39:0;;4180:2:1;3780:39:0;;;4162:21:1;4219:2;4199:18;;;4192:30;-1:-1:-1;;;4238:18:1;;;4231:43;4291:18;;3780:39:0;3978:337:1;3780:39:0;3840:14;3881:4;3858:19;769:2;3858:9;:19;:::i;:::-;3857:28;;;;:::i;:::-;3840:45;-1:-1:-1;3896:22:0;3954:4;3922:28;704:2;3922:9;:28;:::i;:::-;3921:37;;;;:::i;:::-;3896:62;-1:-1:-1;3969:21:0;3896:62;3993:18;4005:6;3993:9;:18;:::i;:::-;:35;;;;:::i;:::-;4057:9;;4049:35;;3969:59;;-1:-1:-1;;;;;;4057:9:0;;4049:35;;;;;4077:6;;4057:9;4049:35;4057:9;4049:35;4077:6;4057:9;4049:35;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4131:10:0;4105:17;4125;;;:5;:17;;;;;4153:13;;;:30;;4125:17;;4170:13;;4153:30;;4170:13;;4153:30;:::i;:::-;;;;-1:-1:-1;;4216:15:0;4194:19;;;:37;-1:-1:-1;;;;;4256:22:0;;;;;;:48;;-1:-1:-1;;;;;;4282:22:0;;4294:10;4282:22;;4256:48;:80;;;;-1:-1:-1;;;;;;4308:15:0;;4335:1;4308:15;;;:5;:15;;;;;:24;;;:28;;4256:80;4252:943;;;4353:22;4402:3;4379:19;:14;4396:2;4379:19;:::i;:::-;4378:27;;;;:::i;:::-;4353:52;-1:-1:-1;4454:22:0;4522:3;4480:38;1188:2;4353:52;4480:38;:::i;:::-;4479:46;;;;:::i;:::-;4454:71;-1:-1:-1;4557:32:0;4575:14;4557:32;;:::i;:::-;4626:9;;4557:32;;-1:-1:-1;;;;;;4626:9:0;4618:60;4646:31;4663:14;4646;:31;:::i;:::-;4618:60;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4693:42:0;;-1:-1:-1;;;;;4693:26:0;;;:42;;;;;4720:14;;4693:42;;;;4720:14;4693:26;:42;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;4750:15:0;;;;;;:5;:15;;;;;:31;;:49;;4785:14;;4750:15;:49;;4785:14;;4750:49;:::i;:::-;;;;;;;;4838:14;4814:20;;:38;;;;;;;:::i;:::-;;;;;;;;4897:14;4867:26;;:44;;;;;;;:::i;:::-;;;;-1:-1:-1;;4945:52:0;;160:25:1;;;4970:10:0;;-1:-1:-1;;;;;4945:52:0;;;;;148:2:1;133:18;4945:52:0;;;;;;;5042:9;;-1:-1:-1;;;;;5042:9:0;;;5030:21;;;;5026:158;;5072:20;;;:27;;-1:-1:-1;;5072:27:0;5095:4;5072:27;;;5026:158;;;5140:21;;;:28;;-1:-1:-1;;5140:28:0;;;;;5026:158;4338:857;;4252:943;5232:13;5215;;:30;;;;;;;:::i;:::-;;;;-1:-1:-1;;5256:13:0;:15;;;:13;:15;;;:::i;:::-;;;;-1:-1:-1;;5297:34:0;;160:25:1;;;5305:10:0;;5297:34;;148:2:1;133:18;5297:34:0;14:177:1;5351:709:0;5427:10;5401:17;5421;;;:5;:17;;;;;5457:13;;;;5449:49;;;;-1:-1:-1;;;5449:49:0;;4662:2:1;5449:49:0;;;4644:21:1;4701:2;4681:18;;;4674:30;-1:-1:-1;;;4720:18:1;;;4713:49;4779:18;;5449:49:0;4460:343:1;5449:49:0;5558:9;5535:4;:19;;;5517:15;:37;;;;:::i;:::-;:50;;5509:93;;;;-1:-1:-1;;;5509:93:0;;5010:2:1;5509:93:0;;;4992:21:1;5049:2;5029:18;;;5022:30;5088:32;5068:18;;;5061:60;5138:18;;5509:93:0;4808:354:1;5509:93:0;5623:20;550:1;5668:4;:14;;;:32;;;;:::i;:::-;5646:55;;473:2;5646:55;:::i;:::-;5623:78;;5712:16;5764:4;5748:12;5732:4;:13;;;:28;;;;:::i;:::-;5731:37;;;;:::i;:::-;5712:56;;5796:8;5779:4;:13;;;:25;;;;;;;:::i;:::-;;;;-1:-1:-1;;5842:14:0;;;;626:2;-1:-1:-1;5842:69:0;;626:2;5842:69;;;5876:14;;;;:18;;5893:1;5876:18;:::i;:::-;5825:14;;;:86;5944:15;5922:19;;;:37;5985:29;;160:25:1;;;5993:10:0;;5985:29;;148:2:1;133:18;5985:29:0;;;;;;;5380:680;;;5351:709::o;196:180:1:-;255:6;308:2;296:9;287:7;283:23;279:32;276:52;;;324:1;321;314:12;276:52;-1:-1:-1;347:23:1;;196:180;-1:-1:-1;196:180:1:o;589:286::-;648:6;701:2;689:9;680:7;676:23;672:32;669:52;;;717:1;714;707:12;669:52;743:23;;-1:-1:-1;;;;;795:31:1;;785:42;;775:70;;841:1;838;831:12;775:70;864:5;589:286;-1:-1:-1;;;589:286:1:o;1682:127::-;1743:10;1738:3;1734:20;1731:1;1724:31;1774:4;1771:1;1764:15;1798:4;1795:1;1788:15;1814:168;1887:9;;;1918;;1935:15;;;1929:22;;1915:37;1905:71;;1956:18;;:::i;:::-;1814:168;;;;:::o;2392:125::-;2457:9;;;2478:10;;;2475:36;;;2491:18;;:::i;2522:128::-;2589:9;;;2610:11;;;2607:37;;;2624:18;;:::i;3014:127::-;3075:10;3070:3;3066:20;3063:1;3056:31;3106:4;3103:1;3096:15;3130:4;3127:1;3120:15;3146:217;3186:1;3212;3202:132;;3256:10;3251:3;3247:20;3244:1;3237:31;3291:4;3288:1;3281:15;3319:4;3316:1;3309:15;3202:132;-1:-1:-1;3348:9:1;;3146:217::o;4320:135::-;4359:3;4380:17;;;4377:43;;4400:18;;:::i;:::-;-1:-1:-1;4447:1:1;4436:13;;4320:135::o

Swarm Source

ipfs://e775b1c54d874e43b15e504c3f7da40d1b9e9443306e538672a74e308db15c25

Block Transaction Gas Used Reward
view all blocks produced

Block Uncle Number Difficulty Gas Used Reward
View All Uncles
Loading...
Loading
Loading...
Loading

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits

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.