Contract 0x151757c2e830c467b28fe6c09c3174b6c76aa0c5 2

DeFi  
 
 
Txn Hash
Method
Block
From
To
Value [Txn Fee]
0x6a418c28fd8b700606dc3d2c4fa3eecf08d71ac1ea5a8643ff943c1bd6f967dcHarvest406159682023-03-21 22:54:522 days 2 hrs ago0x779d191094130e536a4d86cbb1be8958b223d3b7 IN  Gains Network: GNS Pool0 MATIC0.007168089685 90.945984822
0xc3faf99da70618115e50001701de112181344eba391f4cd8f489b7a3294c732fHarvest406044582023-03-21 15:24:372 days 9 hrs ago0x95423a73042184a4b99cf5f4af216fc290bd6789 IN  Gains Network: GNS Pool0 MATIC0.019353127245 245.545088568
0xf1f8d51f8fee746185c087c68d6872e5a21421ca279c87dbf25d47485a08c959Harvest405791102023-03-20 21:28:353 days 3 hrs ago arbargar83.wallet  IN  Gains Network: GNS Pool0 MATIC0.008931479466 113.31920102
0x148f4cdec8d007a206f4f0c287cc22d893d75afe5bf43410dd11cf3bc035863fUnstake405470702023-03-20 1:16:483 days 23 hrs ago0x3992d75551403111c918ee4304c7a80527a6dd89 IN  Gains Network: GNS Pool0 MATIC0.013580181666 75.054337213
0x217b7e8339504d86425b3a57cea072c964c79bebe1aeb4242b34b3e58e8e7816Harvest404801462023-03-18 6:55:265 days 18 hrs ago0x2271dfeb4fc7c351519d7d778e27dbcaa42251e1 IN  Gains Network: GNS Pool0 MATIC0.010580903763 134.246466669
0x750578e3f9278e48ca7bc23f3fb9841548778d53476a891f574ccb574938c047Unstake404299202023-03-16 23:43:527 days 1 hr ago0x1884e47c3b735a9c8ec44325dc15b5c299d03613 IN  Gains Network: GNS Pool0 MATIC0.015865206549 87.68310996
0x92871a57ac0e66ec6081b70aab59684e2f8fb5068a22b166ae10abef7d856f71Harvest404086462023-03-16 10:46:287 days 14 hrs ago0xf324f5fd0c5499e66e6110ef6bd8d272300ca211 IN  Gains Network: GNS Pool0 MATIC0.009658542773 75.76872753
0x237206544f196440480abc5f718c21a70d983ada118a44408a4e001b527ff325Unstake403848422023-03-15 19:47:328 days 5 hrs ago0xd761cb7ae68d0520f46efb33dee5254b040fef8e IN  Gains Network: GNS Pool0 MATIC0.018225504178 111.241007452
0xf80e8058bb4d0450c7b68f2481d5bd341285554d178d2d1cec0c187162dae56fUnstake403811332023-03-15 17:19:418 days 7 hrs ago0x2df966510037b33d8c790bb8a7d64edf76afb39b IN  Gains Network: GNS Pool0 MATIC0.03199292159 172.700398866
0xd80ef5f129cb386388fe2595c3bbe253152200d5e75893ca40a0348965a651f3Unstake403413842023-03-14 16:04:429 days 8 hrs ago0xa720ae34a450691fb29e748b07d7b4d584415c9a IN  Gains Network: GNS Pool0 MATIC0.046364371208 237.383757482
0x5da351e9f79e265df875432aaf5deb69df94447fcf3c0f01db864200ad81f44fStake403271512023-03-14 7:08:169 days 17 hrs ago0xc6610bf0c48d11334f0c82cc41f8c3b58deedbd1 IN  Gains Network: GNS Pool0 MATIC0.0352493548 178.844490224
0xe257b29ae9d960d9a4b3dfa4aa4f008a368dc350c4ba01961deccd2202c3f0a4Harvest403271122023-03-14 7:06:549 days 17 hrs ago0xc6610bf0c48d11334f0c82cc41f8c3b58deedbd1 IN  Gains Network: GNS Pool0 MATIC0.013036183201 165.398114638
0x6871f334da7a4b4a787a9838b25cfc7a0bea71491598a936363f036e0185dafcUnstake403269692023-03-14 7:01:499 days 18 hrs ago0xc6610bf0c48d11334f0c82cc41f8c3b58deedbd1 IN  Gains Network: GNS Pool0 MATIC0.025796974741 207.942855289
0xa2556da9bc698e2b217a1251b799c913aad66f78e53d79557372c3e6a841f16dHarvest403269612023-03-14 7:01:339 days 18 hrs ago0xc6610bf0c48d11334f0c82cc41f8c3b58deedbd1 IN  Gains Network: GNS Pool0 MATIC0.029891409329 234.490243733
0xfbe97ad1a6112d5cb8cb3b638ee4c7c8dbbd588f8381bc11099e59fca44d9028Unstake402795122023-03-13 1:01:0911 days 2 mins ago0xb1c642dde156631cfeaa2e5b870d108ff6fde4e0 IN  Gains Network: GNS Pool0 MATIC0.030667942312 187.184550056
0x677168de76ba9771b567e2574a554f959f5d01ff0fe1f40443761dd07abdea63Unstake402160952023-03-11 9:37:3212 days 15 hrs ago0xc3529249e55c93a2466e739cb3471ceb02c26d23 IN  Gains Network: GNS Pool0 MATIC0.111872123296 682.87160339
0x7c5f8d7cc9d9ea19b34312f9bb8c08c014ee069ebfbe71227c844e607901901aUnstake401466192023-03-09 13:18:2514 days 11 hrs ago0xc45d67f7d45ad35e0a5f1a377d4af33fc9b4686e IN  Gains Network: GNS Pool0 MATIC0.030797017891 146.757292788
0x8b3a3667ae2d1a3d5cd65ca5c5483a299627b20c902bcf7bbdcd5e391d56fe0aUnstake400921702023-03-08 2:45:1015 days 22 hrs ago0xf5f2eb096c72920bdfedb67aba15e9c47ad43cda IN  Gains Network: GNS Pool0 MATIC0.027833403502 135.516210795
0x09af5c19c1eca6c6bf10786eb249f77baa073f7d9132a7ef08d92738c17d182bUnstake400459702023-03-06 21:14:3517 days 3 hrs ago0x619289fdf2c437a9ec6d402b4bc97e3902b3a0ba IN  Gains Network: GNS Pool0 MATIC0.01924990247 102.327782642
0xfac6733e95624e70b5439ade3294a6dd6a911e93b8ec38c1ad22a81b4a6ea214Harvest400452152023-03-06 20:43:3317 days 4 hrs ago0x619289fdf2c437a9ec6d402b4bc97e3902b3a0ba IN  Gains Network: GNS Pool0 MATIC0.013177418096 76.707888821
0xe6fb696e7d5ad3aeae0a7d6429a80e50c91d1da8244b82820189515c2d6113efHarvest400285862023-03-06 10:12:5317 days 14 hrs ago0x0d69bf20a4a00cbebc569e4bef27a78dcb4c0880 IN  Gains Network: GNS Pool0 MATIC0.01869945165
0xf44fa88890f69096c808e303d1e0d8a8e89caa2dd205dc061bdc7329f80e7d00Unstake400285822023-03-06 10:12:3717 days 14 hrs ago0x0d69bf20a4a00cbebc569e4bef27a78dcb4c0880 IN  Gains Network: GNS Pool0 MATIC0.0335744160
0xf7ea6c966dfa22892608fddb404a98e37eedf42feddfb2f3d96796812753268cUnstake398905152023-03-02 19:34:2021 days 5 hrs ago tatespeech.zil  IN  Gains Network: GNS Pool0 MATIC0.021484486147 109.986772336
0x8d659023927f5085bc74ce47db6ffb730c90b49d9697c954345df6eeaa40590cHarvest398903172023-03-02 19:26:1221 days 5 hrs ago tatespeech.zil  IN  Gains Network: GNS Pool0 MATIC0.015349899283 123.059095073
0xf2a32ac9aab9de8ad0e84da5ced1eef745b2cbc1fdb3689814755e503a1a3809Unstake398807522023-03-02 13:09:4621 days 11 hrs ago0x4b86e794c804e8becaaf23fafa0798a9c2c1d7a6 IN  Gains Network: GNS Pool0 MATIC0.005311360593 222.52128677
[ Download CSV Export 
Parent Txn Hash Block From To Value
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
GNSPoolV5

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 999 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at polygonscan.com on 2021-10-27
*/

// File: contracts\interfaces\TokenInterfaceV5.sol
// SPDX-License-Identifier: MIT
pragma solidity 0.8.7;

interface TokenInterfaceV5{
    function burn(address, uint256) external;
    function mint(address, uint256) external;
    function transfer(address, uint256) external returns (bool);
    function transferFrom(address, address, uint256) external returns(bool);
    function balanceOf(address) external view returns(uint256);
    function hasRole(bytes32, address) external view returns (bool);
    function approve(address, uint256) external returns (bool);
    function allowance(address, address) external view returns (uint256);
}

// File: contracts\interfaces\LpInterfaceV5.sol

pragma solidity 0.8.7;

interface LpInterfaceV5{
   	function getReserves() external view returns (uint112, uint112, uint32);
    function token0() external view returns (address);
    function transfer(address, uint) external returns (bool);
    function transferFrom(address, address, uint256) external;
    function totalSupply() external view returns (uint);
    function balanceOf(address) external view returns (uint);
    function approve(address, uint256) external returns (bool);
}

// File: contracts\interfaces\NftInterfaceV5.sol

pragma solidity 0.8.7;

interface NftInterfaceV5{
    function balanceOf(address) external view returns (uint);
    function ownerOf(uint) external view returns (address);
    function transferFrom(address, address, uint) external;
    function tokenOfOwnerByIndex(address, uint) external view returns(uint);
}

// File: contracts\interfaces\QuickStakingContractInterfaceV5.sol

pragma solidity 0.8.7;

interface QuickStakingContractInterfaceV5{
	function earned(address) external view returns (uint256);
	function getReward() external;
	function stake(uint) external;
	function withdraw(uint) external;
	function balanceOf(address) external view returns (uint256);
}

// File: contracts\GNSPoolV5.sol





pragma solidity 0.8.7;

contract GNSPoolV5{

    // Constants
    bytes32 public constant MINTER_ROLE = 0x9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a6;
    TokenInterfaceV5 public constant quick = TokenInterfaceV5(0xf28164A485B0B2C90639E47b0f377b4a438a16B1);

    // Contracts & Addresses
    TokenInterfaceV5 public token; // GNS
    LpInterfaceV5 public lp; // GNS/DAI
    QuickStakingContractInterfaceV5 public quickStakingContract;
    address public govFund = 0xC66FbE50Dd33c9AAdd65707F7088D597C86fE00F;

    // Pool variables
    uint public accTokensPerLp;
    uint public accQuickPerLp; // Dual rewards
    uint public lpBalance;

    // Pool parameters
    uint public maxNftsStaked = 3;
    uint public referralP = 6; // % 2 == 0
    uint[5] public boostsP = [2, 3, 5, 8, 13];

    // Pool stats
    uint public rewardsToken; // 1e18
    uint public rewardsQuick; // 1e18

    // Mappings
    mapping(address => User) public users;
    mapping(address => mapping(uint => StakedNft)) public userNfts;
    mapping(address => bool) public allowedContracts;

    // Structs
    struct StakedNft{
        uint nftId;
        uint nftType;
    }
    struct User{
        uint provided;
        uint debtToken;
        uint debtQuick;
        uint stakedNftsCount;
        uint totalBoost;
        address referral;
        uint referralRewardsToken;
    }

    // Events
    event AddressUpdated(string name, address a);
    event ContractAllowed(address a, bool allowed);
    event BoostsUpdated(uint[5]);
    event NumberUpdated(string name, uint value);

    constructor(address _tradingStorage){
        require(_tradingStorage != address(0), "ADDRESS_0");
        allowedContracts[_tradingStorage] = true;
    }

    // GOV => UPDATE VARIABLES & MANAGE PAIRS

    // 0. Modifiers
    modifier onlyGov(){
        require(msg.sender == govFund, "GOV_ONLY");
        _;
    }

    // Set addresses
    function setGovFund(address _gov) external onlyGov{
        require(_gov != address(0), "ADDRESS_0");
        govFund = _gov;
        emit AddressUpdated("govFund", _gov);
    }
    function setToken(TokenInterfaceV5 _token) external onlyGov{
        require(address(_token) != address(0), "ADDRESS_0");
        require(address(token) == address(0), "ALREADY_SET");
        token = _token;
        emit AddressUpdated("token", address(_token));
    }
    function setLp(LpInterfaceV5 _lp) external onlyGov{
        require(address(_lp) != address(0), "ADDRESS_0");
        require(address(lp) == address(0), "ALREADY_SET");
        lp = _lp;
        emit AddressUpdated("lp", address(_lp));
    }
    function setQuickStakingContract(QuickStakingContractInterfaceV5 _quickStaking) external onlyGov{
        require(address(_quickStaking) != address(0), "ADDRESS_0");
        require(address(quickStakingContract) == address(0), "ALREADY_SET");
        quickStakingContract = _quickStaking;
        emit AddressUpdated("quickStakingContract", address(_quickStaking));
    }
    function addAllowedContract(address c) external onlyGov{
        require(c != address(0), "ADDRESS_0");
        require(token.hasRole(MINTER_ROLE, c), "NOT_MINTER");
        allowedContracts[c] = true;
        emit ContractAllowed(c, true);
    }
    function removeAllowedContract(address c) external onlyGov{
        require(c != address(0), "ADDRESS_0");
        allowedContracts[c] = false;
        emit ContractAllowed(c, false);
    }
    function setBoostsP(uint _bronze, uint _silver, uint _gold, uint _platinum, uint _diamond) external onlyGov{
        require(_bronze < _silver && _silver < _gold && _gold < _platinum && _platinum < _diamond && _bronze > 0, "WRONG_VALUES");
        boostsP = [_bronze, _silver, _gold, _platinum, _diamond];
        emit BoostsUpdated(boostsP);
    }
    function setMaxNftsStaked(uint _maxNftsStaked) external onlyGov{
        require(_maxNftsStaked >= 3, "BELOW_3");
        maxNftsStaked = _maxNftsStaked;
        emit NumberUpdated("maxNftsStaked", _maxNftsStaked);
    }
    function setReferralP(uint _referralP) external onlyGov{
        require(_referralP % 2 == 0, "NOT_EVEN");
        referralP = _referralP;
        emit NumberUpdated("referralP", _referralP);
    }

    // USEFUL FUNCTIONS

    // Remove access to contracts
    modifier notContract(){
        require(tx.origin == msg.sender, "CONTRACT");
        _;
    }

    // Get reserves LP
    function reservesLp() public view returns(uint, uint){
        (uint112 reserves0, uint112 reserves1, ) = lp.getReserves();
        return lp.token0() == address(token) ? (reserves0, reserves1) : (reserves1, reserves0);
    }

    // Called by Gains.farm ecosystem allowed contracts (trading, casino, etc.)
    function increaseAccTokensPerLp(uint _amount) external{
        require(allowedContracts[msg.sender] && token.hasRole(MINTER_ROLE, msg.sender), "ONLY_ALLOWED_CONTRACTS");
        if(lpBalance > 0){
            accTokensPerLp += _amount * 1e18 / lpBalance;
            rewardsToken += _amount;
        }
    }

    // Compute NFT boosts
    function setBoosts() private{
        User storage u = users[msg.sender];
        u.totalBoost = 0;
        for(uint i = 0; i < u.stakedNftsCount; i++){
            u.totalBoost += u.provided * boostsP[userNfts[msg.sender][i].nftType-1] / 100;
        }
        u.debtToken = (u.provided + u.totalBoost) * accTokensPerLp / 1e18;
        u.debtQuick = (u.provided + u.totalBoost) * accQuickPerLp / 1e18;
    }

    // Rewards to be harvested
    function pendingRewardToken() view public returns(uint){
        User storage u = users[msg.sender];
        return (u.provided + u.totalBoost) * accTokensPerLp / 1e18 - u.debtToken;
    }
    function pendingRewardQuick() view public returns(uint){
        if(lpBalance == 0){ return 0; }
        User storage u = users[msg.sender];
        uint pendingAccQuickPerLp = accQuickPerLp + quickStakingContract.earned(address(this)) * 1e18 / lpBalance;
        return (u.provided + u.totalBoost) * pendingAccQuickPerLp / 1e18 - u.debtQuick;
    }

    // EXTERNAL FUNCTIONS

    // Harvest rewards
    function harvest() public{
        if(lpBalance == 0){ return; }
        
        User storage u = users[msg.sender];

        uint pendingTokens = pendingRewardToken();

        if(pendingTokens > 0){
            if(u.referral == address(0)){
                token.mint(msg.sender, pendingTokens - pendingTokens * referralP / 100);
            }else{
                uint referralReward = pendingTokens * referralP / 200;

                token.mint(msg.sender, pendingTokens - referralReward);
                token.mint(u.referral, referralReward);

                users[u.referral].referralRewardsToken += referralReward;
            }
        }

        u.debtToken = (u.provided + u.totalBoost) * accTokensPerLp / 1e18;

        uint pendingQuick = pendingRewardQuick();
        uint pendingQuickTotal = quickStakingContract.earned(address(this));

        quickStakingContract.getReward();
        accQuickPerLp += pendingQuickTotal * 1e18 / lpBalance;

        u.debtQuick = (u.provided + u.totalBoost) * accQuickPerLp / 1e18;
        rewardsQuick += pendingQuickTotal;

        if(pendingQuick > 0){ quick.transfer(msg.sender, pendingQuick); }
    }

    // Stake LPs
    function stake(uint amount, address referral) external{
        User storage u = users[msg.sender];
        
        // 1. Transfer the LPs to the contract
        lp.transferFrom(msg.sender, address(this), amount);

        // 2. Harvest pending rewards
        harvest();

        // 3. Stake in quickswap contract
        require(lp.approve(address(quickStakingContract), amount), "APPROVE_FAILED");
        quickStakingContract.stake(amount);

        // 4. Reset lp balance
        lpBalance -= (u.provided + u.totalBoost);

        // 5. Set user provided
        u.provided += amount;

        // 6. Set boosts and debt
        setBoosts();

        // 7. Update lp balance
        lpBalance += (u.provided + u.totalBoost);

        // 8. Set referral
        if(u.referral == address(0) && referral != address(0) && referral != msg.sender){
            u.referral = referral;
        }
    }

    // Stake NFT
    // NFT types: 1, 2, 3, 4, 5
    function stakeNft(uint nftType, uint nftId) external notContract{
        User storage u = users[msg.sender];

        // 0. If didn't already stake NFT + nft type is either platinum or diamond
        require(u.stakedNftsCount < maxNftsStaked, "MAX_NFTS_ALREADY_STAKED");
        require(nftType >= 1 && nftType <= 5, "WRONG_NFT_TYPE");

        // 1. Transfer the NFT to the contract
        require(nfts()[nftType-1].balanceOf(msg.sender) >= 1, "NOT_NFT_OWNER");
        nfts()[nftType-1].transferFrom(msg.sender, address(this), nftId);

        // 2. Harvest pending rewards
        harvest();

        // 3. Reset lp balance
        lpBalance -= (u.provided + u.totalBoost);

        // 4. Store NFT info
        StakedNft storage stakedNft = userNfts[msg.sender][u.stakedNftsCount];
        stakedNft.nftType = nftType;
        stakedNft.nftId = nftId;
        u.stakedNftsCount ++;

        // 5. Set user boosts & debt
        setBoosts();

        // 6. Update lp balance
        lpBalance += (u.provided + u.totalBoost);
    }

    // Unstake NFT
    function unstakeNft(uint nftIndex) external{
        User storage u = users[msg.sender];
        StakedNft memory stakedNft = userNfts[msg.sender][nftIndex];

        // 1. Harvest pending rewards
        harvest();

        // 2. Reset lp balance
        lpBalance -= (u.provided + u.totalBoost);

        // 3. Remove NFT from storage => replace by last one and remove last one
        userNfts[msg.sender][nftIndex] = userNfts[msg.sender][u.stakedNftsCount-1];
        delete userNfts[msg.sender][u.stakedNftsCount-1];
        u.stakedNftsCount -= 1;

        // 4. Set user boosts & debt
        setBoosts();

        // 5. Update lp balance
        lpBalance += (u.provided + u.totalBoost);

        // 6. Transfer the NFT to the user
        nfts()[stakedNft.nftType-1].transferFrom(address(this), msg.sender, stakedNft.nftId);
    }

    // Unstake LPs
    function unstake(uint amount) external{
        // 1. Verify he doesn't unstake more than provided
        User storage u = users[msg.sender];
        require(amount <= u.provided, "AMOUNT_TOO_BIG");

        // 2. Harvest pending rewards
        harvest();

        // 3. Unstake from quickswap contract
        quickStakingContract.withdraw(amount);

        // 4. Reset lp balance
        lpBalance -= (u.provided + u.totalBoost);

        // 5. Set user provided
        u.provided -= amount;

        // 6. Set boosts and debt
        setBoosts();

        // 7. Update lp balance
        lpBalance += (u.provided + u.totalBoost);

        // 8. Transfer the LPs to the address
        lp.transfer(msg.sender, amount);
    }

    // READ-ONLY VIEW FUNCTIONS

    // 1e5 precision
    function tvl() external view returns(uint){
        if(lp.totalSupply() == 0){ return 0; }

        (, uint reserveDai) = reservesLp();
        uint lpPriceDai = reserveDai * 1e5 * 2 / lp.totalSupply();

        return quickStakingContract.balanceOf(address(this)) * lpPriceDai / 1e18;
    }
    // 1e5 precision
    function tvlWithBoosts() external view returns(uint){
        if(lp.totalSupply() == 0){ return 0; }

        (, uint reserveDai) = reservesLp();
        uint lpPriceDai = reserveDai * 1e5 * 2 / lp.totalSupply();

        return lpBalance * lpPriceDai / 1e18;
    }

    // NFTs list
    function nfts() public pure returns(NftInterfaceV5[5] memory){
        return [
            NftInterfaceV5(0xF9A4c522E327935BD1F5a338c121E14e4cc1f898),
            NftInterfaceV5(0x77cd42B925e1A82f41d852D6BE727CFc88fddBbC),
            NftInterfaceV5(0x3378AD81D09DE23725Ee9B9270635c97Ed601921),
            NftInterfaceV5(0x02e2c5825C1a3b69C0417706DbE1327C2Af3e6C2),
            NftInterfaceV5(0x2D266A94469d05C9e06D52A4D0d9C23b157767c2)
        ];
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_tradingStorage","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"name","type":"string"},{"indexed":false,"internalType":"address","name":"a","type":"address"}],"name":"AddressUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256[5]","name":"","type":"uint256[5]"}],"name":"BoostsUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"a","type":"address"},{"indexed":false,"internalType":"bool","name":"allowed","type":"bool"}],"name":"ContractAllowed","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"name","type":"string"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"NumberUpdated","type":"event"},{"inputs":[],"name":"MINTER_ROLE","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"accQuickPerLp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"accTokensPerLp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"c","type":"address"}],"name":"addAllowedContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"allowedContracts","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"boostsP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"govFund","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"harvest","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"increaseAccTokensPerLp","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"lp","outputs":[{"internalType":"contract LpInterfaceV5","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxNftsStaked","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nfts","outputs":[{"internalType":"contract NftInterfaceV5[5]","name":"","type":"address[5]"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pendingRewardQuick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pendingRewardToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"quick","outputs":[{"internalType":"contract TokenInterfaceV5","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"quickStakingContract","outputs":[{"internalType":"contract QuickStakingContractInterfaceV5","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"referralP","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"c","type":"address"}],"name":"removeAllowedContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reservesLp","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardsQuick","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rewardsToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_bronze","type":"uint256"},{"internalType":"uint256","name":"_silver","type":"uint256"},{"internalType":"uint256","name":"_gold","type":"uint256"},{"internalType":"uint256","name":"_platinum","type":"uint256"},{"internalType":"uint256","name":"_diamond","type":"uint256"}],"name":"setBoostsP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_gov","type":"address"}],"name":"setGovFund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract LpInterfaceV5","name":"_lp","type":"address"}],"name":"setLp","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_maxNftsStaked","type":"uint256"}],"name":"setMaxNftsStaked","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract QuickStakingContractInterfaceV5","name":"_quickStaking","type":"address"}],"name":"setQuickStakingContract","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_referralP","type":"uint256"}],"name":"setReferralP","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract TokenInterfaceV5","name":"_token","type":"address"}],"name":"setToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"},{"internalType":"address","name":"referral","type":"address"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"nftType","type":"uint256"},{"internalType":"uint256","name":"nftId","type":"uint256"}],"name":"stakeNft","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"token","outputs":[{"internalType":"contract TokenInterfaceV5","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tvl","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tvlWithBoosts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"unstake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"nftIndex","type":"uint256"}],"name":"unstakeNft","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"uint256","name":"","type":"uint256"}],"name":"userNfts","outputs":[{"internalType":"uint256","name":"nftId","type":"uint256"},{"internalType":"uint256","name":"nftType","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"users","outputs":[{"internalType":"uint256","name":"provided","type":"uint256"},{"internalType":"uint256","name":"debtToken","type":"uint256"},{"internalType":"uint256","name":"debtQuick","type":"uint256"},{"internalType":"uint256","name":"stakedNftsCount","type":"uint256"},{"internalType":"uint256","name":"totalBoost","type":"uint256"},{"internalType":"address","name":"referral","type":"address"},{"internalType":"uint256","name":"referralRewardsToken","type":"uint256"}],"stateMutability":"view","type":"function"}]

600380546001600160a01b03191673c66fbe50dd33c9aadd65707f7088d597c86fe00f1781556007819055600660089081556101206040526002608090815260a092909252600560c081905260e091909152600d61010052620000659160099162000105565b503480156200007357600080fd5b5060405162002dd638038062002dd6833981016040819052620000969162000164565b6001600160a01b038116620000dd5760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b604482015260640160405180910390fd5b6001600160a01b03166000908152601260205260409020805460ff1916600117905562000196565b82600581019282156200013b579160200282015b828111156200013b578251829060ff1690559160200191906001019062000119565b50620001499291506200014d565b5090565b5b808211156200014957600081556001016200014e565b6000602082840312156200017757600080fd5b81516001600160a01b03811681146200018f57600080fd5b9392505050565b612c3080620001a66000396000f3fe608060405234801561001057600080fd5b50600436106102925760003560e01c8063865f12e811610160578063d5391393116100d8578063ebaef5a01161008c578063fb8b7cec11610071578063fb8b7cec146105c9578063fc0c546a146105d1578063fdd3a879146105e457600080fd5b8063ebaef5a0146105ae578063f4c2baa9146105b657600080fd5b8063e5328e06116100bd578063e5328e0614610580578063e539e4b214610588578063e6d5c0031461059b57600080fd5b8063d539139314610546578063e09cc52f1461056d57600080fd5b8063befe88781161012f578063ca15ed4811610114578063ca15ed4814610521578063cab6693114610534578063d1af0c7d1461053d57600080fd5b8063befe887814610505578063c412dcfc1461050e57600080fd5b8063865f12e8146104455780639800fc1614610458578063a87430ba1461046b578063b763d4fc146104fd57600080fd5b806351e0e26b1161020e5780636b426000116101c25780637acb7757116101a75780637acb7757146104165780637c74f1af14610429578063846fe2551461043c57600080fd5b80636b426000146103f057806379cbeb2d1461040357600080fd5b80635db800e4116101f35780635db800e41461038357806368fc22801461039657806369b262b6146103a957600080fd5b806351e0e26b146103475780635458d0fe1461037a57600080fd5b80632059f615116102655780632e17de781161024a5780632e17de7814610301578063313c06a0146103145780634641257d1461033f57600080fd5b80632059f615146102e55780632c56462f146102ee57600080fd5b80630df0961c14610297578063144fa6d7146102b35780631710f259146102c85780631714f2e0146102d0575b600080fd5b6102a060075481565b6040519081526020015b60405180910390f35b6102c66102c1366004612912565b6105ff565b005b6102a061075f565b6102d86108c7565b6040516102aa9190612ab0565b6102a060065481565b6102c66102fc366004612912565b61095e565b6102c661030f3660046129f1565b610b2f565b600154610327906001600160a01b031681565b6040516001600160a01b0390911681526020016102aa565b6102c6610d06565b61036a610355366004612912565b60126020526000908152604090205460ff1681565b60405190151581526020016102aa565b6102a060045481565b6102c66103913660046129f1565b6111ae565b6102c66103a4366004612912565b6112b7565b6103db6103b7366004612953565b60116020908152600092835260408084209091529082529020805460019091015482565b604080519283526020830191909152016102aa565b6102c66103fe3660046129f1565b61140b565b6102c6610411366004612a53565b6115f0565b6102c6610424366004612a23565b611921565b6102c6610437366004612912565b611bda565b6102a060085481565b600354610327906001600160a01b031681565b6102c6610466366004612912565b611ce7565b6104bf610479366004612912565b6010602052600090815260409020805460018201546002830154600384015460048501546005860154600690960154949593949293919290916001600160a01b03169087565b60408051978852602088019690965294860193909352606085019190915260808401526001600160a01b031660a083015260c082015260e0016102aa565b6102a0611dc5565b6102a0600f5481565b6102c661051c3660046129f1565b611e1b565b6102c661052f366004612a75565b611f7c565b6102a060055481565b6102a0600e5481565b6102a07f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a681565b6102a061057b3660046129f1565b6120b4565b6102a06120cb565b600254610327906001600160a01b031681565b6102c66105a93660046129f1565b61229b565b6102a061239d565b6102c66105c4366004612912565b6124ac565b6103db612600565b600054610327906001600160a01b031681565b61032773f28164a485b0b2c90639e47b0f377b4a438a16b181565b6003546001600160a01b031633146106495760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b60448201526064015b60405180910390fd5b6001600160a01b03811661068b5760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b6044820152606401610640565b6000546001600160a01b0316156106d25760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610640565b600080546001600160a01b0319166001600160a01b038316908117909155604080518181526005918101919091527f746f6b656e000000000000000000000000000000000000000000000000000000606082015260208101919091527f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee44422781906080015b60405180910390a150565b600154604080516318160ddd60e01b815290516000926001600160a01b0316916318160ddd916004808301926020929190829003018186803b1580156107a457600080fd5b505afa1580156107b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107dc9190612a0a565b6107e65750600090565b60006107f0612600565b9150506000600160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b15801561084357600080fd5b505afa158015610857573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087b9190612a0a565b61088883620186a0612b3e565b610893906002612b3e565b61089d9190612b2a565b9050670de0b6b3a7640000816006546108b69190612b3e565b6108c09190612b2a565b9250505090565b6108cf61287e565b506040805160a08101825273f9a4c522e327935bd1f5a338c121e14e4cc1f89881527377cd42b925e1a82f41d852d6be727cfc88fddbbc6020820152733378ad81d09de23725ee9b9270635c97ed601921918101919091527302e2c5825c1a3b69c0417706dbe1327c2af3e6c26060820152732d266a94469d05c9e06d52a4d0d9c23b157767c2608082015290565b6003546001600160a01b031633146109a35760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b6001600160a01b0381166109e55760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b6044820152606401610640565b600054604051632474521560e21b81527f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660048201526001600160a01b038381166024830152909116906391d148549060440160206040518083038186803b158015610a5057600080fd5b505afa158015610a64573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a88919061297f565b610ad45760405162461bcd60e51b815260206004820152600a60248201527f4e4f545f4d494e544552000000000000000000000000000000000000000000006044820152606401610640565b6001600160a01b038116600081815260126020908152604091829020805460ff191660019081179091558251938452908301527fa309ceeb30d412988552937096581dead170a31af7ef5fff94b34f7d22e15ca59101610754565b3360009081526010602052604090208054821115610b8f5760405162461bcd60e51b815260206004820152600e60248201527f414d4f554e545f544f4f5f4249470000000000000000000000000000000000006044820152606401610640565b610b97610d06565b6002546040517f2e1a7d4d000000000000000000000000000000000000000000000000000000008152600481018490526001600160a01b0390911690632e1a7d4d90602401600060405180830381600087803b158015610bf657600080fd5b505af1158015610c0a573d6000803e3d6000fd5b50505060048201548254610c1e9250612b12565b60066000828254610c2f9190612b5d565b9091555050805482908290600090610c48908490612b5d565b90915550610c569050612763565b60048101548154610c679190612b12565b60066000828254610c789190612b12565b909155505060015460405163a9059cbb60e01b8152336004820152602481018490526001600160a01b039091169063a9059cbb90604401602060405180830381600087803b158015610cc957600080fd5b505af1158015610cdd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d01919061297f565b505050565b600654610d0f57565b33600090815260106020526040812090610d27611dc5565b90508015610f615760058201546001600160a01b0316610df7576000546008546001600160a01b03909116906340c10f19903390606490610d689086612b3e565b610d729190612b2a565b610d7c9085612b5d565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b158015610dda57600080fd5b505af1158015610dee573d6000803e3d6000fd5b50505050610f61565b600060c860085483610e099190612b3e565b610e139190612b2a565b6000549091506001600160a01b03166340c10f1933610e328486612b5d565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b1681526001600160a01b0390921660048301526024820152604401600060405180830381600087803b158015610e9057600080fd5b505af1158015610ea4573d6000803e3d6000fd5b505060005460058601546040517f40c10f190000000000000000000000000000000000000000000000000000000081526001600160a01b03918216600482015260248101869052911692506340c10f199150604401600060405180830381600087803b158015610f1357600080fd5b505af1158015610f27573d6000803e3d6000fd5b5050505060058301546001600160a01b031660009081526010602052604081206006018054839290610f5a908490612b12565b9091555050505b670de0b6b3a764000060045483600401548460000154610f819190612b12565b610f8b9190612b3e565b610f959190612b2a565b60018301556000610fa461239d565b6002546040516246613160e11b81523060048201529192506000916001600160a01b0390911690628cc2629060240160206040518083038186803b158015610feb57600080fd5b505afa158015610fff573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110239190612a0a565b9050600260009054906101000a90046001600160a01b03166001600160a01b0316633d18b9126040518163ffffffff1660e01b8152600401600060405180830381600087803b15801561107557600080fd5b505af1158015611089573d6000803e3d6000fd5b5050505060065481670de0b6b3a76400006110a49190612b3e565b6110ae9190612b2a565b600560008282546110bf9190612b12565b909155505060055460048501548554670de0b6b3a764000092916110e291612b12565b6110ec9190612b3e565b6110f69190612b2a565b846002018190555080600f60008282546111109190612b12565b909155505081156111a85760405163a9059cbb60e01b81523360048201526024810183905273f28164a485b0b2c90639e47b0f377b4a438a16b19063a9059cbb90604401602060405180830381600087803b15801561116e57600080fd5b505af1158015611182573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a6919061297f565b505b50505050565b6003546001600160a01b031633146111f35760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b6111fe600282612b8f565b1561124b5760405162461bcd60e51b815260206004820152600860248201527f4e4f545f4556454e0000000000000000000000000000000000000000000000006044820152606401610640565b6008819055604080518181526009918101919091527f726566657272616c5000000000000000000000000000000000000000000000006060820152602081018290527f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab90608001610754565b6003546001600160a01b031633146112fc5760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b6001600160a01b03811661133e5760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b6044820152606401610640565b6002546001600160a01b0316156113855760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610640565b600280546001600160a01b0319166001600160a01b038316908117909155604080518181526014918101919091527f717569636b5374616b696e67436f6e7472616374000000000000000000000000606082015260208101919091527f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee4442278190608001610754565b33600090815260106020908152604080832060118352818420858552835292819020815180830190925280548252600101549181019190915261144c610d06565b6004820154825461145d9190612b12565b6006600082825461146e9190612b5d565b9091555050336000908152601160205260408120600384015490919061149690600190612b5d565b81526020808201929092526040908101600090812033808352601180865284842089855280875294842083548155600193840154908401559083529093526003850154919290916114e79190612b5d565b815260200190815260200160002060008082016000905560018201600090555050600182600301600082825461151d9190612b5d565b9091555061152b9050612763565b6004820154825461153c9190612b12565b6006600082825461154d9190612b12565b9091555061155b90506108c7565b6001826020015161156c9190612b5d565b6005811061157c5761157c612bcf565b602002015181516040516323b872dd60e01b815230600482015233602482015260448101919091526001600160a01b03909116906323b872dd90606401600060405180830381600087803b1580156115d357600080fd5b505af11580156115e7573d6000803e3d6000fd5b50505050505050565b32331461163f5760405162461bcd60e51b815260206004820152600860248201527f434f4e54524143540000000000000000000000000000000000000000000000006044820152606401610640565b3360009081526010602052604090206007546003820154106116a35760405162461bcd60e51b815260206004820152601760248201527f4d41585f4e4654535f414c52454144595f5354414b45440000000000000000006044820152606401610640565b600183101580156116b5575060058311155b6117015760405162461bcd60e51b815260206004820152600e60248201527f57524f4e475f4e46545f545950450000000000000000000000000000000000006044820152606401610640565b600161170b6108c7565b611716600186612b5d565b6005811061172657611726612bcf565b60200201516040516370a0823160e01b81523360048201526001600160a01b03909116906370a082319060240160206040518083038186803b15801561176b57600080fd5b505afa15801561177f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117a39190612a0a565b10156117f15760405162461bcd60e51b815260206004820152600d60248201527f4e4f545f4e46545f4f574e4552000000000000000000000000000000000000006044820152606401610640565b6117f96108c7565b611804600185612b5d565b6005811061181457611814612bcf565b60200201516040516323b872dd60e01b8152336004820152306024820152604481018490526001600160a01b03909116906323b872dd90606401600060405180830381600087803b15801561186857600080fd5b505af115801561187c573d6000803e3d6000fd5b50505050611888610d06565b600481015481546118999190612b12565b600660008282546118aa9190612b5d565b909155505033600090815260116020908152604080832060038501805485529252822060018101869055848155815490929091906118e783612b74565b91905055506118f4612763565b600482015482546119059190612b12565b600660008282546119169190612b12565b909155505050505050565b336000818152601060205260409081902060015491516323b872dd60e01b8152600481019390935230602484015260448301859052916001600160a01b03909116906323b872dd90606401600060405180830381600087803b15801561198657600080fd5b505af115801561199a573d6000803e3d6000fd5b505050506119a6610d06565b6001546002546040517f095ea7b30000000000000000000000000000000000000000000000000000000081526001600160a01b0391821660048201526024810186905291169063095ea7b390604401602060405180830381600087803b158015611a0f57600080fd5b505af1158015611a23573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a47919061297f565b611a935760405162461bcd60e51b815260206004820152600e60248201527f415050524f56455f4641494c45440000000000000000000000000000000000006044820152606401610640565b6002546040517fa694fc3a000000000000000000000000000000000000000000000000000000008152600481018590526001600160a01b039091169063a694fc3a90602401600060405180830381600087803b158015611af257600080fd5b505af1158015611b06573d6000803e3d6000fd5b50505060048201548254611b1a9250612b12565b60066000828254611b2b9190612b5d565b9091555050805483908290600090611b44908490612b12565b90915550611b529050612763565b60048101548154611b639190612b12565b60066000828254611b749190612b12565b909155505060058101546001600160a01b0316158015611b9c57506001600160a01b03821615155b8015611bb157506001600160a01b0382163314155b15610d01576005810180546001600160a01b0384166001600160a01b0319909116179055505050565b6003546001600160a01b03163314611c1f5760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b6001600160a01b038116611c615760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b6044820152606401610640565b600380546001600160a01b0319166001600160a01b038316908117909155604080518181526007918101919091527f676f7646756e6400000000000000000000000000000000000000000000000000606082015260208101919091527f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee4442278190608001610754565b6003546001600160a01b03163314611d2c5760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b6001600160a01b038116611d6e5760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b6044820152606401610640565b6001600160a01b0381166000818152601260209081526040808320805460ff191690558051938452908301919091527fa309ceeb30d412988552937096581dead170a31af7ef5fff94b34f7d22e15ca59101610754565b336000908152601060205260408120600181015460048054908301548354670de0b6b3a76400009291611df791612b12565b611e019190612b3e565b611e0b9190612b2a565b611e159190612b5d565b91505090565b3360009081526012602052604090205460ff168015611ed65750600054604051632474521560e21b81527f9f2df0fed2c77648de5860a4cc508cd0818c85b8b8a1ab4ceeef8d981c8956a660048201523360248201526001600160a01b03909116906391d148549060440160206040518083038186803b158015611e9e57600080fd5b505afa158015611eb2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ed6919061297f565b611f225760405162461bcd60e51b815260206004820152601660248201527f4f4e4c595f414c4c4f5745445f434f4e545241435453000000000000000000006044820152606401610640565b60065415611f7957600654611f3f82670de0b6b3a7640000612b3e565b611f499190612b2a565b60046000828254611f5a9190612b12565b9250508190555080600e6000828254611f739190612b12565b90915550505b50565b6003546001600160a01b03163314611fc15760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b8385108015611fcf57508284105b8015611fda57508183105b8015611fe557508082105b8015611ff15750600085115b61203d5760405162461bcd60e51b815260206004820152600c60248201527f57524f4e475f56414c55455300000000000000000000000000000000000000006044820152606401610640565b6040518060a0016040528086815260200185815260200184815260200183815260200182815250600990600561207492919061289c565b507fd4f83e5841eed0062f973ea6c98ae700fab452a244757ca90231c5c53dd9f3d160096040516120a59190612aea565b60405180910390a15050505050565b600981600581106120c457600080fd5b0154905081565b600154604080516318160ddd60e01b815290516000926001600160a01b0316916318160ddd916004808301926020929190829003018186803b15801561211057600080fd5b505afa158015612124573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121489190612a0a565b6121525750600090565b600061215c612600565b9150506000600160009054906101000a90046001600160a01b03166001600160a01b03166318160ddd6040518163ffffffff1660e01b815260040160206040518083038186803b1580156121af57600080fd5b505afa1580156121c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121e79190612a0a565b6121f483620186a0612b3e565b6121ff906002612b3e565b6122099190612b2a565b6002546040516370a0823160e01b8152306004820152919250670de0b6b3a76400009183916001600160a01b0316906370a082319060240160206040518083038186803b15801561225957600080fd5b505afa15801561226d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122919190612a0a565b6108b69190612b3e565b6003546001600160a01b031633146122e05760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b60038110156123315760405162461bcd60e51b815260206004820152600760248201527f42454c4f575f33000000000000000000000000000000000000000000000000006044820152606401610640565b600781905560408051818152600d918101919091527f6d61784e6674735374616b6564000000000000000000000000000000000000006060820152602081018290527f8cf3e35f6221b16e1670a3413180c9484bf5aa71787905909fa82a6a2662e9ab90608001610754565b6000600654600014156123b05750600090565b3360009081526010602052604080822060065460025492516246613160e11b815230600482015291939290916001600160a01b0390911690628cc2629060240160206040518083038186803b15801561240857600080fd5b505afa15801561241c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124409190612a0a565b61245290670de0b6b3a7640000612b3e565b61245c9190612b2a565b6005546124699190612b12565b90508160020154670de0b6b3a7640000828460040154856000015461248e9190612b12565b6124989190612b3e565b6124a29190612b2a565b6108c09190612b5d565b6003546001600160a01b031633146124f15760405162461bcd60e51b8152602060048201526008602482015267474f565f4f4e4c5960c01b6044820152606401610640565b6001600160a01b0381166125335760405162461bcd60e51b81526020600482015260096024820152680414444524553535f360bc1b6044820152606401610640565b6001546001600160a01b03161561257a5760405162461bcd60e51b815260206004820152600b60248201526a1053149150511657d4d15560aa1b6044820152606401610640565b600180546001600160a01b0319166001600160a01b038316908117909155604080518181526002918101919091527f6c70000000000000000000000000000000000000000000000000000000000000606082015260208101919091527f943e9d45a11aaae5d87503e3bc248665d9807856e5cf2bdb4a988bee4442278190608001610754565b600080600080600160009054906101000a90046001600160a01b03166001600160a01b0316630902f1ac6040518163ffffffff1660e01b815260040160606040518083038186803b15801561265457600080fd5b505afa158015612668573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061268c91906129a1565b50600054600154604080517f0dfe168100000000000000000000000000000000000000000000000000000000815290519496509294506001600160a01b0391821693911691630dfe1681916004808301926020929190829003018186803b1580156126f657600080fd5b505afa15801561270a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061272e9190612936565b6001600160a01b031614612743578082612746565b81815b6dffffffffffffffffffffffffffff918216969116945092505050565b33600090815260106020526040812060048101829055905b816003015481101561280a5733600090815260116020908152604080832084845290915290206001908101546064916009916127b79190612b5d565b600581106127c7576127c7612bcf565b015483546127d59190612b3e565b6127df9190612b2a565b8260040160008282546127f29190612b12565b9091555081905061280281612b74565b91505061277b565b50670de0b6b3a76400006004548260040154836000015461282b9190612b12565b6128359190612b3e565b61283f9190612b2a565b600182015560055460048201548254670de0b6b3a7640000929161286291612b12565b61286c9190612b3e565b6128769190612b2a565b600290910155565b6040518060a001604052806005906020820280368337509192915050565b82600581019282156128ca579160200282015b828111156128ca5782518255916020019190600101906128af565b506128d69291506128da565b5090565b5b808211156128d657600081556001016128db565b80516dffffffffffffffffffffffffffff8116811461290d57600080fd5b919050565b60006020828403121561292457600080fd5b813561292f81612be5565b9392505050565b60006020828403121561294857600080fd5b815161292f81612be5565b6000806040838503121561296657600080fd5b823561297181612be5565b946020939093013593505050565b60006020828403121561299157600080fd5b8151801515811461292f57600080fd5b6000806000606084860312156129b657600080fd5b6129bf846128ef565b92506129cd602085016128ef565b9150604084015163ffffffff811681146129e657600080fd5b809150509250925092565b600060208284031215612a0357600080fd5b5035919050565b600060208284031215612a1c57600080fd5b5051919050565b60008060408385031215612a3657600080fd5b823591506020830135612a4881612be5565b809150509250929050565b60008060408385031215612a6657600080fd5b50508035926020909101359150565b600080600080600060a08688031215612a8d57600080fd5b505083359560208501359550604085013594606081013594506080013592509050565b60a08101818360005b6005811015612ae15781516001600160a01b0316835260209283019290910190600101612ab9565b50505092915050565b60a08101818360005b6005811015612ae1578154835260209092019160019182019101612af3565b60008219821115612b2557612b25612ba3565b500190565b600082612b3957612b39612bb9565b500490565b6000816000190483118215151615612b5857612b58612ba3565b500290565b600082821015612b6f57612b6f612ba3565b500390565b6000600019821415612b8857612b88612ba3565b5060010190565b600082612b9e57612b9e612bb9565b500690565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114611f7957600080fdfea264697066735822122062453395a0e9924bca49929a1e1e5cbb441a1cd6a58d3d09def34be79618002f64736f6c63430008070033000000000000000000000000aee4d11a16b2bc65edd6416fb626eb404a6d65bd

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

000000000000000000000000aee4d11a16b2bc65edd6416fb626eb404a6d65bd

-----Decoded View---------------
Arg [0] : _tradingStorage (address): 0xaee4d11a16b2bc65edd6416fb626eb404a6d65bd

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


Deployed ByteCode Sourcemap

2025:12343:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2705:29;;;;;;;;;6645:25:1;;;6633:2;6618:18;2705:29:0;;;;;;;;4182:273;;;;;;:::i;:::-;;:::i;:::-;;13604:272;;;:::i;13902:463::-;;;:::i;:::-;;;;;;;:::i;2651:21::-;;;;;;5095:251;;;;;;:::i;:::-;;:::i;12459:754::-;;;;;;:::i;:::-;;:::i;2364:23::-;;;;;-1:-1:-1;;;;;2364:23:0;;;;;;-1:-1:-1;;;;;4181:55:1;;;4163:74;;4151:2;4136:18;2364:23:0;4017:226:1;8273:1191:0;;;:::i;3064:48::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;6472:14:1;;6465:22;6447:41;;6435:2;6420:18;3064:48:0;6307:187:1;2570:26:0;;;;;;6139:201;;;;;;:::i;:::-;;:::i;4713:376::-;;;;;;:::i;:::-;;:::i;2995:62::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15555:25:1;;;15611:2;15596:18;;15589:34;;;;15528:18;2995:62:0;15381:248:1;11569:862:0;;;;;;:::i;:::-;;:::i;10477:1064::-;;;;;;:::i;:::-;;:::i;9490:928::-;;;;;;:::i;:::-;;:::i;3995:181::-;;;;;;:::i;:::-;;:::i;2741:25::-;;;;;;2471:67;;;;;-1:-1:-1;;;;;2471:67:0;;;5352:193;;;;;;:::i;:::-;;:::i;2951:37::-;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2951:37:0;;;;;;;;15949:25:1;;;16005:2;15990:18;;15983:34;;;;16033:18;;;16026:34;;;;16091:2;16076:18;;16069:34;;;;16134:3;16119:19;;16112:35;-1:-1:-1;;;;;16184:55:1;16178:3;16163:19;;16156:84;16271:3;16256:19;;16249:35;15936:3;15921:19;2951:37:0;15634:656:1;7661:191:0;;;:::i;2893:24::-;;;;;;6856:314;;;;;;:::i;:::-;;:::i;5551:352::-;;;;;;:::i;:::-;;:::i;2603:25::-;;;;;;2854:24;;;;;;2070:104;;2108:66;2070:104;;2785:41;;;;;;:::i;:::-;;:::i;13278:298::-;;;:::i;2405:59::-;;;;;-1:-1:-1;;;;;2405:59:0;;;5909:224;;;;;;:::i;:::-;;:::i;7858:354::-;;;:::i;4461:246::-;;;;;;:::i;:::-;;:::i;6539:228::-;;;:::i;2321:29::-;;;;;-1:-1:-1;;;;;2321:29:0;;;2181:101;;2239:42;2181:101;;4182:273;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;;;;;;;;;-1:-1:-1;;;;;4260:29:0;::::1;4252:51;;;::::0;-1:-1:-1;;;4252:51:0;;11867:2:1;4252:51:0::1;::::0;::::1;11849:21:1::0;11906:1;11886:18;;;11879:29;-1:-1:-1;;;11924:18:1;;;11917:39;11973:18;;4252:51:0::1;11665:332:1::0;4252:51:0::1;4348:1;4330:5:::0;-1:-1:-1;;;;;4330:5:0::1;4322:28:::0;4314:52:::1;;;::::0;-1:-1:-1;;;4314:52:0;;9050:2:1;4314:52:0::1;::::0;::::1;9032:21:1::0;9089:2;9069:18;;;9062:30;-1:-1:-1;;;9108:18:1;;;9101:41;9159:18;;4314:52:0::1;8848:335:1::0;4314:52:0::1;4377:5;:14:::0;;-1:-1:-1;;;;;;4377:14:0::1;-1:-1:-1::0;;;;;4377:14:0;::::1;::::0;;::::1;::::0;;;4407:40:::1;::::0;;12672:21:1;;;12729:1;12709:18;;;12702:29;;;;12767:7;12762:2;12747:18;;12740:35;12842:4;12827:20;;12820:85;;;;4407:40:0::1;::::0;12807:3:1;12792:19;4407:40:0::1;;;;;;;;4182:273:::0;:::o;13604:272::-;13670:2;;:16;;;-1:-1:-1;;;13670:16:0;;;;13651:4;;-1:-1:-1;;;;;13670:2:0;;:14;;:16;;;;;;;;;;;;;;:2;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13667:38;;-1:-1:-1;13701:1:0;;13604:272::o;13667:38::-;13720:15;13739:12;:10;:12::i;:::-;13717:34;;;13762:15;13803:2;;;;;;;;;-1:-1:-1;;;;;13803:2:0;-1:-1:-1;;;;;13803:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13780;:10;13793:3;13780:16;:::i;:::-;:20;;13799:1;13780:20;:::i;:::-;:39;;;;:::i;:::-;13762:57;;13864:4;13851:10;13839:9;;:22;;;;:::i;:::-;:29;;;;:::i;:::-;13832:36;;;;13604:272;:::o;13902:463::-;13938:24;;:::i;:::-;-1:-1:-1;13974:383:0;;;;;;;;14011:42;13974:383;;14084:42;13974:383;;;;14157:42;13974:383;;;;;;;14230:42;13974:383;;;;14303:42;13974:383;;;;;13902:463::o;5095:251::-;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;-1:-1:-1;;;;;5169:15:0;::::1;5161:37;;;::::0;-1:-1:-1;;;5161:37:0;;11867:2:1;5161:37:0::1;::::0;::::1;11849:21:1::0;11906:1;11886:18;;;11879:29;-1:-1:-1;;;11924:18:1;;;11917:39;11973:18;;5161:37:0::1;11665:332:1::0;5161:37:0::1;5217:5;::::0;:29:::1;::::0;-1:-1:-1;;;5217:29:0;;2108:66:::1;5217:29;::::0;::::1;6855:25:1::0;-1:-1:-1;;;;;6916:55:1;;;6896:18;;;6889:83;5217:5:0;;::::1;::::0;:13:::1;::::0;6828:18:1;;5217:29:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5209:52;;;::::0;-1:-1:-1;;;5209:52:0;;10068:2:1;5209:52:0::1;::::0;::::1;10050:21:1::0;10107:2;10087:18;;;10080:30;10146:12;10126:18;;;10119:40;10176:18;;5209:52:0::1;9866:334:1::0;5209:52:0::1;-1:-1:-1::0;;;;;5272:19:0;::::1;;::::0;;;:16:::1;:19;::::0;;;;;;;;:26;;-1:-1:-1;;5272:26:0::1;5294:4;5272:26:::0;;::::1;::::0;;;5314:24;;4819:74:1;;;4909:18;;;4902:50;5314:24:0::1;::::0;4792:18:1;5314:24:0::1;4651:307:1::0;12459:754:0;12591:10;12568:14;12585:17;;;:5;:17;;;;;12631:10;;12621:20;;;12613:47;;;;-1:-1:-1;;;12613:47:0;;15058:2:1;12613:47:0;;;15040:21:1;15097:2;15077:18;;;15070:30;15136:16;15116:18;;;15109:44;15170:18;;12613:47:0;14856:338:1;12613:47:0;12712:9;:7;:9::i;:::-;12781:20;;:37;;;;;;;;6645:25:1;;;-1:-1:-1;;;;;12781:20:0;;;;:29;;6618:18:1;;12781:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;12890:12:0;;;;12877:10;;:25;;-1:-1:-1;12877:25:0;:::i;:::-;12863:9;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;12949:20:0;;12963:6;;12949:1;;:10;;:20;;12963:6;;12949:20;:::i;:::-;;;;-1:-1:-1;13017:11:0;;-1:-1:-1;13017:9:0;:11::i;:::-;13101:12;;;;13088:10;;:25;;13101:12;13088:25;:::i;:::-;13074:9;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;13174:2:0;;:31;;-1:-1:-1;;;13174:31:0;;13186:10;13174:31;;;5137:74:1;5227:18;;;5220:34;;;-1:-1:-1;;;;;13174:2:0;;;;:11;;5110:18:1;;13174:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12497:716;12459:754;:::o;8273:1191::-;8312:9;;8309:29;;8273:1191::o;8309:29::-;8381:10;8358:14;8375:17;;;:5;:17;;;;;;8426:20;:18;:20::i;:::-;8405:41;-1:-1:-1;8462:17:0;;8459:482;;8498:10;;;;-1:-1:-1;;;;;8498:10:0;8495:435;;8542:5;;8597:9;;-1:-1:-1;;;;;8542:5:0;;;;:10;;8553;;8609:3;;8581:25;;:13;:25;:::i;:::-;:31;;;;:::i;:::-;8565:47;;:13;:47;:::i;:::-;8542:71;;;;;;;;;;-1:-1:-1;;;;;5155:55:1;;;8542:71:0;;;5137:74:1;5227:18;;;5220:34;5110:18;;8542:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8495:435;;;8652:19;8702:3;8690:9;;8674:13;:25;;;;:::i;:::-;:31;;;;:::i;:::-;8726:5;;8652:53;;-1:-1:-1;;;;;;8726:5:0;:10;8737;8749:30;8652:53;8749:13;:30;:::i;:::-;8726:54;;;;;;;;;;-1:-1:-1;;;;;5155:55:1;;;8726:54:0;;;5137:74:1;5227:18;;;5220:34;5110:18;;8726:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;8799:5:0;;8810:10;;;;8799:38;;;;;-1:-1:-1;;;;;8810:10:0;;;8799:38;;;5137:74:1;5227:18;;;5220:34;;;8799:5:0;;;-1:-1:-1;8799:10:0;;-1:-1:-1;5110:18:1;;8799:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;8864:10:0;;;;-1:-1:-1;;;;;8864:10:0;8858:17;;;;:5;:17;;;;;:38;;:56;;8900:14;;8858:17;:56;;8900:14;;8858:56;:::i;:::-;;;;-1:-1:-1;;;8495:435:0;9014:4;8997:14;;8981:1;:12;;;8968:1;:10;;;:25;;;;:::i;:::-;8967:44;;;;:::i;:::-;:51;;;;:::i;:::-;8953:11;;;:65;9031:17;9051:20;:18;:20::i;:::-;9107;;:42;;-1:-1:-1;;;9107:42:0;;9143:4;9107:42;;;4163:74:1;9031:40:0;;-1:-1:-1;9082:22:0;;-1:-1:-1;;;;;9107:20:0;;;;:27;;4136:18:1;;9107:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9082:67;;9162:20;;;;;;;;;-1:-1:-1;;;;;9162:20:0;-1:-1:-1;;;;;9162:30:0;;:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9249:9;;9222:17;9242:4;9222:24;;;;:::i;:::-;:36;;;;:::i;:::-;9205:13;;:53;;;;;;;:::i;:::-;;;;-1:-1:-1;;9315:13:0;;9299:12;;;;9286:10;;9331:4;;9315:13;9286:25;;;:::i;:::-;9285:43;;;;:::i;:::-;:50;;;;:::i;:::-;9271:1;:11;;:64;;;;9362:17;9346:12;;:33;;;;;;;:::i;:::-;;;;-1:-1:-1;;9395:16:0;;9392:65;;9414:40;;-1:-1:-1;;;9414:40:0;;9429:10;9414:40;;;5137:74:1;5227:18;;;5220:34;;;2239:42:0;;9414:14;;5110:18:1;;9414:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;9392:65;8298:1166;;;;8273:1191::o;6139:201::-;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;6213:14:::1;6226:1;6213:10:::0;:14:::1;:::i;:::-;:19:::0;6205:40:::1;;;::::0;-1:-1:-1;;;6205:40:0;;8303:2:1;6205:40:0::1;::::0;::::1;8285:21:1::0;8342:1;8322:18;;;8315:29;8380:10;8360:18;;;8353:38;8408:18;;6205:40:0::1;8101:331:1::0;6205:40:0::1;6256:9;:22:::0;;;6294:38:::1;::::0;;8649:21:1;;;8706:1;8686:18;;;8679:29;;;;8744:11;8739:2;8724:18;;8717:39;8823:4;8808:20;;8801:36;;;6294:38:0::1;::::0;8788:3:1;8773:19;6294:38:0::1;8437:406:1::0;4713:376:0;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;-1:-1:-1;;;;;4828:36:0;::::1;4820:58;;;::::0;-1:-1:-1;;;4820:58:0;;11867:2:1;4820:58:0::1;::::0;::::1;11849:21:1::0;11906:1;11886:18;;;11879:29;-1:-1:-1;;;11924:18:1;;;11917:39;11973:18;;4820:58:0::1;11665:332:1::0;4820:58:0::1;4905:20;::::0;-1:-1:-1;;;;;4905:20:0::1;4897:43:::0;4889:67:::1;;;::::0;-1:-1:-1;;;4889:67:0;;9050:2:1;4889:67:0::1;::::0;::::1;9032:21:1::0;9089:2;9069:18;;;9062:30;-1:-1:-1;;;9108:18:1;;;9101:41;9159:18;;4889:67:0::1;8848:335:1::0;4889:67:0::1;4967:20;:36:::0;;-1:-1:-1;;;;;;4967:36:0::1;-1:-1:-1::0;;;;;4967:36:0;::::1;::::0;;::::1;::::0;;;5019:62:::1;::::0;;14260:21:1;;;14317:2;14297:18;;;14290:30;;;;14356:22;14351:2;14336:18;;14329:50;14446:4;14431:20;;14424:85;;;;5019:62:0::1;::::0;14411:3:1;14396:19;5019:62:0::1;14048:467:1::0;11569:862:0;11646:10;11623:14;11640:17;;;:5;:17;;;;;;;;11697:8;:20;;;;;:30;;;;;;;;;11668:59;;;;;;;;;;;;;;;;;;;;;;11779:9;:7;:9::i;:::-;11860:12;;;;11847:10;;:25;;11860:12;11847:25;:::i;:::-;11833:9;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;12010:10:0;12001:20;;;;:8;:20;;;;;12022:17;;;;12001:20;;;12022:19;;12040:1;;12022:19;:::i;:::-;12001:41;;;;;;;;;;;;;;-1:-1:-1;12001:41:0;;;11977:10;11968:20;;;:8;:20;;;;;;:30;;;;;;;;;:74;;;;;;;;;;;;;12060:20;;;;;;12081:17;;;;11968:20;;-1:-1:-1;;12081:19:0;;11968:74;12081:19;:::i;:::-;12060:41;;;;;;;;;;;;12053:48;;;;;;;;;;;;;;12133:1;12112;:17;;;:22;;;;;;;:::i;:::-;;;;-1:-1:-1;12185:11:0;;-1:-1:-1;12185:9:0;:11::i;:::-;12269:12;;;;12256:10;;:25;;12269:12;12256:25;:::i;:::-;12242:9;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;12339:6:0;;-1:-1:-1;12339:4:0;:6::i;:::-;12364:1;12346:9;:17;;;:19;;;;:::i;:::-;12339:27;;;;;;;:::i;:::-;;;;;12407:15;;12339:84;;-1:-1:-1;;;12339:84:0;;12388:4;12339:84;;;4511:34:1;12395:10:0;4561:18:1;;;4554:43;4613:18;;;4606:34;;;;-1:-1:-1;;;;;12339:40:0;;;;;;4423:18:1;;12339:84:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11612:819;;11569:862;:::o;10477:1064::-;6451:9;6464:10;6451:23;6443:44;;;;-1:-1:-1;;;6443:44:0;;13118:2:1;6443:44:0;;;13100:21:1;13157:1;13137:18;;;13130:29;13195:10;13175:18;;;13168:38;13223:18;;6443:44:0;12916:331:1;6443:44:0;10575:10:::1;10552:14;10569:17:::0;;;:5:::1;:17;::::0;;;;10711:13:::1;::::0;10691:17:::1;::::0;::::1;::::0;:33:::1;10683:69;;;::::0;-1:-1:-1;;;10683:69:0;;11099:2:1;10683:69:0::1;::::0;::::1;11081:21:1::0;11138:2;11118:18;;;11111:30;11177:25;11157:18;;;11150:53;11220:18;;10683:69:0::1;10897:347:1::0;10683:69:0::1;10782:1;10771:7;:12;;:28;;;;;10798:1;10787:7;:12;;10771:28;10763:55;;;::::0;-1:-1:-1;;;10763:55:0;;9390:2:1;10763:55:0::1;::::0;::::1;9372:21:1::0;9429:2;9409:18;;;9402:30;9468:16;9448:18;;;9441:44;9502:18;;10763:55:0::1;9188:338:1::0;10763:55:0::1;10930:1;10887:6;:4;:6::i;:::-;10894:9;10902:1;10894:7:::0;:9:::1;:::i;:::-;10887:17;;;;;;;:::i;:::-;;;;::::0;:39:::1;::::0;-1:-1:-1;;;10887:39:0;;10915:10:::1;10887:39;::::0;::::1;4163:74:1::0;-1:-1:-1;;;;;10887:27:0;;::::1;::::0;::::1;::::0;4136:18:1;;10887:39:0::1;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:44;;10879:70;;;::::0;-1:-1:-1;;;10879:70:0;;7961:2:1;10879:70:0::1;::::0;::::1;7943:21:1::0;8000:2;7980:18;;;7973:30;8039:15;8019:18;;;8012:43;8072:18;;10879:70:0::1;7759:337:1::0;10879:70:0::1;10960:6;:4;:6::i;:::-;10967:9;10975:1;10967:7:::0;:9:::1;:::i;:::-;10960:17;;;;;;;:::i;:::-;;;;::::0;:64:::1;::::0;-1:-1:-1;;;10960:64:0;;10991:10:::1;10960:64;::::0;::::1;4511:34:1::0;11011:4:0::1;4561:18:1::0;;;4554:43;4613:18;;;4606:34;;;-1:-1:-1;;;;;10960:30:0;;::::1;::::0;::::1;::::0;4423:18:1;;10960:64:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;11076:9;:7;:9::i;:::-;11157:12;::::0;::::1;::::0;11144:10;;:25:::1;::::0;11157:12;11144:25:::1;:::i;:::-;11130:9;;:40;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;11252:10:0::1;11213:27;11243:20:::0;;;:8:::1;:20;::::0;;;;;;;11264:17:::1;::::0;::::1;::::0;;11243:39;;;;;;11293:17:::1;::::0;::::1;:27:::0;;;11331:23;;;11365:20;;11243:39;;11365:20;;11264:17;11365:20:::1;::::0;::::1;:::i;:::-;;;;;;11436:11;:9;:11::i;:::-;11520:12;::::0;::::1;::::0;11507:10;;:25:::1;::::0;11520:12;11507:25:::1;:::i;:::-;11493:9;;:40;;;;;;;:::i;:::-;::::0;;;-1:-1:-1;;;;;;10477:1064:0:o;9490:928::-;9578:10;9555:14;9572:17;;;:5;:17;;;;;;;9658:2;;:50;;-1:-1:-1;;;9658:50:0;;;;;4511:34:1;;;;9694:4:0;4561:18:1;;;4554:43;4613:18;;;4606:34;;;9572:17:0;-1:-1:-1;;;;;9658:2:0;;;;:15;;4423:18:1;;9658:50:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;9760:9;:7;:9::i;:::-;9833:2;;9852:20;;9833:49;;;;;-1:-1:-1;;;;;9852:20:0;;;9833:49;;;5137:74:1;5227:18;;;5220:34;;;9833:2:0;;;:10;;5110:18:1;;9833:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9825:76;;;;-1:-1:-1;;;9825:76:0;;13907:2:1;9825:76:0;;;13889:21:1;13946:2;13926:18;;;13919:30;13985:16;13965:18;;;13958:44;14019:18;;9825:76:0;13705:338:1;9825:76:0;9912:20;;:34;;;;;;;;6645:25:1;;;-1:-1:-1;;;;;9912:20:0;;;;:26;;6618:18:1;;9912:34:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;10018:12:0;;;;10005:10;;:25;;-1:-1:-1;10005:25:0;:::i;:::-;9991:9;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;10077:20:0;;10091:6;;10077:1;;:10;;:20;;10091:6;;10077:20;:::i;:::-;;;;-1:-1:-1;10145:11:0;;-1:-1:-1;10145:9:0;:11::i;:::-;10229:12;;;;10216:10;;:25;;10229:12;10216:25;:::i;:::-;10202:9;;:40;;;;;;;:::i;:::-;;;;-1:-1:-1;;10286:10:0;;;;-1:-1:-1;;;;;10286:10:0;:24;:50;;;;-1:-1:-1;;;;;;10314:22:0;;;;10286:50;:76;;;;-1:-1:-1;;;;;;10340:22:0;;10352:10;10340:22;;10286:76;10283:128;;;10378:10;;;:21;;-1:-1:-1;;;;;10378:21:0;;-1:-1:-1;;;;;;10378:21:0;;;;;;9544:874;9490:928;;:::o;3995:181::-;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;-1:-1:-1;;;;;4064:18:0;::::1;4056:40;;;::::0;-1:-1:-1;;;4056:40:0;;11867:2:1;4056:40:0::1;::::0;::::1;11849:21:1::0;11906:1;11886:18;;;11879:29;-1:-1:-1;;;11924:18:1;;;11917:39;11973:18;;4056:40:0::1;11665:332:1::0;4056:40:0::1;4107:7;:14:::0;;-1:-1:-1;;;;;;4107:14:0::1;-1:-1:-1::0;;;;;4107:14:0;::::1;::::0;;::::1;::::0;;;4137:31:::1;::::0;;12214:21:1;;;12271:1;12251:18;;;12244:29;;;;12309:9;12304:2;12289:18;;12282:37;12386:4;12371:20;;12364:85;;;;4137:31:0::1;::::0;12351:3:1;12336:19;4137:31:0::1;12002:453:1::0;5352:193:0;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;-1:-1:-1;;;;;5429:15:0;::::1;5421:37;;;::::0;-1:-1:-1;;;5421:37:0;;11867:2:1;5421:37:0::1;::::0;::::1;11849:21:1::0;11906:1;11886:18;;;11879:29;-1:-1:-1;;;11924:18:1;;;11917:39;11973:18;;5421:37:0::1;11665:332:1::0;5421:37:0::1;-1:-1:-1::0;;;;;5469:19:0;::::1;5491:5;5469:19:::0;;;:16:::1;:19;::::0;;;;;;;:27;;-1:-1:-1;;5469:27:0::1;::::0;;5512:25;;4819:74:1;;;4909:18;;;4902:50;;;;5512:25:0::1;::::0;4792:18:1;5512:25:0::1;4651:307:1::0;7661:191:0;7750:10;7711:4;7744:17;;;:5;:17;;;;;7833:11;;;;7809:14;;;7793:12;;;;7780:10;;7826:4;;7809:14;7780:25;;;:::i;:::-;7779:44;;;;:::i;:::-;:51;;;;:::i;:::-;:65;;;;:::i;:::-;7772:72;;;7661:191;:::o;6856:314::-;6946:10;6929:28;;;;:16;:28;;;;;;;;:70;;;;-1:-1:-1;6961:5:0;;:38;;-1:-1:-1;;;6961:38:0;;2108:66;6961:38;;;6855:25:1;6988:10:0;6896:18:1;;;6889:83;-1:-1:-1;;;;;6961:5:0;;;;:13;;6828:18:1;;6961:38:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6921:105;;;;-1:-1:-1;;;6921:105:0;;10407:2:1;6921:105:0;;;10389:21:1;10446:2;10426:18;;;10419:30;10485:24;10465:18;;;10458:52;10527:18;;6921:105:0;10205:346:1;6921:105:0;7040:9;;:13;7037:126;;7104:9;;7087:14;:7;7097:4;7087:14;:::i;:::-;:26;;;;:::i;:::-;7069:14;;:44;;;;;;;:::i;:::-;;;;;;;;7144:7;7128:12;;:23;;;;;;;:::i;:::-;;;;-1:-1:-1;;7037:126:0;6856:314;:::o;5551:352::-;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;5687:7:::1;5677;:17;:36;;;;;5708:5;5698:7;:15;5677:36;:57;;;;;5725:9;5717:5;:17;5677:57;:81;;;;;5750:8;5738:9;:20;5677:81;:96;;;;;5772:1;5762:7;:11;5677:96;5669:121;;;::::0;-1:-1:-1;;;5669:121:0;;10758:2:1;5669:121:0::1;::::0;::::1;10740:21:1::0;10797:2;10777:18;;;10770:30;10836:14;10816:18;;;10809:42;10868:18;;5669:121:0::1;10556:336:1::0;5669:121:0::1;5801:56;;;;;;;;5812:7;5801:56;;;;5821:7;5801:56;;;;5830:5;5801:56;;;;5837:9;5801:56;;;;5848:8;5801:56;;::::0;:7:::1;:56;;;;;;;:::i;:::-;;5873:22;5887:7;5873:22;;;;;;:::i;:::-;;;;;;;;5551:352:::0;;;;;:::o;2785:41::-;;;;;;;;;;;;;;;-1:-1:-1;2785:41:0;:::o;13278:298::-;13334:2;;:16;;;-1:-1:-1;;;13334:16:0;;;;13315:4;;-1:-1:-1;;;;;13334:2:0;;:14;;:16;;;;;;;;;;;;;;:2;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13331:38;;-1:-1:-1;13365:1:0;;13278:298::o;13331:38::-;13384:15;13403:12;:10;:12::i;:::-;13381:34;;;13426:15;13467:2;;;;;;;;;-1:-1:-1;;;;;13467:2:0;-1:-1:-1;;;;;13467:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13444;:10;13457:3;13444:16;:::i;:::-;:20;;13463:1;13444:20;:::i;:::-;:39;;;;:::i;:::-;13503:20;;:45;;-1:-1:-1;;;13503:45:0;;13542:4;13503:45;;;4163:74:1;13426:57:0;;-1:-1:-1;13564:4:0;;13426:57;;-1:-1:-1;;;;;13503:20:0;;:30;;4136:18:1;;13503:45:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:58;;;;:::i;5909:224::-;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;6009:1:::1;5991:14;:19;;5983:39;;;::::0;-1:-1:-1;;;5983:39:0;;9733:2:1;5983:39:0::1;::::0;::::1;9715:21:1::0;9772:1;9752:18;;;9745:29;9810:9;9790:18;;;9783:37;9837:18;;5983:39:0::1;9531:330:1::0;5983:39:0::1;6033:13;:30:::0;;;6079:46:::1;::::0;;11461:21:1;;;11518:2;11498:18;;;11491:30;;;;11557:15;11552:2;11537:18;;11530:43;11640:4;11625:20;;11618:36;;;6079:46:0::1;::::0;11605:3:1;11590:19;6079:46:0::1;11249:411:1::0;7858:354:0;7908:4;7927:9;;7940:1;7927:14;7924:31;;;-1:-1:-1;7951:1:0;;7858:354::o;7924:31::-;7988:10;7965:14;7982:17;;;:5;:17;;;;;;8106:9;;8054:20;;:42;;-1:-1:-1;;;8054:42:0;;8090:4;8054:42;;;4163:74:1;7982:17:0;;7965:14;8106:9;;-1:-1:-1;;;;;8054:20:0;;;;:27;;4136:18:1;;8054:42:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:49;;8099:4;8054:49;:::i;:::-;:61;;;;:::i;:::-;8038:13;;:77;;;;:::i;:::-;8010:105;;8193:1;:11;;;8186:4;8163:20;8147:1;:12;;;8134:1;:10;;;:25;;;;:::i;:::-;8133:50;;;;:::i;:::-;:57;;;;:::i;:::-;:71;;;;:::i;4461:246::-;3925:7;;-1:-1:-1;;;;;3925:7:0;3911:10;:21;3903:42;;;;-1:-1:-1;;;3903:42:0;;14722:2:1;3903:42:0;;;14704:21:1;14761:1;14741:18;;;14734:29;-1:-1:-1;;;14779:18:1;;;14772:38;14827:18;;3903:42:0;14520:331:1;3903:42:0;-1:-1:-1;;;;;4530:26:0;::::1;4522:48;;;::::0;-1:-1:-1;;;4522:48:0;;11867:2:1;4522:48:0::1;::::0;::::1;11849:21:1::0;11906:1;11886:18;;;11879:29;-1:-1:-1;;;11924:18:1;;;11917:39;11973:18;;4522:48:0::1;11665:332:1::0;4522:48:0::1;4597:2;::::0;-1:-1:-1;;;;;4597:2:0::1;4589:25:::0;4581:49:::1;;;::::0;-1:-1:-1;;;4581:49:0;;9050:2:1;4581:49:0::1;::::0;::::1;9032:21:1::0;9089:2;9069:18;;;9062:30;-1:-1:-1;;;9108:18:1;;;9101:41;9159:18;;4581:49:0::1;8848:335:1::0;4581:49:0::1;4641:2;:8:::0;;-1:-1:-1;;;;;;4641:8:0::1;-1:-1:-1::0;;;;;4641:8:0;::::1;::::0;;::::1;::::0;;;4665:34:::1;::::0;;13464:21:1;;;13521:1;13501:18;;;13494:29;;;;13559:4;13554:2;13539:18;;13532:32;13631:4;13616:20;;13609:85;;;;4665:34:0::1;::::0;13596:3:1;13581:19;4665:34:0::1;13252:448:1::0;6539:228:0;6581:4;6587;6604:17;6623;6646:2;;;;;;;;;-1:-1:-1;;;;;6646:2:0;-1:-1:-1;;;;;6646:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;6703:5:0;;;6680:2;:11;;;;;;;;6603:59;;-1:-1:-1;6603:59:0;;-1:-1:-1;;;;;;6703:5:0;;;;6680:2;;;:9;;:11;;;;;;;;;;;;;;:2;:11;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;;;;;6680:29:0;;:79;;6738:9;6749;6680:79;;;6713:9;6724;6680:79;6673:86;;;;;;;;-1:-1:-1;6539:228:0;-1:-1:-1;;;6539:228:0:o;7205:416::-;7267:10;7244:14;7261:17;;;:5;:17;;;;;7289:12;;;:16;;;7261:17;7316:147;7336:1;:17;;;7332:1;:21;7316:147;;;7420:10;7411:20;;;;:8;:20;;;;;;;;:23;;;;;;;;7443:1;7411:31;;;;7448:3;;7403:7;;7411:33;;7443:1;7411:33;:::i;:::-;7403:42;;;;;;;:::i;:::-;;;7390:10;;:55;;7403:42;7390:55;:::i;:::-;:61;;;;:::i;:::-;7374:1;:12;;;:77;;;;;;;:::i;:::-;;;;-1:-1:-1;7355:3:0;;-1:-1:-1;7355:3:0;;;:::i;:::-;;;;7316:147;;;;7534:4;7517:14;;7501:1;:12;;;7488:1;:10;;;:25;;;;:::i;:::-;7487:44;;;;:::i;:::-;:51;;;;:::i;:::-;7473:11;;;:65;7593:13;;7577:12;;;;7564:10;;7609:4;;7593:13;7564:25;;;:::i;:::-;7563:43;;;;:::i;:::-;:50;;;;:::i;:::-;7549:11;;;;:64;7205:416::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:188:1;93:13;;146:30;135:42;;125:53;;115:81;;192:1;189;182:12;115:81;14:188;;;:::o;207:247::-;266:6;319:2;307:9;298:7;294:23;290:32;287:52;;;335:1;332;325:12;287:52;374:9;361:23;393:31;418:5;393:31;:::i;:::-;443:5;207:247;-1:-1:-1;;;207:247:1:o;459:251::-;529:6;582:2;570:9;561:7;557:23;553:32;550:52;;;598:1;595;588:12;550:52;630:9;624:16;649:31;674:5;649:31;:::i;715:315::-;783:6;791;844:2;832:9;823:7;819:23;815:32;812:52;;;860:1;857;850:12;812:52;899:9;886:23;918:31;943:5;918:31;:::i;:::-;968:5;1020:2;1005:18;;;;992:32;;-1:-1:-1;;;715:315:1:o;1035:277::-;1102:6;1155:2;1143:9;1134:7;1130:23;1126:32;1123:52;;;1171:1;1168;1161:12;1123:52;1203:9;1197:16;1256:5;1249:13;1242:21;1235:5;1232:32;1222:60;;1278:1;1275;1268:12;2156:450;2243:6;2251;2259;2312:2;2300:9;2291:7;2287:23;2283:32;2280:52;;;2328:1;2325;2318:12;2280:52;2351:40;2381:9;2351:40;:::i;:::-;2341:50;;2410:49;2455:2;2444:9;2440:18;2410:49;:::i;:::-;2400:59;;2502:2;2491:9;2487:18;2481:25;2546:10;2539:5;2535:22;2528:5;2525:33;2515:61;;2572:1;2569;2562:12;2515:61;2595:5;2585:15;;;2156:450;;;;;:::o;2611:180::-;2670:6;2723:2;2711:9;2702:7;2698:23;2694:32;2691:52;;;2739:1;2736;2729:12;2691:52;-1:-1:-1;2762:23:1;;2611:180;-1:-1:-1;2611:180:1:o;2796:184::-;2866:6;2919:2;2907:9;2898:7;2894:23;2890:32;2887:52;;;2935:1;2932;2925:12;2887:52;-1:-1:-1;2958:16:1;;2796:184;-1:-1:-1;2796:184:1:o;2985:315::-;3053:6;3061;3114:2;3102:9;3093:7;3089:23;3085:32;3082:52;;;3130:1;3127;3120:12;3082:52;3166:9;3153:23;3143:33;;3226:2;3215:9;3211:18;3198:32;3239:31;3264:5;3239:31;:::i;:::-;3289:5;3279:15;;;2985:315;;;;;:::o;3305:248::-;3373:6;3381;3434:2;3422:9;3413:7;3409:23;3405:32;3402:52;;;3450:1;3447;3440:12;3402:52;-1:-1:-1;;3473:23:1;;;3543:2;3528:18;;;3515:32;;-1:-1:-1;3305:248:1:o;3558:454::-;3653:6;3661;3669;3677;3685;3738:3;3726:9;3717:7;3713:23;3709:33;3706:53;;;3755:1;3752;3745:12;3706:53;-1:-1:-1;;3778:23:1;;;3848:2;3833:18;;3820:32;;-1:-1:-1;3899:2:1;3884:18;;3871:32;;3950:2;3935:18;;3922:32;;-1:-1:-1;4001:3:1;3986:19;3973:33;;-1:-1:-1;3558:454:1;-1:-1:-1;3558:454:1:o;5265:566::-;5467:3;5452:19;;5456:9;5548:6;5425:4;5582:243;5596:4;5593:1;5590:11;5582:243;;;5659:13;;-1:-1:-1;;;;;5655:62:1;5643:75;;5741:4;5765:12;;;;5800:15;;;;5616:1;5609:9;5582:243;;;5586:3;;;5265:566;;;;:::o;5836:466::-;6013:3;5998:19;;6002:9;6094:6;5971:4;6128:168;6142:4;6139:1;6136:11;6128:168;;;6201:13;;6189:26;;6244:4;6235:14;;;;6284:1;6272:14;;;;6155:9;6128:168;;16295:128;16335:3;16366:1;16362:6;16359:1;16356:13;16353:39;;;16372:18;;:::i;:::-;-1:-1:-1;16408:9:1;;16295:128::o;16428:120::-;16468:1;16494;16484:35;;16499:18;;:::i;:::-;-1:-1:-1;16533:9:1;;16428:120::o;16553:168::-;16593:7;16659:1;16655;16651:6;16647:14;16644:1;16641:21;16636:1;16629:9;16622:17;16618:45;16615:71;;;16666:18;;:::i;:::-;-1:-1:-1;16706:9:1;;16553:168::o;16726:125::-;16766:4;16794:1;16791;16788:8;16785:34;;;16799:18;;:::i;:::-;-1:-1:-1;16836:9:1;;16726:125::o;16856:135::-;16895:3;-1:-1:-1;;16916:17:1;;16913:43;;;16936:18;;:::i;:::-;-1:-1:-1;16983:1:1;16972:13;;16856:135::o;16996:112::-;17028:1;17054;17044:35;;17059:18;;:::i;:::-;-1:-1:-1;17093:9:1;;16996:112::o;17113:184::-;-1:-1:-1;;;17162:1:1;17155:88;17262:4;17259:1;17252:15;17286:4;17283:1;17276:15;17302:184;-1:-1:-1;;;17351:1:1;17344:88;17451:4;17448:1;17441:15;17475:4;17472:1;17465:15;17491:184;-1:-1:-1;;;17540:1:1;17533:88;17640:4;17637:1;17630:15;17664:4;17661:1;17654:15;17680:154;-1:-1:-1;;;;;17759:5:1;17755:54;17748:5;17745:65;17735:93;;17824:1;17821;17814:12

Swarm Source

ipfs://62453395a0e9924bca49929a1e1e5cbb441a1cd6a58d3d09def34be79618002f
Block Transaction Gas Used Reward
Age Block Fee Address BC Fee Address Voting Power Jailed Incoming
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.