ETH Price: $3,205.96 (+5.35%)

Contract

0x31d54a0c6A75aA0cb6eD8A27F1a938223475f62E
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Ret By Admin119946792021-03-08 0:46:381408 days ago1615164398IN
0x31d54a0c...23475f62E
0 ETH0.00730091126.43156387
CLAIMREWARD119762512021-03-05 4:57:021411 days ago1614920222IN
0x31d54a0c...23475f62E
0 ETH0.0067612274.6
CLAIMREWARD119544162021-03-01 20:13:061414 days ago1614629586IN
0x31d54a0c...23475f62E
0 ETH0.00978836108
CLAIMREWARD119525802021-03-01 13:26:501414 days ago1614605210IN
0x31d54a0c...23475f62E
0 ETH0.00951646105
CLAIMREWARD119510712021-03-01 7:47:231415 days ago1614584843IN
0x31d54a0c...23475f62E
0 ETH0.0076131784
CLAIMREWARD119502252021-03-01 4:36:281415 days ago1614573388IN
0x31d54a0c...23475f62E
0 ETH0.0059195465.313344
CLAIMREWARD119496032021-03-01 2:17:341415 days ago1614565054IN
0x31d54a0c...23475f62E
0 ETH0.006616273
CLAIMREWARD119493062021-03-01 1:13:411415 days ago1614561221IN
0x31d54a0c...23475f62E
0 ETH0.007431982
CLAIMREWARD119485972021-02-28 22:43:471415 days ago1614552227IN
0x31d54a0c...23475f62E
0 ETH0.007975788
CLAIMREWARD119422442021-02-27 23:08:261416 days ago1614467306IN
0x31d54a0c...23475f62E
0 ETH0.00915393101
CLAIMREWARD119309202021-02-26 5:27:241418 days ago1614317244IN
0x31d54a0c...23475f62E
0 ETH0.0089726699
CLAIMREWARD119053472021-02-22 6:55:281422 days ago1613976928IN
0x31d54a0c...23475f62E
0 ETH0.00987899109
CLAIMREWARD119046972021-02-22 4:31:311422 days ago1613968291IN
0x31d54a0c...23475f62E
0 ETH0.01042279115
CLAIMREWARD118979512021-02-21 3:49:161423 days ago1613879356IN
0x31d54a0c...23475f62E
0 ETH0.00919924101.5
CLAIMREWARD118646672021-02-16 0:51:211428 days ago1613436681IN
0x31d54a0c...23475f62E
0 ETH0.0175828194
CLAIMREWARD118541862021-02-14 10:12:281430 days ago1613297548IN
0x31d54a0c...23475f62E
0 ETH0.01006932111.1
CLAIMREWARD118491172021-02-13 15:30:281430 days ago1613230228IN
0x31d54a0c...23475f62E
0 ETH0.01114785123
CLAIMREWARD118454542021-02-13 1:49:361431 days ago1613180976IN
0x31d54a0c...23475f62E
0 ETH0.00515437125
CLAIMREWARD118404042021-02-12 7:20:011432 days ago1613114401IN
0x31d54a0c...23475f62E
0 ETH0.00804631124.3
CLAIMREWARD118337942021-02-11 7:03:521433 days ago1613027032IN
0x31d54a0c...23475f62E
0 ETH0.008791497
CLAIMREWARD118150372021-02-08 9:38:291436 days ago1612777109IN
0x31d54a0c...23475f62E
0 ETH0.00996963110
CLAIMREWARD118145182021-02-08 7:49:311436 days ago1612770571IN
0x31d54a0c...23475f62E
0 ETH0.01024152113
CLAIMREWARD118142162021-02-08 6:41:111436 days ago1612766471IN
0x31d54a0c...23475f62E
0 ETH0.0081569790
CLAIMREWARD118139132021-02-08 5:30:101436 days ago1612762210IN
0x31d54a0c...23475f62E
0 ETH0.00915393101
CLAIMREWARD118132522021-02-08 2:57:171436 days ago1612753037IN
0x31d54a0c...23475f62E
0 ETH0.0081569790
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block
From
To
119946792021-03-08 0:46:381408 days ago1615164398
0x31d54a0c...23475f62E
1.18808617 ETH
119762512021-03-05 4:57:021411 days ago1614920222
0x31d54a0c...23475f62E
0.06686614 ETH
119544162021-03-01 20:13:061414 days ago1614629586
0x31d54a0c...23475f62E
0.02118867 ETH
119525802021-03-01 13:26:501414 days ago1614605210
0x31d54a0c...23475f62E
0.04275678 ETH
119510712021-03-01 7:47:231415 days ago1614584843
0x31d54a0c...23475f62E
0.29955711 ETH
119502252021-03-01 4:36:281415 days ago1614573388
0x31d54a0c...23475f62E
0.02293608 ETH
119496032021-03-01 2:17:341415 days ago1614565054
0x31d54a0c...23475f62E
0.04309628 ETH
119493062021-03-01 1:13:411415 days ago1614561221
0x31d54a0c...23475f62E
0.09985237 ETH
119485972021-02-28 22:43:471415 days ago1614552227
0x31d54a0c...23475f62E
0.02995571 ETH
119422442021-02-27 23:08:261416 days ago1614467306
0x31d54a0c...23475f62E
0.02496309 ETH
119309202021-02-26 5:27:241418 days ago1614317244
0x31d54a0c...23475f62E
0.04992618 ETH
119053472021-02-22 6:55:281422 days ago1613976928
0x31d54a0c...23475f62E
0.10734129 ETH
119046972021-02-22 4:31:311422 days ago1613968291
0x31d54a0c...23475f62E
0.04992618 ETH
118979512021-02-21 3:49:161423 days ago1613879356
0x31d54a0c...23475f62E
0.04024011 ETH
118646672021-02-16 0:51:211428 days ago1613436681
0x31d54a0c...23475f62E
0.10682206 ETH
118541862021-02-14 10:12:281430 days ago1613297548
0x31d54a0c...23475f62E
0.04987625 ETH
118491172021-02-13 15:30:281430 days ago1613230228
0x31d54a0c...23475f62E
0.04593209 ETH
118337942021-02-11 7:03:521433 days ago1613027032
0x31d54a0c...23475f62E
0.18344378 ETH
118150372021-02-08 9:38:291436 days ago1612777109
0x31d54a0c...23475f62E
0.0394267 ETH
118145182021-02-08 7:49:311436 days ago1612770571
0x31d54a0c...23475f62E
0.1470426 ETH
118142162021-02-08 6:41:111436 days ago1612766471
0x31d54a0c...23475f62E
0.16727269 ETH
118139132021-02-08 5:30:101436 days ago1612762210
0x31d54a0c...23475f62E
0.15350804 ETH
118132522021-02-08 2:57:171436 days ago1612753037
0x31d54a0c...23475f62E
0.07488927 ETH
118131662021-02-08 2:39:291436 days ago1612751969
0x31d54a0c...23475f62E
0.15369277 ETH
118130762021-02-08 2:20:421436 days ago1612750842
0x31d54a0c...23475f62E
0.1897195 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
UniswapSnipeListingBotBBPStake

Compiler Version
v0.7.5+commit.eb77ed08

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-01-22
*/

// SPDX-License-Identifier: UNLICENSED
pragma solidity 0.7.5;


// ----------------------------------------------------------------------------
// SafeMath library
// ----------------------------------------------------------------------------


library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `+` operator.
     *
     * Requirements:
     *
     * - Addition cannot overflow.
     */
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * Counterpart to Solidity's `-` operator.
     *
     * Requirements:
     *
     * - Subtraction cannot overflow.
     */
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, reverting on
     * overflow.
     *
     * Counterpart to Solidity's `*` operator.
     *
     * Requirements:
     *
     * - Multiplication cannot overflow.
     */
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

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

        return c;
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }

    /**
     * @dev Returns the integer division of two unsigned integers. Reverts with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * Counterpart to Solidity's `/` operator. Note: this function uses a
     * `revert` opcode (which leaves remaining gas untouched) while Solidity
     * uses an invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * Reverts with custom message when dividing by zero.
     *
     * Counterpart to Solidity's `%` operator. This function uses a `revert`
     * opcode (which leaves remaining gas untouched) while Solidity uses an
     * invalid opcode to revert (consuming all remaining gas).
     *
     * Requirements:
     *
     * - The divisor cannot be zero.
     */
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
    
    function ceil(uint a, uint m) internal pure returns (uint r) {
        return (a + m - 1) / m * m;
    }
}

// ----------------------------------------------------------------------------
// Owned contract
// ----------------------------------------------------------------------------
contract Owned {
    address payable public owner;

    event OwnershipTransferred(address indexed _from, address indexed _to);

    constructor() {
        owner = msg.sender;
    }

    modifier onlyOwner {
        require(msg.sender == owner);
        _;
    }

    function transferOwnership(address payable _newOwner) public onlyOwner {
        require(_newOwner != address(0), "ERC20: sending to the zero address");
        owner = _newOwner;
        emit OwnershipTransferred(msg.sender, _newOwner);
    }
}

// ----------------------------------------------------------------------------
// ERC Token Standard #20 Interface
// ----------------------------------------------------------------------------
interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address tokenOwner) external view returns (uint256 balance);
    function allowance(address tokenOwner, address spender) external view returns (uint256 remaining);
    function transfer(address to, uint256 tokens) external returns (bool success);
    function approve(address spender, uint256 tokens) external returns (bool success);
    function transferFrom(address from, address to, uint256 tokens) external returns (bool success);
    function burnTokens(uint256 _amount) external;
    
    function calculateFees(
        address sender,
        address recipient,
        uint256 amount
    ) external view returns (uint256, uint256);
    
    
    event Transfer(address indexed from, address indexed to, uint256 tokens);
    event Approval(address indexed tokenOwner, address indexed spender, uint256 tokens);
}

// ----------------------------------------------------------------------------
// ERC20 Token, with the addition of symbol, name and decimals and assisted
// token transfers
// ----------------------------------------------------------------------------
contract UniswapSnipeListingBotBBPStake is Owned {
    using SafeMath for uint256;
    
    address public BBPLP = 0x44f692888a0ED51BC5b05867d9149C5F32F5E07F;
    address public BBP   = 0xbb0A009ba1EB20c5062C790432f080F6597662AF;
    
    address public lpLockAddress = 0x740Fda023D5aa68cB392DE148C88966BD91Ec53e;
    
    uint256 public totalStakes = 0;
    uint256 public totalDividends = 0;
    uint256 private scaledRemainder = 0;
    uint256 private scaling = uint256(10) ** 12;
    uint public round = 1;
    
    uint256 public maxAllowed = 100000000000000000000; //100 tokens total allowed to be staked
    
    
    uint256 public ethMade=0; //total payout given
 
    /* Fees breaker, to protect withdraws if anything ever goes wrong */
    bool public breaker = true; // withdraw can be unlock,, default locked
    mapping(address => uint) public farmTime; // period that your sake it locked to keep it for farming
    //uint public lock = 0; // farm lock in blocks ~ 0 days for 15s/block
    //address public admin;
    
    struct USER{
        uint256 stakedTokens;
        uint256 lastDividends;
        uint256 fromTotalDividend;
        uint round;
        uint256 remainder;
    }
    
        address[] internal stakeholders;
    mapping(address => USER) stakers;
    mapping (uint => uint256) public payouts;                   // keeps record of each payout
    
    event STAKED(address staker, uint256 tokens);
    event EARNED(address staker, uint256 tokens);
    event UNSTAKED(address staker, uint256 tokens);
    event PAYOUT(uint256 round, uint256 tokens, address sender);
    event CLAIMEDREWARD(address staker, uint256 reward);
    
    function setBreaker(bool _breaker) external onlyOwner {
        breaker = _breaker;
    }
    
    
    function isStakeholder(address _address)
       public
       view
       returns(bool)
   {
       for (uint256 s = 0; s < stakeholders.length; s += 1){
           if (_address == stakeholders[s]) return (true);
       }
       return (false);
   }
   
   function addStakeholder(address _stakeholder)
       public
   {
       (bool _isStakeholder) = isStakeholder(_stakeholder);
       if(!_isStakeholder) stakeholders.push(_stakeholder);
   }
   
   function setLpLockAddress(address _account) public onlyOwner {
        require(_account != address(0), "ERC20:  Setting zero address");
        lpLockAddress = _account;
    }
   


    // ------------------------------------------------------------------------
    // Token holders can stake their tokens using this function
    // @param tokens number of tokens to stake
    // ------------------------------------------------------------------------
    function STAKE(uint256 tokens) external {
        require(totalStakes < maxAllowed, "MAX AMOUNT REACHED CANNOT STAKE NO MORE");
        require(IERC20(BBPLP).transferFrom(msg.sender, address(lpLockAddress), tokens), "Tokens cannot be transferred from user for locking");
           
            // add pending rewards to remainder to be claimed by user later, if there is any existing stake
            uint256 owing = pendingReward(msg.sender);
            stakers[msg.sender].remainder += owing;
            
            stakers[msg.sender].stakedTokens = tokens.add(stakers[msg.sender].stakedTokens);
            stakers[msg.sender].lastDividends = owing;
            stakers[msg.sender].fromTotalDividend= totalDividends;
            stakers[msg.sender].round =  round;
            
            (bool _isStakeholder) = isStakeholder(msg.sender);
             if(!_isStakeholder) farmTime[msg.sender] =  block.timestamp;
            
            totalStakes = totalStakes.add(tokens);
            
            addStakeholder(msg.sender);
            
            emit STAKED(msg.sender, tokens);
        
    }
    
    // ------------------------------------------------------------------------
    // Owners can send the funds to be distributed to stakers using this function
    // @param tokens number of tokens to distribute
    // ------------------------------------------------------------------------
    function ADDFUNDS() external payable {
        uint256 _amount = msg.value;
        ethMade = ethMade.add(_amount);
        
        _addPayout(_amount);
    }
    
    // ------------------------------------------------------------------------
    // Private function to register payouts
    // ------------------------------------------------------------------------
    function _addPayout(uint256 tokens) private{
        // divide the funds among the currently staked tokens
        // scale the deposit and add the previous remainder
        uint256 available = (tokens.mul(scaling)).add(scaledRemainder); 
        uint256 dividendPerToken = available.div(totalStakes);
        scaledRemainder = available.mod(totalStakes);
        
        totalDividends = totalDividends.add(dividendPerToken);
        payouts[round] = payouts[round - 1].add(dividendPerToken);
        
        emit PAYOUT(round, tokens, msg.sender);
        round++;
    }
    
    // ------------------------------------------------------------------------
    // Stakers can claim their pending rewards using this function
    // ------------------------------------------------------------------------
    function CLAIMREWARD() public {
        
        if(totalDividends >= stakers[msg.sender].fromTotalDividend){
            uint256 owing = pendingReward(msg.sender);
        
            owing = owing.add(stakers[msg.sender].remainder);
            stakers[msg.sender].remainder = 0;
        
            msg.sender.transfer(owing);
        
            emit CLAIMEDREWARD(msg.sender, owing);
        
            stakers[msg.sender].lastDividends = owing; // unscaled
            stakers[msg.sender].round = round; // update the round
            stakers[msg.sender].fromTotalDividend = totalDividends; // scaled
        }
    }
    
    // ------------------------------------------------------------------------
    // Get the pending rewards of the staker
    // @param _staker the address of the staker
    // ------------------------------------------------------------------------    
    function pendingReward(address staker) private returns (uint256) {
        require(staker != address(0), "ERC20: sending to the zero address");
        
        uint stakersRound = stakers[staker].round;
        uint256 amount =  ((totalDividends.sub(payouts[stakersRound - 1])).mul(stakers[staker].stakedTokens)).div(scaling);
        stakers[staker].remainder += ((totalDividends.sub(payouts[stakersRound - 1])).mul(stakers[staker].stakedTokens)) % scaling ;
        return amount;
    }
    
    function getPendingReward(address staker) public view returns(uint256 _pendingReward) {
        require(staker != address(0), "ERC20: sending to the zero address");
         uint stakersRound = stakers[staker].round;
         
        uint256 amount =  ((totalDividends.sub(payouts[stakersRound - 1])).mul(stakers[staker].stakedTokens)).div(scaling);
        amount += ((totalDividends.sub(payouts[stakersRound - 1])).mul(stakers[staker].stakedTokens)) % scaling ;
        return (amount.add(stakers[staker].remainder));
    }
    
    // ------------------------------------------------------------------------
    // Stakers can un stake the staked tokens using this function
    // @param tokens the number of tokens to withdraw
    // ------------------------------------------------------------------------
    function WITHDRAW(uint256 tokens) external {
        require(breaker == false, "Admin Restricted WITHDRAW");
        require(stakers[msg.sender].stakedTokens >= tokens && tokens > 0, "Invalid token amount to withdraw");
        
        totalStakes = totalStakes.sub(tokens);
        
        // add pending rewards to remainder to be claimed by user later, if there is any existing stake
        uint256 owing = pendingReward(msg.sender);
        stakers[msg.sender].remainder += owing;
                
        stakers[msg.sender].stakedTokens = stakers[msg.sender].stakedTokens.sub(tokens);
        stakers[msg.sender].lastDividends = owing;
        stakers[msg.sender].fromTotalDividend= totalDividends;
        stakers[msg.sender].round =  round;
        
        
        require(IERC20(BBPLP).transfer(msg.sender, tokens), "Error in un-staking tokens");
        emit UNSTAKED(msg.sender, tokens);
    }
    
    // ------------------------------------------------------------------------
    // Private function to calculate 1% percentage
    // ------------------------------------------------------------------------
    function onePercent(uint256 _tokens) private pure returns (uint256){
        uint256 roundValue = _tokens.ceil(100);
        uint onePercentofTokens = roundValue.mul(100).div(100 * 10**uint(2));
        return onePercentofTokens;
    }
    
    // ------------------------------------------------------------------------
    // Get the number of tokens staked by a staker
    // @param _staker the address of the staker
    // ------------------------------------------------------------------------
    function yourStakedBBPLp(address staker) public view returns(uint256 stakedBBPLp){
        require(staker != address(0), "ERC20: sending to the zero address");
        
        return stakers[staker].stakedTokens;
    }
    
    // ------------------------------------------------------------------------
    // Get the BBP balance of the token holder
    // @param user the address of the token holder
    // ------------------------------------------------------------------------
    function yourBBPBalance(address user) external view returns(uint256 BBPBalance){
        require(user != address(0), "ERC20: sending to the zero address");
        return IERC20(BBP).balanceOf(user);
    }
    
    function yourBBPLpBalance(address user) external view returns(uint256 BBPLpBalance){
        require(user != address(0), "ERC20: sending to the zero address");
        return IERC20(BBPLP).balanceOf(user);
    }
    
    function retByAdmin() public onlyOwner {
        require(IERC20(BBPLP).transfer(owner, IERC20(BBPLP).balanceOf(address(this))), "Error in retrieving tokens");
        require(IERC20(BBP).transfer(owner, IERC20(BBP).balanceOf(address(this))), "Error in retrieving bbp tokens");
        owner.transfer(address(this).balance);
    }
   
}

Contract Security Audit

Contract ABI

[{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"reward","type":"uint256"}],"name":"CLAIMEDREWARD","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"EARNED","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_from","type":"address"},{"indexed":true,"internalType":"address","name":"_to","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"round","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"},{"indexed":false,"internalType":"address","name":"sender","type":"address"}],"name":"PAYOUT","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"STAKED","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"staker","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"UNSTAKED","type":"event"},{"inputs":[],"name":"ADDFUNDS","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"BBP","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"BBPLP","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"CLAIMREWARD","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"STAKE","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"WITHDRAW","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_stakeholder","type":"address"}],"name":"addStakeholder","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"breaker","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ethMade","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"farmTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"getPendingReward","outputs":[{"internalType":"uint256","name":"_pendingReward","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"isStakeholder","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpLockAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxAllowed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"payouts","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"retByAdmin","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"round","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_breaker","type":"bool"}],"name":"setBreaker","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"setLpLockAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalStakes","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address payable","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"yourBBPBalance","outputs":[{"internalType":"uint256","name":"BBPBalance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"}],"name":"yourBBPLpBalance","outputs":[{"internalType":"uint256","name":"BBPLpBalance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"staker","type":"address"}],"name":"yourStakedBBPLp","outputs":[{"internalType":"uint256","name":"stakedBBPLp","type":"uint256"}],"stateMutability":"view","type":"function"}]

6080604052600180546001600160a01b03199081167344f692888a0ed51bc5b05867d9149c5f32f5e07f17825560028054821673bb0a009ba1eb20c5062c790432f080f6597662af1790556003805490911673740fda023d5aa68cb392de148c88966bd91ec53e179055600060048190556005819055600681905564e8d4a51000600755600882905568056bc75e2d63100000600955600a55600b805460ff191690911790553480156100b157600080fd5b50600080546001600160a01b03191633179055611897806100d36000396000f3fe6080604052600436106101815760003560e01c8063997664d7116100d1578063ca3996711161008a578063e5c42fd111610064578063e5c42fd114610477578063ef037b90146104aa578063f2fde38b146104dd578063f3ec37c21461051057610181565b8063ca39967114610430578063ca84d59114610445578063cc16ab6e1461046f57610181565b8063997664d714610358578063a76267391461036d578063bf9befb1146103a0578063c3f344a8146103b5578063c5a7525a146103e8578063c5cc0f161461041b57610181565b80632c75bcda1161013e5780634e78e565116101185780634e78e565146102ed5780635c0aeb0e146103025780638da5cb5b1461032e57806398d624041461034357610181565b80632c75bcda1461027b5780634baf782e146102a55780634df9d6ba146102ba57610181565b80630f41e0d214610186578063146ca531146101af5780631c233879146101d657806323d308fa146101ed57806329272a631461022057806329652e8614610251575b600080fd5b34801561019257600080fd5b5061019b610543565b604080519115158252519081900360200190f35b3480156101bb57600080fd5b506101c461054c565b60408051918252519081900360200190f35b3480156101e257600080fd5b506101eb610552565b005b3480156101f957600080fd5b506101c46004803603602081101561021057600080fd5b50356001600160a01b0316610846565b34801561022c57600080fd5b5061023561090e565b604080516001600160a01b039092168252519081900360200190f35b34801561025d57600080fd5b506101c46004803603602081101561027457600080fd5b503561091d565b34801561028757600080fd5b506101eb6004803603602081101561029e57600080fd5b503561092f565b3480156102b157600080fd5b506101eb610b74565b3480156102c657600080fd5b506101c4600480360360208110156102dd57600080fd5b50356001600160a01b0316610c65565b3480156102f957600080fd5b50610235610d88565b34801561030e57600080fd5b506101eb6004803603602081101561032557600080fd5b50351515610d97565b34801561033a57600080fd5b50610235610dc1565b34801561034f57600080fd5b50610235610dd0565b34801561036457600080fd5b506101c4610ddf565b34801561037957600080fd5b506101c46004803603602081101561039057600080fd5b50356001600160a01b0316610de5565b3480156103ac57600080fd5b506101c4610e48565b3480156103c157600080fd5b506101c4600480360360208110156103d857600080fd5b50356001600160a01b0316610e4e565b3480156103f457600080fd5b506101c46004803603602081101561040b57600080fd5b50356001600160a01b0316610e60565b34801561042757600080fd5b506101c4610ef4565b34801561043c57600080fd5b506101c4610efa565b34801561045157600080fd5b506101eb6004803603602081101561046857600080fd5b5035610f00565b6101eb6110e4565b34801561048357600080fd5b506101eb6004803603602081101561049a57600080fd5b50356001600160a01b03166110ff565b3480156104b657600080fd5b5061019b600480360360208110156104cd57600080fd5b50356001600160a01b0316611161565b3480156104e957600080fd5b506101eb6004803603602081101561050057600080fd5b50356001600160a01b03166111b6565b34801561051c57600080fd5b506101eb6004803603602081101561053357600080fd5b50356001600160a01b031661125d565b600b5460ff1681565b60085481565b6000546001600160a01b0316331461056957600080fd5b600154600054604080516370a0823160e01b815230600482015290516001600160a01b039384169363a9059cbb93169184916370a0823191602480820192602092909190829003018186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d60208110156105eb57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b15801561063c57600080fd5b505af1158015610650573d6000803e3d6000fd5b505050506040513d602081101561066657600080fd5b50516106b9576040805162461bcd60e51b815260206004820152601a60248201527f4572726f7220696e2072657472696576696e6720746f6b656e73000000000000604482015290519081900360640190fd5b600254600054604080516370a0823160e01b815230600482015290516001600160a01b039384169363a9059cbb93169184916370a0823191602480820192602092909190829003018186803b15801561071157600080fd5b505afa158015610725573d6000803e3d6000fd5b505050506040513d602081101561073b57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b15801561078c57600080fd5b505af11580156107a0573d6000803e3d6000fd5b505050506040513d60208110156107b657600080fd5b5051610809576040805162461bcd60e51b815260206004820152601e60248201527f4572726f7220696e2072657472696576696e672062627020746f6b656e730000604482015290519081900360640190fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610843573d6000803e3d6000fd5b50565b60006001600160a01b03821661088d5760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b600154604080516370a0823160e01b81526001600160a01b038581166004830152915191909216916370a08231916024808301926020929190829003018186803b1580156108da57600080fd5b505afa1580156108ee573d6000803e3d6000fd5b505050506040513d602081101561090457600080fd5b505190505b919050565b6002546001600160a01b031681565b600f6020526000908152604090205481565b600b5460ff1615610987576040805162461bcd60e51b815260206004820152601960248201527f41646d696e205265737472696374656420574954484452415700000000000000604482015290519081900360640190fd5b336000908152600e602052604090205481118015906109a65750600081115b6109f7576040805162461bcd60e51b815260206004820181905260248201527f496e76616c696420746f6b656e20616d6f756e7420746f207769746864726177604482015290519081900360640190fd5b600454610a0490826112f1565b6004556000610a123361133c565b336000908152600e602052604090206004810180548301905554909150610a3990836112f1565b336000818152600e60209081526040808320948555600180860187905560055460028701556008546003909601959095559354845163a9059cbb60e01b815260048101949094526024840187905293516001600160a01b039094169363a9059cbb93604480820194918390030190829087803b158015610ab857600080fd5b505af1158015610acc573d6000803e3d6000fd5b505050506040513d6020811015610ae257600080fd5b5051610b35576040805162461bcd60e51b815260206004820152601a60248201527f4572726f7220696e20756e2d7374616b696e6720746f6b656e73000000000000604482015290519081900360640190fd5b604080513381526020810184905281517f4c48d8823de8aa74e6ea4bed3a0c422e95a3d1e10f8f3e47dc7e2fe779be9514929181900390910190a15050565b336000908152600e602052604090206002015460055410610c63576000610b9a3361133c565b336000908152600e6020526040902060040154909150610bbb90829061144a565b336000818152600e602052604080822060040182905551929350909183156108fc0291849190818181858888f19350505050158015610bfe573d6000803e3d6000fd5b50604080513381526020810183905281517f8a0128b5f12decc7d739e546c0521c3388920368915393f80120bc5b408c7c9e929181900390910190a1336000908152600e60205260409020600181019190915560085460038201556005546002909101555b565b60006001600160a01b038216610cac5760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b6001600160a01b0382166000908152600e602090815260408083206003810154600754915460001982018652600f90945291842054600554929493610d0593610cff92610cf991906112f1565b906114a4565b906114fd565b6007546001600160a01b0386166000908152600e602090815260408083205460001988018452600f909252909120546005549394509192610d4a92610cf991906112f1565b81610d5157fe5b6001600160a01b0386166000908152600e60205260409020600401549190069190910190610d8090829061144a565b949350505050565b6001546001600160a01b031681565b6000546001600160a01b03163314610dae57600080fd5b600b805460ff1916911515919091179055565b6000546001600160a01b031681565b6003546001600160a01b031681565b60055481565b60006001600160a01b038216610e2c5760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b506001600160a01b03166000908152600e602052604090205490565b60045481565b600c6020526000908152604090205481565b60006001600160a01b038216610ea75760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b600254604080516370a0823160e01b81526001600160a01b038581166004830152915191909216916370a08231916024808301926020929190829003018186803b1580156108da57600080fd5b600a5481565b60095481565b60095460045410610f425760405162461bcd60e51b815260040180806020018281038252602781526020018061183b6027913960400191505060405180910390fd5b600154600354604080516323b872dd60e01b81523360048201526001600160a01b03928316602482015260448101859052905191909216916323b872dd9160648083019260209291908290030181600087803b158015610fa157600080fd5b505af1158015610fb5573d6000803e3d6000fd5b505050506040513d6020811015610fcb57600080fd5b50516110085760405162461bcd60e51b81526004018080602001828103825260328152602001806117c66032913960400191505060405180910390fd5b60006110133361133c565b336000908152600e60205260409020600481018054830190555490915061103b90839061144a565b336000818152600e6020526040812092835560018301849055600554600284015560085460039093019290925561107190611161565b90508061108b57336000908152600c602052604090204290555b600454611098908461144a565b6004556110a4336110ff565b604080513381526020810185905281517f4031c63bb53dc5dfada7ef8d75bef8c44d0283658c1585fc74107ed5b75e97c8929181900390910190a1505050565b600a5434906110f3908261144a565b600a556108438161153f565b600061110a82611161565b90508061115d57600d80546001810182556000919091527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb50180546001600160a01b0319166001600160a01b0384161790555b5050565b6000805b600d548110156111ad57600d818154811061117c57fe5b6000918252602090912001546001600160a01b03848116911614156111a5576001915050610909565b600101611165565b50600092915050565b6000546001600160a01b031633146111cd57600080fd5b6001600160a01b0381166112125760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b0316331461127457600080fd5b6001600160a01b0381166112cf576040805162461bcd60e51b815260206004820152601c60248201527f45524332303a202053657474696e67207a65726f206164647265737300000000604482015290519081900360640190fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b600061133383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061162a565b90505b92915050565b60006001600160a01b0382166113835760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b6001600160a01b0382166000908152600e602090815260408083206003810154600754915460001982018652600f909452918420546005549294936113d093610cff92610cf991906112f1565b6007546001600160a01b0386166000908152600e602090815260408083205460001988018452600f90925290912054600554939450919261141592610cf991906112f1565b8161141c57fe5b6001600160a01b03959095166000908152600e60205260409020600401805491909506019093555090919050565b600082820183811015611333576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000826114b357506000611336565b828202828482816114c057fe5b04146113335760405162461bcd60e51b815260040180806020018281038252602181526020018061181a6021913960400191505060405180910390fd5b600061133383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116c1565b600061156260065461155c600754856114a490919063ffffffff16565b9061144a565b9050600061157b600454836114fd90919063ffffffff16565b90506115926004548361172690919063ffffffff16565b6006556005546115a2908261144a565b600555600854600019016000908152600f60205260409020546115c5908261144a565b600880546000908152600f602090815260409182902093909355905481519081529182018590523382820152517fddf8c05dcee82ec75482e095e6c06768c848d5a7df7147686033433d141328b69181900360600190a1505060088054600101905550565b600081848411156116b95760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561167e578181015183820152602001611666565b50505050905090810190601f1680156116ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836117105760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561167e578181015183820152602001611666565b50600083858161171c57fe5b0495945050505050565b600061133383836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250600081836117b25760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561167e578181015183820152602001611666565b508284816117bc57fe5b0694935050505056fe546f6b656e732063616e6e6f74206265207472616e736665727265642066726f6d207573657220666f72206c6f636b696e6745524332303a2073656e64696e6720746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774d415820414d4f554e5420524541434845442043414e4e4f54205354414b45204e4f204d4f5245a2646970667358221220edd951021ac77db37e7ac2fbbe16533e11e835793d426e9c9abd56c9e93d573764736f6c63430007050033

Deployed Bytecode

0x6080604052600436106101815760003560e01c8063997664d7116100d1578063ca3996711161008a578063e5c42fd111610064578063e5c42fd114610477578063ef037b90146104aa578063f2fde38b146104dd578063f3ec37c21461051057610181565b8063ca39967114610430578063ca84d59114610445578063cc16ab6e1461046f57610181565b8063997664d714610358578063a76267391461036d578063bf9befb1146103a0578063c3f344a8146103b5578063c5a7525a146103e8578063c5cc0f161461041b57610181565b80632c75bcda1161013e5780634e78e565116101185780634e78e565146102ed5780635c0aeb0e146103025780638da5cb5b1461032e57806398d624041461034357610181565b80632c75bcda1461027b5780634baf782e146102a55780634df9d6ba146102ba57610181565b80630f41e0d214610186578063146ca531146101af5780631c233879146101d657806323d308fa146101ed57806329272a631461022057806329652e8614610251575b600080fd5b34801561019257600080fd5b5061019b610543565b604080519115158252519081900360200190f35b3480156101bb57600080fd5b506101c461054c565b60408051918252519081900360200190f35b3480156101e257600080fd5b506101eb610552565b005b3480156101f957600080fd5b506101c46004803603602081101561021057600080fd5b50356001600160a01b0316610846565b34801561022c57600080fd5b5061023561090e565b604080516001600160a01b039092168252519081900360200190f35b34801561025d57600080fd5b506101c46004803603602081101561027457600080fd5b503561091d565b34801561028757600080fd5b506101eb6004803603602081101561029e57600080fd5b503561092f565b3480156102b157600080fd5b506101eb610b74565b3480156102c657600080fd5b506101c4600480360360208110156102dd57600080fd5b50356001600160a01b0316610c65565b3480156102f957600080fd5b50610235610d88565b34801561030e57600080fd5b506101eb6004803603602081101561032557600080fd5b50351515610d97565b34801561033a57600080fd5b50610235610dc1565b34801561034f57600080fd5b50610235610dd0565b34801561036457600080fd5b506101c4610ddf565b34801561037957600080fd5b506101c46004803603602081101561039057600080fd5b50356001600160a01b0316610de5565b3480156103ac57600080fd5b506101c4610e48565b3480156103c157600080fd5b506101c4600480360360208110156103d857600080fd5b50356001600160a01b0316610e4e565b3480156103f457600080fd5b506101c46004803603602081101561040b57600080fd5b50356001600160a01b0316610e60565b34801561042757600080fd5b506101c4610ef4565b34801561043c57600080fd5b506101c4610efa565b34801561045157600080fd5b506101eb6004803603602081101561046857600080fd5b5035610f00565b6101eb6110e4565b34801561048357600080fd5b506101eb6004803603602081101561049a57600080fd5b50356001600160a01b03166110ff565b3480156104b657600080fd5b5061019b600480360360208110156104cd57600080fd5b50356001600160a01b0316611161565b3480156104e957600080fd5b506101eb6004803603602081101561050057600080fd5b50356001600160a01b03166111b6565b34801561051c57600080fd5b506101eb6004803603602081101561053357600080fd5b50356001600160a01b031661125d565b600b5460ff1681565b60085481565b6000546001600160a01b0316331461056957600080fd5b600154600054604080516370a0823160e01b815230600482015290516001600160a01b039384169363a9059cbb93169184916370a0823191602480820192602092909190829003018186803b1580156105c157600080fd5b505afa1580156105d5573d6000803e3d6000fd5b505050506040513d60208110156105eb57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b15801561063c57600080fd5b505af1158015610650573d6000803e3d6000fd5b505050506040513d602081101561066657600080fd5b50516106b9576040805162461bcd60e51b815260206004820152601a60248201527f4572726f7220696e2072657472696576696e6720746f6b656e73000000000000604482015290519081900360640190fd5b600254600054604080516370a0823160e01b815230600482015290516001600160a01b039384169363a9059cbb93169184916370a0823191602480820192602092909190829003018186803b15801561071157600080fd5b505afa158015610725573d6000803e3d6000fd5b505050506040513d602081101561073b57600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b03909316600484015260248301919091525160448083019260209291908290030181600087803b15801561078c57600080fd5b505af11580156107a0573d6000803e3d6000fd5b505050506040513d60208110156107b657600080fd5b5051610809576040805162461bcd60e51b815260206004820152601e60248201527f4572726f7220696e2072657472696576696e672062627020746f6b656e730000604482015290519081900360640190fd5b600080546040516001600160a01b03909116914780156108fc02929091818181858888f19350505050158015610843573d6000803e3d6000fd5b50565b60006001600160a01b03821661088d5760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b600154604080516370a0823160e01b81526001600160a01b038581166004830152915191909216916370a08231916024808301926020929190829003018186803b1580156108da57600080fd5b505afa1580156108ee573d6000803e3d6000fd5b505050506040513d602081101561090457600080fd5b505190505b919050565b6002546001600160a01b031681565b600f6020526000908152604090205481565b600b5460ff1615610987576040805162461bcd60e51b815260206004820152601960248201527f41646d696e205265737472696374656420574954484452415700000000000000604482015290519081900360640190fd5b336000908152600e602052604090205481118015906109a65750600081115b6109f7576040805162461bcd60e51b815260206004820181905260248201527f496e76616c696420746f6b656e20616d6f756e7420746f207769746864726177604482015290519081900360640190fd5b600454610a0490826112f1565b6004556000610a123361133c565b336000908152600e602052604090206004810180548301905554909150610a3990836112f1565b336000818152600e60209081526040808320948555600180860187905560055460028701556008546003909601959095559354845163a9059cbb60e01b815260048101949094526024840187905293516001600160a01b039094169363a9059cbb93604480820194918390030190829087803b158015610ab857600080fd5b505af1158015610acc573d6000803e3d6000fd5b505050506040513d6020811015610ae257600080fd5b5051610b35576040805162461bcd60e51b815260206004820152601a60248201527f4572726f7220696e20756e2d7374616b696e6720746f6b656e73000000000000604482015290519081900360640190fd5b604080513381526020810184905281517f4c48d8823de8aa74e6ea4bed3a0c422e95a3d1e10f8f3e47dc7e2fe779be9514929181900390910190a15050565b336000908152600e602052604090206002015460055410610c63576000610b9a3361133c565b336000908152600e6020526040902060040154909150610bbb90829061144a565b336000818152600e602052604080822060040182905551929350909183156108fc0291849190818181858888f19350505050158015610bfe573d6000803e3d6000fd5b50604080513381526020810183905281517f8a0128b5f12decc7d739e546c0521c3388920368915393f80120bc5b408c7c9e929181900390910190a1336000908152600e60205260409020600181019190915560085460038201556005546002909101555b565b60006001600160a01b038216610cac5760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b6001600160a01b0382166000908152600e602090815260408083206003810154600754915460001982018652600f90945291842054600554929493610d0593610cff92610cf991906112f1565b906114a4565b906114fd565b6007546001600160a01b0386166000908152600e602090815260408083205460001988018452600f909252909120546005549394509192610d4a92610cf991906112f1565b81610d5157fe5b6001600160a01b0386166000908152600e60205260409020600401549190069190910190610d8090829061144a565b949350505050565b6001546001600160a01b031681565b6000546001600160a01b03163314610dae57600080fd5b600b805460ff1916911515919091179055565b6000546001600160a01b031681565b6003546001600160a01b031681565b60055481565b60006001600160a01b038216610e2c5760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b506001600160a01b03166000908152600e602052604090205490565b60045481565b600c6020526000908152604090205481565b60006001600160a01b038216610ea75760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b600254604080516370a0823160e01b81526001600160a01b038581166004830152915191909216916370a08231916024808301926020929190829003018186803b1580156108da57600080fd5b600a5481565b60095481565b60095460045410610f425760405162461bcd60e51b815260040180806020018281038252602781526020018061183b6027913960400191505060405180910390fd5b600154600354604080516323b872dd60e01b81523360048201526001600160a01b03928316602482015260448101859052905191909216916323b872dd9160648083019260209291908290030181600087803b158015610fa157600080fd5b505af1158015610fb5573d6000803e3d6000fd5b505050506040513d6020811015610fcb57600080fd5b50516110085760405162461bcd60e51b81526004018080602001828103825260328152602001806117c66032913960400191505060405180910390fd5b60006110133361133c565b336000908152600e60205260409020600481018054830190555490915061103b90839061144a565b336000818152600e6020526040812092835560018301849055600554600284015560085460039093019290925561107190611161565b90508061108b57336000908152600c602052604090204290555b600454611098908461144a565b6004556110a4336110ff565b604080513381526020810185905281517f4031c63bb53dc5dfada7ef8d75bef8c44d0283658c1585fc74107ed5b75e97c8929181900390910190a1505050565b600a5434906110f3908261144a565b600a556108438161153f565b600061110a82611161565b90508061115d57600d80546001810182556000919091527fd7b6990105719101dabeb77144f2a3385c8033acd3af97e9423a695e81ad1eb50180546001600160a01b0319166001600160a01b0384161790555b5050565b6000805b600d548110156111ad57600d818154811061117c57fe5b6000918252602090912001546001600160a01b03848116911614156111a5576001915050610909565b600101611165565b50600092915050565b6000546001600160a01b031633146111cd57600080fd5b6001600160a01b0381166112125760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b600080546001600160a01b0319166001600160a01b0383169081178255604051909133917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6000546001600160a01b0316331461127457600080fd5b6001600160a01b0381166112cf576040805162461bcd60e51b815260206004820152601c60248201527f45524332303a202053657474696e67207a65726f206164647265737300000000604482015290519081900360640190fd5b600380546001600160a01b0319166001600160a01b0392909216919091179055565b600061133383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061162a565b90505b92915050565b60006001600160a01b0382166113835760405162461bcd60e51b81526004018080602001828103825260228152602001806117f86022913960400191505060405180910390fd5b6001600160a01b0382166000908152600e602090815260408083206003810154600754915460001982018652600f909452918420546005549294936113d093610cff92610cf991906112f1565b6007546001600160a01b0386166000908152600e602090815260408083205460001988018452600f90925290912054600554939450919261141592610cf991906112f1565b8161141c57fe5b6001600160a01b03959095166000908152600e60205260409020600401805491909506019093555090919050565b600082820183811015611333576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000826114b357506000611336565b828202828482816114c057fe5b04146113335760405162461bcd60e51b815260040180806020018281038252602181526020018061181a6021913960400191505060405180910390fd5b600061133383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116c1565b600061156260065461155c600754856114a490919063ffffffff16565b9061144a565b9050600061157b600454836114fd90919063ffffffff16565b90506115926004548361172690919063ffffffff16565b6006556005546115a2908261144a565b600555600854600019016000908152600f60205260409020546115c5908261144a565b600880546000908152600f602090815260409182902093909355905481519081529182018590523382820152517fddf8c05dcee82ec75482e095e6c06768c848d5a7df7147686033433d141328b69181900360600190a1505060088054600101905550565b600081848411156116b95760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b8381101561167e578181015183820152602001611666565b50505050905090810190601f1680156116ab5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b600081836117105760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561167e578181015183820152602001611666565b50600083858161171c57fe5b0495945050505050565b600061133383836040518060400160405280601881526020017f536166654d6174683a206d6f64756c6f206279207a65726f0000000000000000815250600081836117b25760405162461bcd60e51b815260206004820181815283516024840152835190928392604490910191908501908083836000831561167e578181015183820152602001611666565b508284816117bc57fe5b0694935050505056fe546f6b656e732063616e6e6f74206265207472616e736665727265642066726f6d207573657220666f72206c6f636b696e6745524332303a2073656e64696e6720746f20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f774d415820414d4f554e5420524541434845442043414e4e4f54205354414b45204e4f204d4f5245a2646970667358221220edd951021ac77db37e7ac2fbbe16533e11e835793d426e9c9abd56c9e93d573764736f6c63430007050033

Deployed Bytecode Sourcemap

7215:10620:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7986:26;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;7715:21;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;17494:333;;;;;;;;;;;;;:::i;:::-;;17268:214;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17268:214:0;-1:-1:-1;;;;;17268:214:0;;:::i;7382:65::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;7382:65:0;;;;;;;;;;;;;;8537:40;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8537:40:0;;:::i;14884:927::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14884:927:0;;:::i;12630:644::-;;;;;;;;;;;;;:::i;14055:533::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14055:533:0;-1:-1:-1;;;;;14055:533:0;;:::i;7310:65::-;;;;;;;;;;;;;:::i;8924:91::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8924:91:0;;;;:::i;5299:28::-;;;;;;;;;;;;;:::i;7460:73::-;;;;;;;;;;;;;:::i;7583:33::-;;;;;;;;;;;;;:::i;16551:223::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16551:223:0;-1:-1:-1;;;;;16551:223:0;;:::i;7546:30::-;;;;;;;;;;;;;:::i;8062:40::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8062:40:0;-1:-1:-1;;;;;8062:40:0;;:::i;17048:208::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17048:208:0;-1:-1:-1;;;;;17048:208:0;;:::i;7857:24::-;;;;;;;;;;;;;:::i;7749:49::-;;;;;;;;;;;;;:::i;9973:1135::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9973:1135:0;;:::i;11418:164::-;;;:::i;9301:194::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9301:194:0;-1:-1:-1;;;;;9301:194:0;;:::i;9033:258::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9033:258:0;-1:-1:-1;;;;;9033:258:0;;:::i;5560:247::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5560:247:0;-1:-1:-1;;;;;5560:247:0;;:::i;9505:178::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9505:178:0;-1:-1:-1;;;;;9505:178:0;;:::i;7986:26::-;;;;;;:::o;7715:21::-;;;;:::o;17494:333::-;5526:5;;-1:-1:-1;;;;;5526:5:0;5512:10;:19;5504:28;;;;;;17559:5:::1;::::0;::::1;17575::::0;17582:38:::1;::::0;;-1:-1:-1;;;17582:38:0;;17614:4:::1;17582:38;::::0;::::1;::::0;;;-1:-1:-1;;;;;17559:5:0;;::::1;::::0;17552:22:::1;::::0;17575:5:::1;::::0;17559;;17582:23:::1;::::0;:38;;;;;::::1;::::0;;;;;;;;;17559:5;17582:38;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;17582:38:0;17552:69:::1;::::0;;-1:-1:-1;;;;;;17552:69:0::1;::::0;;;;;;-1:-1:-1;;;;;17552:69:0;;::::1;;::::0;::::1;::::0;;;;;;;;;;;;;;17582:38:::1;::::0;17552:69;;;;;;;-1:-1:-1;17552:69:0;;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;17552:69:0;17544:108:::1;;;::::0;;-1:-1:-1;;;17544:108:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;17678:3;::::0;::::1;17692:5:::0;17699:36:::1;::::0;;-1:-1:-1;;;17699:36:0;;17729:4:::1;17699:36;::::0;::::1;::::0;;;-1:-1:-1;;;;;17678:3:0;;::::1;::::0;17671:20:::1;::::0;17692:5:::1;::::0;17678:3;;17699:21:::1;::::0;:36;;;;;::::1;::::0;;;;;;;;;17678:3;17699:36;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;17699:36:0;17671:65:::1;::::0;;-1:-1:-1;;;;;;17671:65:0::1;::::0;;;;;;-1:-1:-1;;;;;17671:65:0;;::::1;;::::0;::::1;::::0;;;;;;;;;;;;;;17699:36:::1;::::0;17671:65;;;;;;;-1:-1:-1;17671:65:0;;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;17671:65:0;17663:108:::1;;;::::0;;-1:-1:-1;;;17663:108:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;17782:5;::::0;;:37:::1;::::0;-1:-1:-1;;;;;17782:5:0;;::::1;::::0;17797:21:::1;17782:37:::0;::::1;;;::::0;17797:21;;17782:37;:5;:37;17797:21;17782:5;:37;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;17494:333::o:0;17268:214::-;17330:20;-1:-1:-1;;;;;17370:18:0;;17362:65;;;;-1:-1:-1;;;17362:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17452:5;;17445:29;;;-1:-1:-1;;;17445:29:0;;-1:-1:-1;;;;;17445:29:0;;;;;;;;;17452:5;;;;;17445:23;;:29;;;;;;;;;;;;;;17452:5;17445:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17445:29:0;;-1:-1:-1;17268:214:0;;;;:::o;7382:65::-;;;-1:-1:-1;;;;;7382:65:0;;:::o;8537:40::-;;;;;;;;;;;;;:::o;14884:927::-;14946:7;;;;:16;14938:54;;;;;-1:-1:-1;;;14938:54:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15019:10;15011:19;;;;:7;:19;;;;;:32;:42;-1:-1:-1;15011:42:0;;;:56;;;15066:1;15057:6;:10;15011:56;15003:101;;;;;-1:-1:-1;;;15003:101:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15139:11;;:23;;15155:6;15139:15;:23::i;:::-;15125:11;:37;15288:13;15304:25;15318:10;15304:13;:25::i;:::-;15348:10;15340:19;;;;:7;:19;;;;;:29;;;:38;;;;;;15442:32;15288:41;;-1:-1:-1;15442:44:0;;15479:6;15442:36;:44::i;:::-;15415:10;15407:19;;;;:7;:19;;;;;;;;:79;;;15497:33;;;;:41;;;15588:14;;15549:37;;;:53;15642:5;;15613:25;;;;:34;;;;15693:5;;15686:42;;-1:-1:-1;;;15686:42:0;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;15693:5:0;;;;15686:22;;:42;;;;;;;;;;;;;15693:5;15686:42;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;15686:42:0;15678:81;;;;;-1:-1:-1;;;15678:81:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15775:28;;;15784:10;15775:28;;;;;;;;;;;;;;;;;;;;;14884:927;;:::o;12630:644::-;12710:10;12702:19;;;;:7;:19;;;;;:37;;;12684:14;;:55;12681:586;;12755:13;12771:25;12785:10;12771:13;:25::i;:::-;12847:10;12839:19;;;;:7;:19;;;;;:29;;;12755:41;;-1:-1:-1;12829:40:0;;12755:41;;12829:9;:40::i;:::-;12892:10;12916:1;12884:19;;;:7;:19;;;;;;:29;;:33;;;12942:26;12821:48;;-1:-1:-1;12892:10:0;;12942:26;;;;;12821:48;;12942:26;;12916:1;12942:26;12821:48;12892:10;12942:26;;;;;;;;;;;;;;;;;;;;-1:-1:-1;12998:32:0;;;13012:10;12998:32;;;;;;;;;;;;;;;;;;;;;13063:10;13055:19;;;;:7;:19;;;;;:33;;;:41;;;;13151:5;;13123:25;;;:33;13231:14;;13191:37;;;;:54;12681:586;12630:644::o;14055:533::-;14117:22;-1:-1:-1;;;;;14160:20:0;;14152:67;;;;-1:-1:-1;;;14152:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14251:15:0;;14231:17;14251:15;;;:7;:15;;;;;;;;:21;;;;14400:7;;14365:28;;-1:-1:-1;;14341:16:0;;14333:25;;:7;:25;;;;;;;14314:14;;14251:21;;14231:17;14312:96;;14313:81;;14314:45;;:14;:18;:45::i;:::-;14313:51;;:81::i;:::-;14312:87;;:96::i;:::-;14515:7;;-1:-1:-1;;;;;14482:15:0;;;;;;:7;:15;;;;;;;;:28;-1:-1:-1;;14458:16:0;;14450:25;;:7;:25;;;;;;;14431:14;;14294:114;;-1:-1:-1;14515:7:0;;14430:81;;14431:45;;:14;:18;:45::i;14430:81::-;14429:93;;;;;-1:-1:-1;;;;;14553:15:0;;;;;;:7;:15;;;;;:25;;;14429:93;;;14419:103;;;;;14542:37;;14419:103;;14542:10;:37::i;:::-;14534:46;14055:533;-1:-1:-1;;;;14055:533:0:o;7310:65::-;;;-1:-1:-1;;;;;7310:65:0;;:::o;8924:91::-;5526:5;;-1:-1:-1;;;;;5526:5:0;5512:10;:19;5504:28;;;;;;8989:7:::1;:18:::0;;-1:-1:-1;;8989:18:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8924:91::o;5299:28::-;;;-1:-1:-1;;;;;5299:28:0;;:::o;7460:73::-;;;-1:-1:-1;;;;;7460:73:0;;:::o;7583:33::-;;;;:::o;16551:223::-;16612:19;-1:-1:-1;;;;;16651:20:0;;16643:67;;;;-1:-1:-1;;;16643:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16738:15:0;;;;;:7;:15;;;;;:28;;16551:223::o;7546:30::-;;;;:::o;8062:40::-;;;;;;;;;;;;;:::o;17048:208::-;17108:18;-1:-1:-1;;;;;17146:18:0;;17138:65;;;;-1:-1:-1;;;17138:65:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17228:3;;17221:27;;;-1:-1:-1;;;17221:27:0;;-1:-1:-1;;;;;17221:27:0;;;;;;;;;17228:3;;;;;17221:21;;:27;;;;;;;;;;;;;;17228:3;17221:27;;;;;;;;;;7857:24;;;;:::o;7749:49::-;;;;:::o;9973:1135::-;10046:10;;10032:11;;:24;10024:76;;;;-1:-1:-1;;;10024:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10126:5;;10166:13;;10119:70;;;-1:-1:-1;;;10119:70:0;;10146:10;10119:70;;;;-1:-1:-1;;;;;10166:13:0;;;10119:70;;;;;;;;;;;;10126:5;;;;;10119:26;;:70;;;;;;;;;;;;;;10126:5;;10119:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10119:70:0;10111:133;;;;-1:-1:-1;;;10111:133:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10381:13;10397:25;10411:10;10397:13;:25::i;:::-;10445:10;10437:19;;;;:7;:19;;;;;:29;;;:38;;;;;;10550:32;10381:41;;-1:-1:-1;10539:44:0;;:6;;:10;:44::i;:::-;10512:10;10504:19;;;;:7;:19;;;;;:79;;;10598:33;;;:41;;;10693:14;;10654:37;;;:53;10751:5;;10722:25;;;;:34;;;;10809:25;;:13;:25::i;:::-;10785:49;;10854:14;10850:59;;10879:10;10870:20;;;;:8;:20;;;;;10894:15;10870:39;;10850:59;10952:11;;:23;;10968:6;10952:15;:23::i;:::-;10938:11;:37;11004:26;11019:10;11004:14;:26::i;:::-;11064;;;11071:10;11064:26;;;;;;;;;;;;;;;;;;;;;9973:1135;;;:::o;11418:164::-;11514:7;;11484:9;;11514:20;;11484:9;11514:11;:20::i;:::-;11504:7;:30;11555:19;11566:7;11555:10;:19::i;9301:194::-;9377:19;9400:27;9414:12;9400:13;:27::i;:::-;9376:51;;9441:14;9437:51;;9457:12;:31;;;;;;;-1:-1:-1;9457:31:0;;;;;;;;-1:-1:-1;;;;;;9457:31:0;-1:-1:-1;;;;;9457:31:0;;;;;9437:51;9301:194;;:::o;9033:258::-;9118:4;;9138:123;9162:12;:19;9158:23;;9138:123;;;9220:12;9233:1;9220:15;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9208:27:0;;;9220:15;;9208:27;9204:46;;;9245:4;9237:13;;;;;9204:46;9188:1;9183:6;9138:123;;;-1:-1:-1;9278:5:0;;9033:258;-1:-1:-1;;9033:258:0:o;5560:247::-;5526:5;;-1:-1:-1;;;;;5526:5:0;5512:10;:19;5504:28;;;;;;-1:-1:-1;;;;;5650:23:0;::::1;5642:70;;;;-1:-1:-1::0;;;5642:70:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5723:5;:17:::0;;-1:-1:-1;;;;;;5723:17:0::1;-1:-1:-1::0;;;;;5723:17:0;::::1;::::0;;::::1;::::0;;5756:43:::1;::::0;5723:17;;5777:10:::1;::::0;5756:43:::1;::::0;5723:5;5756:43:::1;5560:247:::0;:::o;9505:178::-;5526:5;;-1:-1:-1;;;;;5526:5:0;5512:10;:19;5504:28;;;;;;-1:-1:-1;;;;;9585:22:0;::::1;9577:63;;;::::0;;-1:-1:-1;;;9577:63:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;9651:13;:24:::0;;-1:-1:-1;;;;;;9651:24:0::1;-1:-1:-1::0;;;;;9651:24:0;;;::::1;::::0;;;::::1;::::0;;9505:178::o;982:136::-;1040:7;1067:43;1071:1;1074;1067:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1060:50;;982:136;;;;;:::o;13547:496::-;13603:7;-1:-1:-1;;;;;13631:20:0;;13623:67;;;;-1:-1:-1;;;13623:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13731:15:0;;13711:17;13731:15;;;:7;:15;;;;;;;;:21;;;;13869:7;;13834:28;;-1:-1:-1;;13810:16:0;;13802:25;;:7;:25;;;;;;;13783:14;;13731:21;;13711:17;13781:96;;13782:81;;13783:45;;:14;:18;:45::i;13781:96::-;14003:7;;-1:-1:-1;;;;;13970:15:0;;;;;;:7;:15;;;;;;;;:28;-1:-1:-1;;13946:16:0;;13938:25;;:7;:25;;;;;;;13919:14;;13763:114;;-1:-1:-1;14003:7:0;;13918:81;;13919:45;;:14;:18;:45::i;13918:81::-;13917:93;;;;;-1:-1:-1;;;;;13888:15:0;;;;;;;;:7;:15;;;;;:25;;:122;;13917:93;;;;13888:122;;;;-1:-1:-1;14029:6:0;;13547:496;-1:-1:-1;13547:496:0:o;518:181::-;576:7;608:5;;;632:6;;;;624:46;;;;;-1:-1:-1;;;624:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;1872:471;1930:7;2175:6;2171:47;;-1:-1:-1;2205:1:0;2198:8;;2171:47;2242:5;;;2246:1;2242;:5;:1;2266:5;;;;;:10;2258:56;;;;-1:-1:-1;;;2258:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2819:132;2877:7;2904:39;2908:1;2911;2904:39;;;;;;;;;;;;;;;;;:3;:39::i;11801:587::-;11979:17;11999:42;12025:15;;12000:19;12011:7;;12000:6;:10;;:19;;;;:::i;:::-;11999:25;;:42::i;:::-;11979:62;;12053:24;12080:26;12094:11;;12080:9;:13;;:26;;;;:::i;:::-;12053:53;;12135:26;12149:11;;12135:9;:13;;:26;;;;:::i;:::-;12117:15;:44;12199:14;;:36;;12218:16;12199:18;:36::i;:::-;12182:14;:53;12271:5;;-1:-1:-1;;12271:9:0;12263:18;;;;:7;:18;;;;;;:40;;12286:16;12263:22;:40::i;:::-;12254:5;;;12246:14;;;;:7;:14;;;;;;;;;:57;;;;12336:5;;12329:33;;;;;;;;;;;12351:10;12329:33;;;;;;;;;;;;;;-1:-1:-1;;12373:5:0;:7;;;;;;-1:-1:-1;11801:587:0:o;1421:192::-;1507:7;1543:12;1535:6;;;;1527:29;;;;-1:-1:-1;;;1527:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1579:5:0;;;1421:192::o;3447:278::-;3533:7;3568:12;3561:5;3553:28;;;;-1:-1:-1;;;3553:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3592:9;3608:1;3604;:5;;;;;;;3447:278;-1:-1:-1;;;;;3447:278:0:o;4190:130::-;4248:7;4275:37;4279:1;4282;4275:37;;;;;;;;;;;;;;;;;4891:7;4927:12;4919:6;4911:29;;;;-1:-1:-1;;;4911:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4962:1;4958;:5;;;;;;;4805:166;-1:-1:-1;;;;4805:166:0:o

Swarm Source

ipfs://edd951021ac77db37e7ac2fbbe16533e11e835793d426e9c9abd56c9e93d5737

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ Download: CSV Export  ]
[ Download: CSV Export  ]

A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.