ETH Price: $3,387.19 (-1.43%)
Gas: 3 Gwei

Contract

0x45D857b955396fC407CACb64d44028D49A8FB22c
 
Transaction Hash
Method
Block
From
To
Value
Deposit201950172024-06-29 4:40:238 hrs ago1719636023IN
0x45D857b9...49A8FB22c
0 ETH0.000209581.31028103
Deposit201934562024-06-28 23:25:4713 hrs ago1719617147IN
0x45D857b9...49A8FB22c
0 ETH0.000262421.69137066
Withdraw201919812024-06-28 18:29:3518 hrs ago1719599375IN
0x45D857b9...49A8FB22c
0 ETH0.000393634.64590185
Withdraw201892472024-06-28 9:19:5927 hrs ago1719566399IN
0x45D857b9...49A8FB22c
0 ETH0.000935213.80063284
Withdraw201834962024-06-27 14:02:5946 hrs ago1719496979IN
0x45D857b9...49A8FB22c
0 ETH0.0010470912.35845579
Withdraw201827132024-06-27 11:25:232 days ago1719487523IN
0x45D857b9...49A8FB22c
0 ETH0.000499715.29618954
Withdraw201620402024-06-24 14:08:354 days ago1719238115IN
0x45D857b9...49A8FB22c
0 ETH0.0012543211.254252
Withdraw201603142024-06-24 8:20:595 days ago1719217259IN
0x45D857b9...49A8FB22c
0 ETH0.00066917.89722952
Withdraw201568382024-06-23 20:40:595 days ago1719175259IN
0x45D857b9...49A8FB22c
0 ETH0.000269343.17896949
Deposit201544352024-06-23 12:37:476 days ago1719146267IN
0x45D857b9...49A8FB22c
0 ETH0.000325613.14529413
Withdraw201509872024-06-23 1:02:116 days ago1719104531IN
0x45D857b9...49A8FB22c
0 ETH0.00017782.09861236
Withdraw201496392024-06-22 20:30:476 days ago1719088247IN
0x45D857b9...49A8FB22c
0 ETH0.000169381.9991446
Withdraw201489462024-06-22 18:11:116 days ago1719079871IN
0x45D857b9...49A8FB22c
0 ETH0.000305362.73983845
Deposit201400752024-06-21 12:23:478 days ago1718972627IN
0x45D857b9...49A8FB22c
0 ETH0.0003953.81610664
Withdraw201379002024-06-21 5:07:238 days ago1718946443IN
0x45D857b9...49A8FB22c
0 ETH0.000413674.88246051
Withdraw201370322024-06-21 2:11:598 days ago1718935919IN
0x45D857b9...49A8FB22c
0 ETH0.00026792.83938656
Deposit201335692024-06-20 14:34:598 days ago1718894099IN
0x45D857b9...49A8FB22c
0 ETH0.0026624717.15842574
Withdraw201327272024-06-20 11:45:599 days ago1718883959IN
0x45D857b9...49A8FB22c
0 ETH0.0012460314.70645197
Withdraw201284722024-06-19 21:28:359 days ago1718832515IN
0x45D857b9...49A8FB22c
0 ETH0.0012362614.59121014
Withdraw Dividen...201267252024-06-19 15:37:359 days ago1718811455IN
0x45D857b9...49A8FB22c
0 ETH0.000558349.33235722
Withdraw201213362024-06-18 21:31:1110 days ago1718746271IN
0x45D857b9...49A8FB22c
0 ETH0.0011476512.16339184
Deposit201210372024-06-18 20:30:2310 days ago1718742623IN
0x45D857b9...49A8FB22c
0 ETH0.000538195.19936919
Withdraw201137122024-06-17 19:52:5911 days ago1718653979IN
0x45D857b9...49A8FB22c
0 ETH0.0009164510.81652729
Withdraw201108842024-06-17 10:23:1112 days ago1718619791IN
0x45D857b9...49A8FB22c
0 ETH0.00048165.10362374
Withdraw201078902024-06-17 0:20:1112 days ago1718583611IN
0x45D857b9...49A8FB22c
0 ETH0.000310833.66866625
View all transactions

Latest 25 internal transactions (View All)

Advanced mode:
Parent Transaction Hash Block From To Value
201267252024-06-19 15:37:359 days ago1718811455
0x45D857b9...49A8FB22c
0.0080205 ETH
201041602024-06-16 11:49:2313 days ago1718538563
0x45D857b9...49A8FB22c
0.00828773 ETH
200981612024-06-15 15:43:1113 days ago1718466191
0x45D857b9...49A8FB22c
0.00035265 ETH
200564072024-06-09 19:38:3519 days ago1717961915
0x45D857b9...49A8FB22c
0.01199514 ETH
200479452024-06-08 15:16:2320 days ago1717859783
0x45D857b9...49A8FB22c
0.03935148 ETH
199476582024-05-25 15:02:3534 days ago1716649355
0x45D857b9...49A8FB22c
0.00499504 ETH
199126422024-05-20 17:32:2339 days ago1716226343
0x45D857b9...49A8FB22c
0.0022041 ETH
199093062024-05-20 6:19:3540 days ago1716185975
0x45D857b9...49A8FB22c
0.00019747 ETH
199034432024-05-19 10:39:2341 days ago1716115163
0x45D857b9...49A8FB22c
0.01403388 ETH
198921422024-05-17 20:42:4742 days ago1715978567
0x45D857b9...49A8FB22c
0.01697998 ETH
198832312024-05-16 14:47:5943 days ago1715870879
0x45D857b9...49A8FB22c
0.00059975 ETH
198685602024-05-14 13:32:4745 days ago1715693567
0x45D857b9...49A8FB22c
0.03028353 ETH
198164422024-05-07 6:36:5953 days ago1715063819
0x45D857b9...49A8FB22c
0.01017194 ETH
198110912024-05-06 12:38:1154 days ago1714999091
0x45D857b9...49A8FB22c
0.02668079 ETH
197993652024-05-04 21:16:2355 days ago1714857383
0x45D857b9...49A8FB22c
0.00075449 ETH
197889812024-05-03 10:25:5957 days ago1714731959
0x45D857b9...49A8FB22c
0.00179927 ETH
197843692024-05-02 18:57:1157 days ago1714676231
0x45D857b9...49A8FB22c
0.02390212 ETH
197826682024-05-02 13:14:3557 days ago1714655675
0x45D857b9...49A8FB22c
0.0138226 ETH
197694072024-04-30 16:46:1159 days ago1714495571
0x45D857b9...49A8FB22c
0.01492735 ETH
197226012024-04-24 3:36:4766 days ago1713929807
0x45D857b9...49A8FB22c
0.00426967 ETH
197206562024-04-23 21:04:2366 days ago1713906263
0x45D857b9...49A8FB22c
0.01048706 ETH
197133972024-04-22 20:43:2367 days ago1713818603
0x45D857b9...49A8FB22c
0.01743417 ETH
197004042024-04-21 1:08:2369 days ago1713661703
0x45D857b9...49A8FB22c
0.00909558 ETH
196823242024-04-18 12:24:3572 days ago1713443075
0x45D857b9...49A8FB22c
0.00435318 ETH
196729372024-04-17 4:54:3573 days ago1713329675
0x45D857b9...49A8FB22c
0.0331645 ETH
View All Internal Transactions
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
BazedRevenueStaking

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 999 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-08-30
*/

//SPDX-License-Identifier: MIT

pragma solidity 0.8.20;

interface IDexRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB);
    function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts);
    function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts);
    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;
}

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

        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, 'SafeMath: subtraction overflow');
    }

    function sub(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }

    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;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, 'SafeMath: division by 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;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, 'SafeMath: modulo by zero');
    }

    function mod(
        uint256 a,
        uint256 b,
        string memory errorMessage
    ) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }

    function min(uint256 x, uint256 y) internal pure returns (uint256 z) {
        z = x < y ? x : y;
    }

    function sqrt(uint256 y) internal pure returns (uint256 z) {
        if (y > 3) {
            z = y;
            uint256 x = y / 2 + 1;
            while (x < z) {
                z = x;
                x = (y / x + x) / 2;
            }
        } else if (y != 0) {
            z = 1;
        }
    }
}

library SafeMathInt {
    int256 private constant MIN_INT256 = int256(1) << 255;
    int256 private constant MAX_INT256 = ~(int256(1) << 255);

    /**
     * @dev Multiplies two int256 variables and fails on overflow.
     */
    function mul(int256 a, int256 b) internal pure returns (int256) {
        int256 c = a * b;

        // Detect overflow when multiplying MIN_INT256 with -1
        require(c != MIN_INT256 || (a & MIN_INT256) != (b & MIN_INT256));
        require((b == 0) || (c / b == a));
        return c;
    }

    /**
     * @dev Division of two int256 variables and fails on overflow.
     */
    function div(int256 a, int256 b) internal pure returns (int256) {
        // Prevent overflow when dividing MIN_INT256 by -1
        require(b != -1 || a != MIN_INT256);

        // Solidity already throws when dividing by 0.
        return a / b;
    }

    /**
     * @dev Subtracts two int256 variables and fails on overflow.
     */
    function sub(int256 a, int256 b) internal pure returns (int256) {
        int256 c = a - b;
        require((b >= 0 && c <= a) || (b < 0 && c > a));
        return c;
    }

    /**
     * @dev Adds two int256 variables and fails on overflow.
     */
    function add(int256 a, int256 b) internal pure returns (int256) {
        int256 c = a + b;
        require((b >= 0 && c >= a) || (b < 0 && c < a));
        return c;
    }

    /**
     * @dev Converts to absolute value, and fails on overflow.
     */
    function abs(int256 a) internal pure returns (int256) {
        require(a != MIN_INT256);
        return a < 0 ? -a : a;
    }


    function toUint256Safe(int256 a) internal pure returns (uint256) {
        require(a >= 0);
        return uint256(a);
    }
}

library SafeMathUint {
  function toInt256Safe(uint256 a) internal pure returns (int256) {
    int256 b = int256(a);
    require(b >= 0);
    return b;
  }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface DividendPayingContractOptionalInterface {
  function withdrawableDividendOf(address _owner) external view returns(uint256);
  function withdrawnDividendOf(address _owner) external view returns(uint256);
  function accumulativeDividendOf(address _owner) external view returns(uint256);
}

interface DividendPayingContractInterface {
  function dividendOf(address _owner) external view returns(uint256);
  function distributeDividends() external payable;
  function withdrawDividend() external;
  event DividendsDistributed(
    address indexed from,
    uint256 weiAmount
  );
  event DividendWithdrawn(
    address indexed to,
    uint256 weiAmount
  );
}

contract DividendPayingContract is DividendPayingContractInterface, DividendPayingContractOptionalInterface {
  using SafeMath for uint256;
  using SafeMathUint for uint256;
  using SafeMathInt for int256;

  uint256 constant internal magnitude = 2**128;

  uint256 internal magnifiedDividendPerShare;
                                                                         
  mapping(address => int256) internal magnifiedDividendCorrections;
  mapping(address => uint256) internal withdrawnDividends;
  
  mapping (address => uint256) public holderBalance;
  uint256 public totalBalance;

  uint256 public totalDividendsDistributed;

  receive() external payable {
    distributeDividends();
  }

  function distributeDividends() public override payable {
    if(totalBalance > 0 && msg.value > 0){
        magnifiedDividendPerShare = magnifiedDividendPerShare.add(
            (msg.value).mul(magnitude) / totalBalance
        );
        emit DividendsDistributed(msg.sender, msg.value);

        totalDividendsDistributed = totalDividendsDistributed.add(msg.value);
    }
  }

  function withdrawDividend() external virtual override {
    _withdrawDividendOfUser(payable(msg.sender));
  }

  function _withdrawDividendOfUser(address payable user) internal returns (uint256) {
    uint256 _withdrawableDividend = withdrawableDividendOf(user);
    if (_withdrawableDividend > 0) {
      withdrawnDividends[user] = withdrawnDividends[user].add(_withdrawableDividend);

      emit DividendWithdrawn(user, _withdrawableDividend);
      (bool success,) = user.call{value: _withdrawableDividend}("");

      if(!success) {
        withdrawnDividends[user] = withdrawnDividends[user].sub(_withdrawableDividend);
        return 0;
      }

      return _withdrawableDividend;
    }

    return 0;
  }

  function dividendOf(address _owner) external view override returns(uint256) {
    return withdrawableDividendOf(_owner);
  }

  function withdrawableDividendOf(address _owner) public view override returns(uint256) {
    return accumulativeDividendOf(_owner).sub(withdrawnDividends[_owner]);
  }

  function withdrawnDividendOf(address _owner) external view override returns(uint256) {
    return withdrawnDividends[_owner];
  }

  function accumulativeDividendOf(address _owner) public view override returns(uint256) {
    return magnifiedDividendPerShare.mul(holderBalance[_owner]).toInt256Safe()
      .add(magnifiedDividendCorrections[_owner]).toUint256Safe() / magnitude;
  }

  function _increase(address account, uint256 value) internal {
    magnifiedDividendCorrections[account] = magnifiedDividendCorrections[account]
      .sub( (magnifiedDividendPerShare.mul(value)).toInt256Safe() );
  }

  function _reduce(address account, uint256 value) internal {
    magnifiedDividendCorrections[account] = magnifiedDividendCorrections[account]
      .add( (magnifiedDividendPerShare.mul(value)).toInt256Safe() );
  }

  function _setBalance(address account, uint256 newBalance) internal {
    uint256 currentBalance = holderBalance[account];
    holderBalance[account] = newBalance;
    if(newBalance > currentBalance) {
      uint256 increaseAmount = newBalance.sub(currentBalance);
      _increase(account, increaseAmount);
      totalBalance += increaseAmount;
    } else if(newBalance < currentBalance) {
      uint256 reduceAmount = currentBalance.sub(newBalance);
      _reduce(account, reduceAmount);
      totalBalance -= reduceAmount;
    }
  }
}


contract DividendTracker is DividendPayingContract {

    event Claim(address indexed account, uint256 amount, bool indexed automatic);

    constructor() {}

    function getAccount(address _account)
        public view returns (
            address account,
            uint256 withdrawableDividends,
            uint256 totalDividends,
            uint256 balance) {
        account = _account;

        withdrawableDividends = withdrawableDividendOf(account);
        totalDividends = accumulativeDividendOf(account);

        balance = holderBalance[account];
    }
    function setBalance(address payable account, uint256 newBalance) internal {

        _setBalance(account, newBalance);

    	processAccount(account, true);
    }
    
    function processAccount(address payable account, bool automatic) internal returns (bool) {
        uint256 amount = _withdrawDividendOfUser(account);

    	if(amount > 0) {
            emit Claim(account, amount, automatic);
    		return true;
    	}

    	return false;
    }

    function getTotalDividendsDistributed() external view returns (uint256) {
        return totalDividendsDistributed;
    }

	function dividendTokenBalanceOf(address account) public view returns (uint256) {
		return holderBalance[account];
	}

    function getNumberOfDividends() external view returns(uint256) {
        return totalBalance;
    }
}

abstract contract ReentrancyGuard {
    uint256 private constant _NOT_ENTERED = 1;
    uint256 private constant _ENTERED = 2;

    uint256 private _status;

    constructor() {
        _status = _NOT_ENTERED;
    }

    modifier nonReentrant() {
        require(_status != _ENTERED, "ReentrancyGuard: reentrant call");
        _status = _ENTERED;
        _;
        _status = _NOT_ENTERED;
    }
}

contract BazedRevenueStaking is ReentrancyGuard, DividendTracker {

    IERC20 public immutable bazedToken;
    IDexRouter public immutable dexRouter;

    mapping (address => uint256) public holderUnlockTime;
    uint256 public lockDuration;

    event Deposit(address indexed user, uint256 amount);
    event Withdraw(address indexed user, uint256 amount);

    constructor(address _bazedToken, uint256 _lockTimeInDays) {
        require(_bazedToken != address(0), "cannot be 0 address");
        bazedToken = IERC20(_bazedToken);
        
        lockDuration = _lockTimeInDays * 1 days;

        address _v2Router;

        // @dev assumes WETH pair
        if(block.chainid == 1){
            _v2Router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
        } else if(block.chainid == 5){
            _v2Router = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D;
        } else {
            revert("Chain not configured");
        }

        dexRouter = IDexRouter(_v2Router);
    }

    // Stake primary tokens
    function deposit(uint256 _amount) external nonReentrant {
        require(_amount > 0, "Zero Amount");

        if(holderUnlockTime[msg.sender] == 0){
            holderUnlockTime[msg.sender] = block.timestamp + lockDuration;
        }
        uint256 userAmount = holderBalance[msg.sender];

        uint256 amountTransferred = 0;

        uint256 initialBalance = bazedToken.balanceOf(address(this));
        bazedToken.transferFrom(address(msg.sender), address(this), _amount);
        amountTransferred = bazedToken.balanceOf(address(this)) - initialBalance;
    
        setBalance(payable(msg.sender), userAmount + amountTransferred);

        emit Deposit(msg.sender, _amount);
    }

    // Withdraw primary tokens

    function withdraw(uint256 _amount) external nonReentrant {
        require(_amount > 0, "Zero Amount");
        uint256 userAmount = holderBalance[msg.sender];
        require(_amount <= userAmount, "Not enough tokens");
        require(holderUnlockTime[msg.sender] <= block.timestamp, "May not withdraw early");

        bazedToken.transfer(address(msg.sender), _amount);

        setBalance(payable(msg.sender), userAmount - _amount);

        if(userAmount > 0){
            holderUnlockTime[msg.sender] = block.timestamp + lockDuration;
        } else {
            holderUnlockTime[msg.sender] = 0;
        }

        emit Withdraw(msg.sender, _amount);
    }

    function withdrawAll() public nonReentrant {
        uint256 userAmount = holderBalance[msg.sender];
        require(userAmount > 0, "Not a holder");
        require(holderUnlockTime[msg.sender] <= block.timestamp, "May not withdraw early");
        
        bazedToken.transfer(address(msg.sender), userAmount);

        setBalance(payable(msg.sender), 0);
        holderUnlockTime[msg.sender] = 0;

        emit Withdraw(msg.sender, userAmount);
    }

    function claim() external nonReentrant {
        processAccount(payable(msg.sender), false);
    }

    function compound(uint256 minOutput) external nonReentrant {
        uint256 userAmount = holderBalance[msg.sender];
        uint256 amountEthForCompound = _withdrawDividendOfUserForCompound(payable(msg.sender));
        if(amountEthForCompound > 0){
            uint256 initialBalance = bazedToken.balanceOf(address(this));
            buyBackTokens(amountEthForCompound, minOutput);
            uint256 amountTransferred = bazedToken.balanceOf(address(this)) - initialBalance;
            setBalance(payable(msg.sender), userAmount + amountTransferred);
        } else {
            revert("No rewards");
        }
    }

    function _withdrawDividendOfUserForCompound(address payable user) internal returns (uint256 _withdrawableDividend) {
        _withdrawableDividend = withdrawableDividendOf(user);
        if (_withdrawableDividend > 0) {
            withdrawnDividends[user] = withdrawnDividends[user] + _withdrawableDividend;
            emit DividendWithdrawn(user, _withdrawableDividend);
        }
    }

    function buyBackTokens(uint256 ethAmountInWei, uint256 minOut) internal {
        // generate the uniswap pair path of weth -> eth
        address[] memory path = new address[](2);
        path[0] = dexRouter.WETH();
        path[1] = address(bazedToken);

        // make the swap
        dexRouter.swapExactETHForTokensSupportingFeeOnTransferTokens{value: ethAmountInWei}(
            minOut,
            path,
            address(this),
            block.timestamp
        );
    }

    // helper views

    function getExpectedCompoundOutputByEthAmount(uint256 rewardAmount) external view returns(uint256) {
        address[] memory path = new address[](2);
        path[0] = dexRouter.WETH();
        path[1] = address(bazedToken);
        uint256[] memory amounts = dexRouter.getAmountsOut(rewardAmount, path);
        return amounts[1];
    }

    function getExpectedCompoundOutputByWallet(address wallet) external view returns(uint256) {
        uint256 rewardAmount = withdrawableDividendOf(wallet);
        address[] memory path = new address[](2);
        path[0] = dexRouter.WETH();
        path[1] = address(bazedToken);
        uint256[] memory amounts = dexRouter.getAmountsOut(rewardAmount, path);
        return amounts[1];
    }
 }

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_bazedToken","type":"address"},{"internalType":"uint256","name":"_lockTimeInDays","type":"uint256"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"},{"indexed":true,"internalType":"bool","name":"automatic","type":"bool"}],"name":"Claim","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Deposit","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"DividendWithdrawn","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":false,"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"DividendsDistributed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Withdraw","type":"event"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"accumulativeDividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"bazedToken","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claim","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"minOutput","type":"uint256"}],"name":"compound","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"dexRouter","outputs":[{"internalType":"contract IDexRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"distributeDividends","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"dividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"dividendTokenBalanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"getAccount","outputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"withdrawableDividends","type":"uint256"},{"internalType":"uint256","name":"totalDividends","type":"uint256"},{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"rewardAmount","type":"uint256"}],"name":"getExpectedCompoundOutputByEthAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"wallet","type":"address"}],"name":"getExpectedCompoundOutputByWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getNumberOfDividends","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalDividendsDistributed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"holderBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"holderUnlockTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lockDuration","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalBalance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalDividendsDistributed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawAll","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawDividend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"withdrawableDividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"}],"name":"withdrawnDividendOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c060405234801562000010575f80fd5b50604051620020883803806200208883398101604081905262000033916200015b565b60015f556001600160a01b038216620000935760405162461bcd60e51b815260206004820152601360248201527f63616e6e6f74206265203020616464726573730000000000000000000000000060448201526064015b60405180910390fd5b6001600160a01b038216608052620000af816201518062000194565b6008555f46600103620000d85750737a250d5630b4cf539739df2c5dacb4c659f2488d62000146565b46600503620000fd5750737a250d5630b4cf539739df2c5dacb4c659f2488d62000146565b60405162461bcd60e51b815260206004820152601460248201527f436861696e206e6f7420636f6e6669677572656400000000000000000000000060448201526064016200008a565b6001600160a01b031660a05250620001be9050565b5f80604083850312156200016d575f80fd5b82516001600160a01b038116811462000184575f80fd5b6020939093015192949293505050565b8082028115828204841417620001b857634e487b7160e01b5f52601160045260245ffd5b92915050565b60805160a051611e38620002505f395f81816101da0152818161059b015281816106a601528181610ab701528181610bc2015281816117c901526118eb01525f81816104690152818161064d0152818161092201528181610b6901528181610d8b01528181610f1a01528181610fb80152818161118901528181611230015281816112ba015261187b0152611e385ff3fe608060405260043610610186575f3560e01c8063853828b6116100d1578063aafd847a1161007c578063b6b55f2511610057578063b6b55f2514610439578063ba44180714610458578063fbcbc0f11461048b575f80fd5b8063aafd847a146103c5578063ab6ddfa8146103f9578063ad7a672f14610424575f80fd5b8063a8b9d240116100ac578063a8b9d2401461035c578063a913a5f71461037b578063aa5f7e26146103a6575f80fd5b8063853828b61461031457806385a6b3ae1461032857806391b89fba1461033d575f80fd5b806330bb4cff116101315780636a4740021161010c5780636a474002146102cd57806371778e7d146102e15780637c174e87146102f5575f80fd5b806330bb4cff146102715780634e71d92d146102855780636843cd8414610299575f80fd5b806308f2f2331161016157806308f2f2331461021457806327ce0147146102335780632e1a7d4d14610252575f80fd5b806303c833021461019957806304554443146101a15780630758d924146101c9575f80fd5b36610195576101936104d4565b005b5f80fd5b6101936104d4565b3480156101ac575f80fd5b506101b660085481565b6040519081526020015b60405180910390f35b3480156101d4575f80fd5b506101fc7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101c0565b34801561021f575f80fd5b506101b661022e366004611b07565b610569565b34801561023e575f80fd5b506101b661024d366004611b07565b610745565b34801561025d575f80fd5b5061019361026c366004611b22565b6107b4565b34801561027c575f80fd5b506006546101b6565b348015610290575f80fd5b50610193610a1c565b3480156102a4575f80fd5b506101b66102b3366004611b07565b6001600160a01b03165f9081526004602052604090205490565b3480156102d8575f80fd5b50610193610a85565b3480156102ec575f80fd5b506005546101b6565b348015610300575f80fd5b506101b661030f366004611b22565b610a91565b34801561031f575f80fd5b50610193610c60565b348015610333575f80fd5b506101b660065481565b348015610348575f80fd5b506101b6610357366004611b07565b610e5a565b348015610367575f80fd5b506101b6610376366004611b07565b610e60565b348015610386575f80fd5b506101b6610395366004611b07565b60076020525f908152604090205481565b3480156103b1575f80fd5b506101936103c0366004611b22565b610e8b565b3480156103d0575f80fd5b506101b66103df366004611b07565b6001600160a01b03165f9081526003602052604090205490565b348015610404575f80fd5b506101b6610413366004611b07565b60046020525f908152604090205481565b34801561042f575f80fd5b506101b660055481565b348015610444575f80fd5b50610193610453366004611b22565b611093565b348015610463575f80fd5b506101fc7f000000000000000000000000000000000000000000000000000000000000000081565b348015610496575f80fd5b506104aa6104a5366004611b07565b611384565b604080516001600160a01b03909516855260208501939093529183015260608201526080016101c0565b5f6005541180156104e457505f34115b156105675760055461051e9061050b347001000000000000000000000000000000006113c0565b6105159190611b4d565b60015490611461565b60015560405134815233907fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d784541165119060200160405180910390a26006546105639034611461565b6006555b565b5f8061057483610e60565b6040805160028082526060820183529293505f9290916020830190803683370190505090507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105f5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106199190611b80565b815f8151811061062b5761062b611b9b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000008160018151811061067f5761067f611b9b565b6001600160a01b03928316602091820292909201015260405163d06ca61f60e01b81525f917f0000000000000000000000000000000000000000000000000000000000000000169063d06ca61f906106dd9086908690600401611bf1565b5f60405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261071e9190810190611c11565b90508060018151811061073357610733611b9b565b60200260200101519350505050919050565b6001600160a01b0381165f908152600260209081526040808320546004909252822054600154700100000000000000000000000000000000926107a49261079f926107999161079491906113c0565b6114bf565b906114cd565b611507565b6107ae9190611b4d565b92915050565b60025f540361080a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b60025f55806108495760405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8105b5bdd5b9d60aa1b6044820152606401610801565b335f90815260046020526040902054808211156108a85760405162461bcd60e51b815260206004820152601160248201527f4e6f7420656e6f75676820746f6b656e730000000000000000000000000000006044820152606401610801565b335f908152600760205260409020544210156109065760405162461bcd60e51b815260206004820152601660248201527f4d6179206e6f74207769746864726177206561726c79000000000000000000006044820152606401610801565b60405163a9059cbb60e01b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303815f875af1158015610970573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109949190611cca565b506109a8336109a38484611ce9565b611518565b80156109cf576008546109bb9042611cfc565b335f908152600760205260409020556109df565b335f908152600760205260408120555b60405182815233907f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a94243649060200160405180910390a2505060015f55565b60025f5403610a6d5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f81905550610a7e335f611532565b5060015f55565b610a8e3361159e565b50565b6040805160028082526060820183525f92839291906020830190803683370190505090507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b359190611b80565b815f81518110610b4757610b47611b9b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610b9b57610b9b611b9b565b6001600160a01b03928316602091820292909201015260405163d06ca61f60e01b81525f917f0000000000000000000000000000000000000000000000000000000000000000169063d06ca61f90610bf99087908690600401611bf1565b5f60405180830381865afa158015610c13573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610c3a9190810190611c11565b905080600181518110610c4f57610c4f611b9b565b602002602001015192505050919050565b60025f5403610cb15760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f9081553381526004602052604090205480610d115760405162461bcd60e51b815260206004820152600c60248201527f4e6f74206120686f6c64657200000000000000000000000000000000000000006044820152606401610801565b335f90815260076020526040902054421015610d6f5760405162461bcd60e51b815260206004820152601660248201527f4d6179206e6f74207769746864726177206561726c79000000000000000000006044820152606401610801565b60405163a9059cbb60e01b8152336004820152602481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303815f875af1158015610dd9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dfd9190611cca565b50610e08335f611518565b335f8181526007602052604080822091909155517f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a942436490610e4b9084815260200190565b60405180910390a25060015f55565b5f6107ae825b6001600160a01b0381165f908152600360205260408120546107ae90610e8584610745565b906116d5565b60025f5403610edc5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f90815533808252600460205260408220549190610efb90611716565b90508015611042576040516370a0823160e01b81523060048201525f907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015610f67573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f8b9190611d0f565b9050610f9782856117a7565b6040516370a0823160e01b81523060048201525f9082906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa158015610ffd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110219190611d0f565b61102b9190611ce9565b905061103b336109a38387611cfc565b505061108a565b60405162461bcd60e51b815260206004820152600a60248201527f4e6f2072657761726473000000000000000000000000000000000000000000006044820152606401610801565b505060015f5550565b60025f54036110e45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f55806111235760405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8105b5bdd5b9d60aa1b6044820152606401610801565b335f908152600760205260408120549003611155576008546111459042611cfc565b335f908152600760205260409020555b335f9081526004602081905260408083205490516370a0823160e01b81523092810192909252919081906001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016906370a0823190602401602060405180830381865afa1580156111ce573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111f29190611d0f565b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018690529091507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303815f875af115801561127e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112a29190611cca565b506040516370a0823160e01b815230600482015281907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906370a0823190602401602060405180830381865afa158015611307573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061132b9190611d0f565b6113359190611ce9565b9150611345336109a38486611cfc565b60405184815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c9060200160405180910390a2505060015f555050565b805f808061139184610e60565b925061139c84610745565b6001600160a01b0385165f9081526004602052604090205494969395509392915050565b5f825f036113cf57505f6107ae565b5f6113da8385611d26565b9050826113e78583611b4d565b1461145a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f77000000000000000000000000000000000000000000000000000000000000006064820152608401610801565b9392505050565b5f8061146d8385611cfc565b90508381101561145a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610801565b5f81818112156107ae575f80fd5b5f806114d98385611d3d565b90505f83121580156114eb5750838112155b806114ff57505f831280156114ff57508381125b61145a575f80fd5b5f80821215611514575f80fd5b5090565b611522828261195d565b61152d826001611532565b505050565b5f8061153d8461159e565b9050801561159557821515846001600160a01b03167fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf0928360405161158391815260200190565b60405180910390a360019150506107ae565b505f9392505050565b5f806115a983610e60565b905080156116cd576001600160a01b0383165f908152600360205260409020546115d39082611461565b6001600160a01b0384165f81815260036020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906116219084815260200190565b60405180910390a25f836001600160a01b0316826040515f6040518083038185875af1925050503d805f8114611672576040519150601f19603f3d011682016040523d82523d5f602084013e611677565b606091505b50509050806116c6576001600160a01b0384165f908152600360205260409020546116a290836116d5565b6001600160a01b039094165f90815260036020526040812094909455509192915050565b5092915050565b505f92915050565b5f61145a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119f1565b5f61172082610e60565b905080156117a2576001600160a01b0382165f9081526003602052604090205461174b908290611cfc565b6001600160a01b0383165f81815260036020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906117999084815260200190565b60405180910390a25b919050565b6040805160028082526060820183525f926020830190803683370190505090507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611823573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118479190611b80565b815f8151811061185957611859611b9b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000000000000000000000000000000000000000000000816001815181106118ad576118ad611b9b565b6001600160a01b0392831660209182029290920101526040517fb6f9de950000000000000000000000000000000000000000000000000000000081527f00000000000000000000000000000000000000000000000000000000000000009091169063b6f9de9590859061192a908690869030904290600401611d64565b5f604051808303818588803b158015611941575f80fd5b505af1158015611953573d5f803e3d5ffd5b5050505050505050565b6001600160a01b0382165f908152600460205260409020805490829055808211156119b6575f61198d83836116d5565b90506119998482611a29565b8060055f8282546119aa9190611cfc565b9091555061152d915050565b8082101561152d575f6119c982846116d5565b90506119d58482611a81565b8060055f8282546119e69190611ce9565b909155505050505050565b5f8184841115611a145760405162461bcd60e51b81526004016108019190611d98565b505f611a208486611ce9565b95945050505050565b611a62611a44610794836001546113c090919063ffffffff16565b6001600160a01b0384165f9081526002602052604090205490611aba565b6001600160a01b039092165f9081526002602052604090209190915550565b611a62611a9c610794836001546113c090919063ffffffff16565b6001600160a01b0384165f90815260026020526040902054906114cd565b5f80611ac68385611de3565b90505f8312158015611ad85750838113155b806114ff57505f831280156114ff575083811361145a575f80fd5b6001600160a01b0381168114610a8e575f80fd5b5f60208284031215611b17575f80fd5b813561145a81611af3565b5f60208284031215611b32575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b5f82611b6757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215611b90575f80fd5b815161145a81611af3565b634e487b7160e01b5f52603260045260245ffd5b5f8151808452602080850194508084015f5b83811015611be65781516001600160a01b031687529582019590820190600101611bc1565b509495945050505050565b828152604060208201525f611c096040830184611baf565b949350505050565b5f6020808385031215611c22575f80fd5b825167ffffffffffffffff80821115611c39575f80fd5b818501915085601f830112611c4c575f80fd5b815181811115611c5e57611c5e611b6c565b8060051b604051601f19603f83011681018181108582111715611c8357611c83611b6c565b604052918252848201925083810185019188831115611ca0575f80fd5b938501935b82851015611cbe57845184529385019392850192611ca5565b98975050505050505050565b5f60208284031215611cda575f80fd5b8151801515811461145a575f80fd5b818103818111156107ae576107ae611b39565b808201808211156107ae576107ae611b39565b5f60208284031215611d1f575f80fd5b5051919050565b80820281158282048414176107ae576107ae611b39565b8082018281125f831280158216821582161715611d5c57611d5c611b39565b505092915050565b848152608060208201525f611d7c6080830186611baf565b6001600160a01b03949094166040830152506060015292915050565b5f6020808352835180828501525f5b81811015611dc357858101830151858201604001528201611da7565b505f604082860101526040601f19601f8301168501019250505092915050565b8181035f8312801583831316838312821617156116c6576116c6611b3956fea26469706673582212203cb3a936574e5fbb741cdd9aef83dbc011031e2ebaa33b5aaa5b91a48e8cb38c64736f6c634300081400330000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a000000000000000000000000000000000000000000000000000000000000000e

Deployed Bytecode

0x608060405260043610610186575f3560e01c8063853828b6116100d1578063aafd847a1161007c578063b6b55f2511610057578063b6b55f2514610439578063ba44180714610458578063fbcbc0f11461048b575f80fd5b8063aafd847a146103c5578063ab6ddfa8146103f9578063ad7a672f14610424575f80fd5b8063a8b9d240116100ac578063a8b9d2401461035c578063a913a5f71461037b578063aa5f7e26146103a6575f80fd5b8063853828b61461031457806385a6b3ae1461032857806391b89fba1461033d575f80fd5b806330bb4cff116101315780636a4740021161010c5780636a474002146102cd57806371778e7d146102e15780637c174e87146102f5575f80fd5b806330bb4cff146102715780634e71d92d146102855780636843cd8414610299575f80fd5b806308f2f2331161016157806308f2f2331461021457806327ce0147146102335780632e1a7d4d14610252575f80fd5b806303c833021461019957806304554443146101a15780630758d924146101c9575f80fd5b36610195576101936104d4565b005b5f80fd5b6101936104d4565b3480156101ac575f80fd5b506101b660085481565b6040519081526020015b60405180910390f35b3480156101d4575f80fd5b506101fc7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b0390911681526020016101c0565b34801561021f575f80fd5b506101b661022e366004611b07565b610569565b34801561023e575f80fd5b506101b661024d366004611b07565b610745565b34801561025d575f80fd5b5061019361026c366004611b22565b6107b4565b34801561027c575f80fd5b506006546101b6565b348015610290575f80fd5b50610193610a1c565b3480156102a4575f80fd5b506101b66102b3366004611b07565b6001600160a01b03165f9081526004602052604090205490565b3480156102d8575f80fd5b50610193610a85565b3480156102ec575f80fd5b506005546101b6565b348015610300575f80fd5b506101b661030f366004611b22565b610a91565b34801561031f575f80fd5b50610193610c60565b348015610333575f80fd5b506101b660065481565b348015610348575f80fd5b506101b6610357366004611b07565b610e5a565b348015610367575f80fd5b506101b6610376366004611b07565b610e60565b348015610386575f80fd5b506101b6610395366004611b07565b60076020525f908152604090205481565b3480156103b1575f80fd5b506101936103c0366004611b22565b610e8b565b3480156103d0575f80fd5b506101b66103df366004611b07565b6001600160a01b03165f9081526003602052604090205490565b348015610404575f80fd5b506101b6610413366004611b07565b60046020525f908152604090205481565b34801561042f575f80fd5b506101b660055481565b348015610444575f80fd5b50610193610453366004611b22565b611093565b348015610463575f80fd5b506101fc7f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a81565b348015610496575f80fd5b506104aa6104a5366004611b07565b611384565b604080516001600160a01b03909516855260208501939093529183015260608201526080016101c0565b5f6005541180156104e457505f34115b156105675760055461051e9061050b347001000000000000000000000000000000006113c0565b6105159190611b4d565b60015490611461565b60015560405134815233907fa493a9229478c3fcd73f66d2cdeb7f94fd0f341da924d1054236d784541165119060200160405180910390a26006546105639034611461565b6006555b565b5f8061057483610e60565b6040805160028082526060820183529293505f9290916020830190803683370190505090507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105f5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106199190611b80565b815f8151811061062b5761062b611b9b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a8160018151811061067f5761067f611b9b565b6001600160a01b03928316602091820292909201015260405163d06ca61f60e01b81525f917f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063d06ca61f906106dd9086908690600401611bf1565b5f60405180830381865afa1580156106f7573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261071e9190810190611c11565b90508060018151811061073357610733611b9b565b60200260200101519350505050919050565b6001600160a01b0381165f908152600260209081526040808320546004909252822054600154700100000000000000000000000000000000926107a49261079f926107999161079491906113c0565b6114bf565b906114cd565b611507565b6107ae9190611b4d565b92915050565b60025f540361080a5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0060448201526064015b60405180910390fd5b60025f55806108495760405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8105b5bdd5b9d60aa1b6044820152606401610801565b335f90815260046020526040902054808211156108a85760405162461bcd60e51b815260206004820152601160248201527f4e6f7420656e6f75676820746f6b656e730000000000000000000000000000006044820152606401610801565b335f908152600760205260409020544210156109065760405162461bcd60e51b815260206004820152601660248201527f4d6179206e6f74207769746864726177206561726c79000000000000000000006044820152606401610801565b60405163a9059cbb60e01b8152336004820152602481018390527f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a6001600160a01b03169063a9059cbb906044016020604051808303815f875af1158015610970573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109949190611cca565b506109a8336109a38484611ce9565b611518565b80156109cf576008546109bb9042611cfc565b335f908152600760205260409020556109df565b335f908152600760205260408120555b60405182815233907f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a94243649060200160405180910390a2505060015f55565b60025f5403610a6d5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f81905550610a7e335f611532565b5060015f55565b610a8e3361159e565b50565b6040805160028082526060820183525f92839291906020830190803683370190505090507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b11573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b359190611b80565b815f81518110610b4757610b47611b9b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a81600181518110610b9b57610b9b611b9b565b6001600160a01b03928316602091820292909201015260405163d06ca61f60e01b81525f917f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063d06ca61f90610bf99087908690600401611bf1565b5f60405180830381865afa158015610c13573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610c3a9190810190611c11565b905080600181518110610c4f57610c4f611b9b565b602002602001015192505050919050565b60025f5403610cb15760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f9081553381526004602052604090205480610d115760405162461bcd60e51b815260206004820152600c60248201527f4e6f74206120686f6c64657200000000000000000000000000000000000000006044820152606401610801565b335f90815260076020526040902054421015610d6f5760405162461bcd60e51b815260206004820152601660248201527f4d6179206e6f74207769746864726177206561726c79000000000000000000006044820152606401610801565b60405163a9059cbb60e01b8152336004820152602481018290527f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a6001600160a01b03169063a9059cbb906044016020604051808303815f875af1158015610dd9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610dfd9190611cca565b50610e08335f611518565b335f8181526007602052604080822091909155517f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a942436490610e4b9084815260200190565b60405180910390a25060015f55565b5f6107ae825b6001600160a01b0381165f908152600360205260408120546107ae90610e8584610745565b906116d5565b60025f5403610edc5760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f90815533808252600460205260408220549190610efb90611716565b90508015611042576040516370a0823160e01b81523060048201525f907f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a6001600160a01b0316906370a0823190602401602060405180830381865afa158015610f67573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f8b9190611d0f565b9050610f9782856117a7565b6040516370a0823160e01b81523060048201525f9082906001600160a01b037f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a16906370a0823190602401602060405180830381865afa158015610ffd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110219190611d0f565b61102b9190611ce9565b905061103b336109a38387611cfc565b505061108a565b60405162461bcd60e51b815260206004820152600a60248201527f4e6f2072657761726473000000000000000000000000000000000000000000006044820152606401610801565b505060015f5550565b60025f54036110e45760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610801565b60025f55806111235760405162461bcd60e51b815260206004820152600b60248201526a16995c9bc8105b5bdd5b9d60aa1b6044820152606401610801565b335f908152600760205260408120549003611155576008546111459042611cfc565b335f908152600760205260409020555b335f9081526004602081905260408083205490516370a0823160e01b81523092810192909252919081906001600160a01b037f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a16906370a0823190602401602060405180830381865afa1580156111ce573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111f29190611d0f565b6040517f23b872dd000000000000000000000000000000000000000000000000000000008152336004820152306024820152604481018690529091507f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a6001600160a01b0316906323b872dd906064016020604051808303815f875af115801561127e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112a29190611cca565b506040516370a0823160e01b815230600482015281907f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a6001600160a01b0316906370a0823190602401602060405180830381865afa158015611307573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061132b9190611d0f565b6113359190611ce9565b9150611345336109a38486611cfc565b60405184815233907fe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c9060200160405180910390a2505060015f555050565b805f808061139184610e60565b925061139c84610745565b6001600160a01b0385165f9081526004602052604090205494969395509392915050565b5f825f036113cf57505f6107ae565b5f6113da8385611d26565b9050826113e78583611b4d565b1461145a5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60448201527f77000000000000000000000000000000000000000000000000000000000000006064820152608401610801565b9392505050565b5f8061146d8385611cfc565b90508381101561145a5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610801565b5f81818112156107ae575f80fd5b5f806114d98385611d3d565b90505f83121580156114eb5750838112155b806114ff57505f831280156114ff57508381125b61145a575f80fd5b5f80821215611514575f80fd5b5090565b611522828261195d565b61152d826001611532565b505050565b5f8061153d8461159e565b9050801561159557821515846001600160a01b03167fa2c38e2d2fb7e3e1912d937fd1ca11ed6d51864dee4cfa7a7bf02becd7acf0928360405161158391815260200190565b60405180910390a360019150506107ae565b505f9392505050565b5f806115a983610e60565b905080156116cd576001600160a01b0383165f908152600360205260409020546115d39082611461565b6001600160a01b0384165f81815260036020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906116219084815260200190565b60405180910390a25f836001600160a01b0316826040515f6040518083038185875af1925050503d805f8114611672576040519150601f19603f3d011682016040523d82523d5f602084013e611677565b606091505b50509050806116c6576001600160a01b0384165f908152600360205260409020546116a290836116d5565b6001600160a01b039094165f90815260036020526040812094909455509192915050565b5092915050565b505f92915050565b5f61145a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506119f1565b5f61172082610e60565b905080156117a2576001600160a01b0382165f9081526003602052604090205461174b908290611cfc565b6001600160a01b0383165f81815260036020526040908190209290925590517fee503bee2bb6a87e57bc57db795f98137327401a0e7b7ce42e37926cc1a9ca4d906117999084815260200190565b60405180910390a25b919050565b6040805160028082526060820183525f926020830190803683370190505090507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611823573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906118479190611b80565b815f8151811061185957611859611b9b565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a816001815181106118ad576118ad611b9b565b6001600160a01b0392831660209182029290920101526040517fb6f9de950000000000000000000000000000000000000000000000000000000081527f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d9091169063b6f9de9590859061192a908690869030904290600401611d64565b5f604051808303818588803b158015611941575f80fd5b505af1158015611953573d5f803e3d5ffd5b5050505050505050565b6001600160a01b0382165f908152600460205260409020805490829055808211156119b6575f61198d83836116d5565b90506119998482611a29565b8060055f8282546119aa9190611cfc565b9091555061152d915050565b8082101561152d575f6119c982846116d5565b90506119d58482611a81565b8060055f8282546119e69190611ce9565b909155505050505050565b5f8184841115611a145760405162461bcd60e51b81526004016108019190611d98565b505f611a208486611ce9565b95945050505050565b611a62611a44610794836001546113c090919063ffffffff16565b6001600160a01b0384165f9081526002602052604090205490611aba565b6001600160a01b039092165f9081526002602052604090209190915550565b611a62611a9c610794836001546113c090919063ffffffff16565b6001600160a01b0384165f90815260026020526040902054906114cd565b5f80611ac68385611de3565b90505f8312158015611ad85750838113155b806114ff57505f831280156114ff575083811361145a575f80fd5b6001600160a01b0381168114610a8e575f80fd5b5f60208284031215611b17575f80fd5b813561145a81611af3565b5f60208284031215611b32575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b5f82611b6757634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52604160045260245ffd5b5f60208284031215611b90575f80fd5b815161145a81611af3565b634e487b7160e01b5f52603260045260245ffd5b5f8151808452602080850194508084015f5b83811015611be65781516001600160a01b031687529582019590820190600101611bc1565b509495945050505050565b828152604060208201525f611c096040830184611baf565b949350505050565b5f6020808385031215611c22575f80fd5b825167ffffffffffffffff80821115611c39575f80fd5b818501915085601f830112611c4c575f80fd5b815181811115611c5e57611c5e611b6c565b8060051b604051601f19603f83011681018181108582111715611c8357611c83611b6c565b604052918252848201925083810185019188831115611ca0575f80fd5b938501935b82851015611cbe57845184529385019392850192611ca5565b98975050505050505050565b5f60208284031215611cda575f80fd5b8151801515811461145a575f80fd5b818103818111156107ae576107ae611b39565b808201808211156107ae576107ae611b39565b5f60208284031215611d1f575f80fd5b5051919050565b80820281158282048414176107ae576107ae611b39565b8082018281125f831280158216821582161715611d5c57611d5c611b39565b505092915050565b848152608060208201525f611d7c6080830186611baf565b6001600160a01b03949094166040830152506060015292915050565b5f6020808352835180828501525f5b81811015611dc357858101830151858201604001528201611da7565b505f604082860101526040601f19601f8301168501019250505092915050565b8181035f8312801583831316838312821617156116c6576116c6611b3956fea26469706673582212203cb3a936574e5fbb741cdd9aef83dbc011031e2ebaa33b5aaa5b91a48e8cb38c64736f6c63430008140033

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

0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a000000000000000000000000000000000000000000000000000000000000000e

-----Decoded View---------------
Arg [0] : _bazedToken (address): 0x3eE4B152824b657644c7A9B50694787e80EB8F4a
Arg [1] : _lockTimeInDays (uint256): 14

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000003ee4b152824b657644c7a9b50694787e80eb8f4a
Arg [1] : 000000000000000000000000000000000000000000000000000000000000000e


Deployed Bytecode Sourcemap

11794:5392:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7083:21;:19;:21::i;:::-;11794:5392;;;;;7116:387;;;:::i;12014:27::-;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;12014:27:0;;;;;;;;11909:37;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;377:55:1;;;359:74;;347:2;332:18;11909:37:0;196:243:1;16783:399:0;;;;;;;;;;-1:-1:-1;16783:399:0;;;;;:::i;:::-;;:::i;8691:251::-;;;;;;;;;;-1:-1:-1;8691:251:0;;;;;:::i;:::-;;:::i;13590:681::-;;;;;;;;;;-1:-1:-1;13590:681:0;;;;;:::i;:::-;;:::i;11015:123::-;;;;;;;;;;-1:-1:-1;11105:25:0;;11015:123;;14751:100;;;;;;;;;;;;;:::i;11143:118::-;;;;;;;;;;-1:-1:-1;11143:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;11234:22:0;11213:7;11234:22;;;:13;:22;;;;;;;11143:118;7509:111;;;;;;;;;;;;;:::i;11269:101::-;;;;;;;;;;-1:-1:-1;11350:12:0;;11269:101;;16431:344;;;;;;;;;;-1:-1:-1;16431:344:0;;;;;:::i;:::-;;:::i;14279:464::-;;;;;;;;;;;;;:::i;7002:40::-;;;;;;;;;;;;;;;;8248:126;;;;;;;;;;-1:-1:-1;8248:126:0;;;;;:::i;:::-;;:::i;8380:168::-;;;;;;;;;;-1:-1:-1;8380:168:0;;;;;:::i;:::-;;:::i;11955:52::-;;;;;;;;;;-1:-1:-1;11955:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;14859:633;;;;;;;;;;-1:-1:-1;14859:633:0;;;;;:::i;:::-;;:::i;8554:131::-;;;;;;;;;;-1:-1:-1;8554:131:0;;;;;:::i;:::-;-1:-1:-1;;;;;8653:26:0;8630:7;8653:26;;;:18;:26;;;;;;;8554:131;6914:49;;;;;;;;;;-1:-1:-1;6914:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;6968:27;;;;;;;;;;;;;;;;12841:707;;;;;;;;;;-1:-1:-1;12841:707:0;;;;;:::i;:::-;;:::i;11868:34::-;;;;;;;;;;;;;;;10119:419;;;;;;;;;;-1:-1:-1;10119:419:0;;;;;:::i;:::-;;:::i;:::-;;;;-1:-1:-1;;;;;1534:55:1;;;1516:74;;1621:2;1606:18;;1599:34;;;;1649:18;;;1642:34;1707:2;1692:18;;1685:34;1503:3;1488:19;10119:419:0;1285:440:1;7116:387:0;7196:1;7181:12;;:16;:33;;;;;7213:1;7201:9;:13;7181:33;7178:320;;;7327:12;;7254:96;;7298:26;7299:9;6646:6;7298:15;:26::i;:::-;:41;;;;:::i;:::-;7254:25;;;:29;:96::i;:::-;7226:25;:124;7366:43;;7399:9;160:25:1;;7387:10:0;;7366:43;;148:2:1;133:18;7366:43:0;;;;;;;7450:25;;:40;;7480:9;7450:29;:40::i;:::-;7422:25;:68;7178:320;7116:387::o;16783:399::-;16864:7;16884:20;16907:30;16930:6;16907:22;:30::i;:::-;16972:16;;;16986:1;16972:16;;;;;;;;16884:53;;-1:-1:-1;16948:21:0;;16972:16;;;;;;;;;;;;-1:-1:-1;16972:16:0;16948:40;;17009:9;-1:-1:-1;;;;;17009:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16999:4;17004:1;16999:7;;;;;;;;:::i;:::-;;;;;;:26;-1:-1:-1;;;;;16999:26:0;;;-1:-1:-1;;;;;16999:26:0;;;;;17054:10;17036:4;17041:1;17036:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17036:29:0;;;:7;;;;;;;;;:29;17103:43;;-1:-1:-1;;;17103:43:0;;17076:24;;17103:9;:23;;;;:43;;17127:12;;17141:4;;17103:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;17103:43:0;;;;;;;;;;;;:::i;:::-;17076:70;;17164:7;17172:1;17164:10;;;;;;;;:::i;:::-;;;;;;;17157:17;;;;;16783:399;;;:::o;8691:251::-;-1:-1:-1;;;;;8871:36:0;;8768:7;8871:36;;;:28;:36;;;;;;;;;8821:13;:21;;;;;;8791:25;;6646:6;;8791:133;;:117;;:67;;:52;;:25;:29;:52::i;:::-;:65;:67::i;:::-;:79;;:117::i;:::-;:131;:133::i;:::-;:145;;;;:::i;:::-;8784:152;8691:251;-1:-1:-1;;8691:251:0:o;13590:681::-;11502:1;11650:7;;:19;11642:63;;;;-1:-1:-1;;;11642:63:0;;4970:2:1;11642:63:0;;;4952:21:1;5009:2;4989:18;;;4982:30;5048:33;5028:18;;;5021:61;5099:18;;11642:63:0;;;;;;;;;11502:1;11716:7;:18;13666:11;13658:35:::1;;;::::0;-1:-1:-1;;;13658:35:0;;5330:2:1;13658:35:0::1;::::0;::::1;5312:21:1::0;5369:2;5349:18;;;5342:30;-1:-1:-1;;;5388:18:1;;;5381:41;5439:18;;13658:35:0::1;5128:335:1::0;13658:35:0::1;13739:10;13704:18;13725:25:::0;;;:13:::1;:25;::::0;;;;;13769:21;;::::1;;13761:51;;;::::0;-1:-1:-1;;;13761:51:0;;5670:2:1;13761:51:0::1;::::0;::::1;5652:21:1::0;5709:2;5689:18;;;5682:30;5748:19;5728:18;;;5721:47;5785:18;;13761:51:0::1;5468:341:1::0;13761:51:0::1;13848:10;13831:28;::::0;;;:16:::1;:28;::::0;;;;;13863:15:::1;-1:-1:-1::0;13831:47:0::1;13823:82;;;::::0;-1:-1:-1;;;13823:82:0;;6016:2:1;13823:82:0::1;::::0;::::1;5998:21:1::0;6055:2;6035:18;;;6028:30;6094:24;6074:18;;;6067:52;6136:18;;13823:82:0::1;5814:346:1::0;13823:82:0::1;13918:49;::::0;-1:-1:-1;;;13918:49:0;;13946:10:::1;13918:49;::::0;::::1;6339:74:1::0;6429:18;;;6422:34;;;13918:10:0::1;-1:-1:-1::0;;;;;13918:19:0::1;::::0;::::1;::::0;6312:18:1;;13918:49:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;13980:53:0::1;13999:10;14012:20;14025:7:::0;14012:10;:20:::1;:::i;:::-;13980:10;:53::i;:::-;14049:14:::0;;14046:171:::1;;14128:12;::::0;14110:30:::1;::::0;:15:::1;:30;:::i;:::-;14096:10;14079:28;::::0;;;:16:::1;:28;::::0;;;;:61;14046:171:::1;;;14190:10;14204:1;14173:28:::0;;;:16:::1;:28;::::0;;;;:32;14046:171:::1;14234:29;::::0;160:25:1;;;14243:10:0::1;::::0;14234:29:::1;::::0;148:2:1;133:18;14234:29:0::1;;;;;;;-1:-1:-1::0;;11458:1:0;11757:7;:22;13590:681::o;14751:100::-;11502:1;11650:7;;:19;11642:63;;;;-1:-1:-1;;;11642:63:0;;4970:2:1;11642:63:0;;;4952:21:1;5009:2;4989:18;;;4982:30;5048:33;5028:18;;;5021:61;5099:18;;11642:63:0;4768:355:1;11642:63:0;11502:1;11716:7;:18;;;;14801:42:::1;14824:10;14837:5;14801:14;:42::i;:::-;-1:-1:-1::0;11458:1:0;11757:7;:22;14751:100::o;7509:111::-;7570:44;7602:10;7570:23;:44::i;:::-;;7509:111::o;16431:344::-;16565:16;;;16579:1;16565:16;;;;;;;;16521:7;;;;16565:16;16579:1;16565:16;;;;;;;;;;-1:-1:-1;16565:16:0;16541:40;;16602:9;-1:-1:-1;;;;;16602:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16592:4;16597:1;16592:7;;;;;;;;:::i;:::-;;;;;;:26;-1:-1:-1;;;;;16592:26:0;;;-1:-1:-1;;;;;16592:26:0;;;;;16647:10;16629:4;16634:1;16629:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;16629:29:0;;;:7;;;;;;;;;:29;16696:43;;-1:-1:-1;;;16696:43:0;;16669:24;;16696:9;:23;;;;:43;;16720:12;;16734:4;;16696:43;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;16696:43:0;;;;;;;;;;;;:::i;:::-;16669:70;;16757:7;16765:1;16757:10;;;;;;;;:::i;:::-;;;;;;;16750:17;;;;16431:344;;;:::o;14279:464::-;11502:1;11650:7;;:19;11642:63;;;;-1:-1:-1;;;11642:63:0;;4970:2:1;11642:63:0;;;4952:21:1;5009:2;4989:18;;;4982:30;5048:33;5028:18;;;5021:61;5099:18;;11642:63:0;4768:355:1;11642:63:0;11502:1;11716:7;:18;;;14368:10:::1;14354:25:::0;;:13:::1;:25;::::0;;;;;14398:14;14390:39:::1;;;::::0;-1:-1:-1;;;14390:39:0;;7214:2:1;14390:39:0::1;::::0;::::1;7196:21:1::0;7253:2;7233:18;;;7226:30;7292:14;7272:18;;;7265:42;7324:18;;14390:39:0::1;7012:336:1::0;14390:39:0::1;14465:10;14448:28;::::0;;;:16:::1;:28;::::0;;;;;14480:15:::1;-1:-1:-1::0;14448:47:0::1;14440:82;;;::::0;-1:-1:-1;;;14440:82:0;;6016:2:1;14440:82:0::1;::::0;::::1;5998:21:1::0;6055:2;6035:18;;;6028:30;6094:24;6074:18;;;6067:52;6136:18;;14440:82:0::1;5814:346:1::0;14440:82:0::1;14543:52;::::0;-1:-1:-1;;;14543:52:0;;14571:10:::1;14543:52;::::0;::::1;6339:74:1::0;6429:18;;;6422:34;;;14543:10:0::1;-1:-1:-1::0;;;;;14543:19:0::1;::::0;::::1;::::0;6312:18:1;;14543:52:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;14608:34;14627:10;14640:1;14608:10;:34::i;:::-;14670:10;14684:1;14653:28:::0;;;:16:::1;:28;::::0;;;;;:32;;;;14703;::::1;::::0;::::1;::::0;14724:10;160:25:1;;148:2;133:18;;14:177;14703:32:0::1;;;;;;;;-1:-1:-1::0;11458:1:0;11757:7;:22;14279:464::o;8248:126::-;8315:7;8338:30;8361:6;8380:168;-1:-1:-1;;;;;8515:26:0;;8457:7;8515:26;;;:18;:26;;;;;;8480:62;;:30;8534:6;8480:22;:30::i;:::-;:34;;:62::i;14859:633::-;11502:1;11650:7;;:19;11642:63;;;;-1:-1:-1;;;11642:63:0;;4970:2:1;11642:63:0;;;4952:21:1;5009:2;4989:18;;;4982:30;5048:33;5028:18;;;5021:61;5099:18;;11642:63:0;4768:355:1;11642:63:0;11502:1;11716:7;:18;;;14964:10:::1;14950:25:::0;;;:13:::1;:25;::::0;;;;;;11716:7;15017:55:::1;::::0;:34:::1;:55::i;:::-;14986:86:::0;-1:-1:-1;15086:24:0;;15083:402:::1;;15151:35;::::0;-1:-1:-1;;;15151:35:0;;15180:4:::1;15151:35;::::0;::::1;359:74:1::0;15126:22:0::1;::::0;15151:10:::1;-1:-1:-1::0;;;;;15151:20:0::1;::::0;::::1;::::0;332:18:1;;15151:35:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;15126:60;;15201:46;15215:20;15237:9;15201:13;:46::i;:::-;15290:35;::::0;-1:-1:-1;;;15290:35:0;;15319:4:::1;15290:35;::::0;::::1;359:74:1::0;15262:25:0::1;::::0;15328:14;;-1:-1:-1;;;;;15290:10:0::1;:20;::::0;::::1;::::0;332:18:1;;15290:35:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:52;;;;:::i;:::-;15262:80:::0;-1:-1:-1;15357:63:0::1;15376:10;15389:30;15262:80:::0;15389:10;:30:::1;:::i;15357:63::-;15111:321;;15083:402;;;15453:20;::::0;-1:-1:-1;;;15453:20:0;;7975:2:1;15453:20:0::1;::::0;::::1;7957:21:1::0;8014:2;7994:18;;;7987:30;8053:12;8033:18;;;8026:40;8083:18;;15453:20:0::1;7773:334:1::0;15083:402:0::1;-1:-1:-1::0;;11458:1:0;11757:7;:22;-1:-1:-1;14859:633:0:o;12841:707::-;11502:1;11650:7;;:19;11642:63;;;;-1:-1:-1;;;11642:63:0;;4970:2:1;11642:63:0;;;4952:21:1;5009:2;4989:18;;;4982:30;5048:33;5028:18;;;5021:61;5099:18;;11642:63:0;4768:355:1;11642:63:0;11502:1;11716:7;:18;12916:11;12908:35:::1;;;::::0;-1:-1:-1;;;12908:35:0;;5330:2:1;12908:35:0::1;::::0;::::1;5312:21:1::0;5369:2;5349:18;;;5342:30;-1:-1:-1;;;5388:18:1;;;5381:41;5439:18;;12908:35:0::1;5128:335:1::0;12908:35:0::1;12976:10;12959:28;::::0;;;:16:::1;:28;::::0;;;;;:33;;12956:125:::1;;13057:12;::::0;13039:30:::1;::::0;:15:::1;:30;:::i;:::-;13025:10;13008:28;::::0;;;:16:::1;:28;::::0;;;;:61;12956:125:::1;13126:10;13091:18;13112:25:::0;;;:13:::1;:25;::::0;;;;;;;;13217:35;;-1:-1:-1;;;13217:35:0;;13246:4:::1;13217:35:::0;;::::1;359:74:1::0;;;;13112:25:0;13091:18;;;-1:-1:-1;;;;;13217:10:0::1;:20;::::0;::::1;::::0;332:18:1;;13217:35:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13263:68;::::0;;;;13295:10:::1;13263:68;::::0;::::1;8375:34:1::0;13316:4:0::1;8425:18:1::0;;;8418:43;8477:18;;;8470:34;;;13192:60:0;;-1:-1:-1;13263:10:0::1;-1:-1:-1::0;;;;;13263:23:0::1;::::0;::::1;::::0;8287:18:1;;13263:68:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;13362:35:0::1;::::0;-1:-1:-1;;;13362:35:0;;13391:4:::1;13362:35;::::0;::::1;359:74:1::0;13400:14:0;;13362:10:::1;-1:-1:-1::0;;;;;13362:20:0::1;::::0;::::1;::::0;332:18:1;;13362:35:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;:52;;;;:::i;:::-;13342:72:::0;-1:-1:-1;13431:63:0::1;13450:10;13463:30;13342:72:::0;13463:10;:30:::1;:::i;13431:63::-;13512:28;::::0;160:25:1;;;13520:10:0::1;::::0;13512:28:::1;::::0;148:2:1;133:18;13512:28:0::1;;;;;;;-1:-1:-1::0;;11458:1:0;11757:7;:22;-1:-1:-1;;12841:707:0:o;10119:419::-;10350:8;10201:15;;;10395:31;10350:8;10395:22;:31::i;:::-;10371:55;;10454:31;10477:7;10454:22;:31::i;:::-;-1:-1:-1;;;;;10508:22:0;;;;;;:13;:22;;;;;;10522:7;;10119:419;;-1:-1:-1;10437:48:0;10508:22;10119:419;-1:-1:-1;;10119:419:0:o;1321:471::-;1379:7;1624:1;1629;1624:6;1620:47;;-1:-1:-1;1654:1:0;1647:8;;1620:47;1679:9;1691:5;1695:1;1691;:5;:::i;:::-;1679:17;-1:-1:-1;1724:1:0;1715:5;1719:1;1679:17;1715:5;:::i;:::-;:10;1707:56;;;;-1:-1:-1;;;1707:56:0;;8890:2:1;1707:56:0;;;8872:21:1;8929:2;8909:18;;;8902:30;8968:34;8948:18;;;8941:62;9039:3;9019:18;;;9012:31;9060:19;;1707:56:0;8688:397:1;1707:56:0;1783:1;1321:471;-1:-1:-1;;;1321:471:0:o;754:181::-;812:7;;844:5;848:1;844;:5;:::i;:::-;832:17;;873:1;868;:6;;860:46;;;;-1:-1:-1;;;860:46:0;;9292:2:1;860:46:0;;;9274:21:1;9331:2;9311:18;;;9304:30;9370:29;9350:18;;;9343:57;9417:18;;860:46:0;9090:351:1;4855:134:0;4911:6;4944:1;4961:6;;;;4953:15;;;;;4290:176;4346:6;;4376:5;4380:1;4376;:5;:::i;:::-;4365:16;;4406:1;4401;:6;;:16;;;;;4416:1;4411;:6;;4401:16;4400:38;;;;4427:1;4423;:5;:14;;;;;4436:1;4432;:5;4423:14;4392:47;;;;;4695:127;4751:7;4784:1;4779;:6;;4771:15;;;;;;-1:-1:-1;4812:1:0;4695:127::o;10544:166::-;10631:32;10643:7;10652:10;10631:11;:32::i;:::-;10673:29;10688:7;10697:4;10673:14;:29::i;:::-;;10544:166;;:::o;10722:285::-;10805:4;10822:14;10839:32;10863:7;10839:23;:32::i;:::-;10822:49;-1:-1:-1;10884:10:0;;10881:97;;10939:9;10916:33;;10922:7;-1:-1:-1;;;;;10916:33:0;;10931:6;10916:33;;;;160:25:1;;148:2;133:18;;14:177;10916:33:0;;;;;;;;10965:4;10958:11;;;;;10881:97;-1:-1:-1;10994:5:0;;10722:285;-1:-1:-1;;;10722:285:0:o;7626:616::-;7699:7;7715:29;7747:28;7770:4;7747:22;:28::i;:::-;7715:60;-1:-1:-1;7786:25:0;;7782:438;;-1:-1:-1;;;;;7849:24:0;;;;;;:18;:24;;;;;;:51;;7878:21;7849:28;:51::i;:::-;-1:-1:-1;;;;;7822:24:0;;;;;;:18;:24;;;;;;;:78;;;;7916:46;;;;;;7940:21;160:25:1;;148:2;133:18;;14:177;7916:46:0;;;;;;;;7972:12;7989:4;-1:-1:-1;;;;;7989:9:0;8006:21;7989:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7971:61;;;8047:7;8043:131;;-1:-1:-1;;;;;8094:24:0;;;;;;:18;:24;;;;;;:51;;8123:21;8094:28;:51::i;:::-;-1:-1:-1;;;;;8067:24:0;;;;;;;:18;:24;;;;;:78;;;;-1:-1:-1;8067:24:0;;7626:616;-1:-1:-1;;7626:616:0:o;8043:131::-;-1:-1:-1;8191:21:0;7626:616;-1:-1:-1;;7626:616:0:o;7782:438::-;-1:-1:-1;8235:1:0;;7626:616;-1:-1:-1;;7626:616:0:o;943:136::-;1001:7;1028:43;1032:1;1035;1028:43;;;;;;;;;;;;;;;;;:3;:43::i;15500:395::-;15584:29;15650:28;15673:4;15650:22;:28::i;:::-;15626:52;-1:-1:-1;15693:25:0;;15689:199;;-1:-1:-1;;;;;15762:24:0;;;;;;:18;:24;;;;;;:48;;15789:21;;15762:48;:::i;:::-;-1:-1:-1;;;;;15735:24:0;;;;;;:18;:24;;;;;;;:75;;;;15830:46;;;;;;15854:21;160:25:1;;148:2;133:18;;14:177;15830:46:0;;;;;;;;15689:199;15500:395;;;:::o;15903:497::-;16068:16;;;16082:1;16068:16;;;;;;;;16044:21;;16068:16;;;;;;;;;;-1:-1:-1;16068:16:0;16044:40;;16105:9;-1:-1:-1;;;;;16105:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16095:4;16100:1;16095:7;;;;;;;;:::i;:::-;;;;;;:26;-1:-1:-1;;;;;16095:26:0;;;-1:-1:-1;;;;;16095:26:0;;;;;16150:10;16132:4;16137:1;16132:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;16132:29:0;;;:7;;;;;;;;;:29;16200:192;;;;;:9;:60;;;;;;16268:14;;16200:192;;16298:6;;16319:4;;16346;;16366:15;;16200:192;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15975:425;15903:497;;:::o;9396:545::-;-1:-1:-1;;;;;9495:22:0;;9470;9495;;;:13;:22;;;;;;;9524:35;;;;9569:27;;;9566:370;;;9607:22;9632:30;:10;9647:14;9632;:30::i;:::-;9607:55;;9671:34;9681:7;9690:14;9671:9;:34::i;:::-;9730:14;9714:12;;:30;;;;;;;:::i;:::-;;;;-1:-1:-1;9566:370:0;;-1:-1:-1;;9566:370:0;;9774:14;9761:10;:27;9758:178;;;9799:20;9822:30;:14;9841:10;9822:18;:30::i;:::-;9799:53;;9861:30;9869:7;9878:12;9861:7;:30::i;:::-;9916:12;9900;;:28;;;;;;;:::i;:::-;;;;-1:-1:-1;;;9463:478:0;9396:545;;:::o;1087:226::-;1207:7;1243:12;1235:6;;;;1227:29;;;;-1:-1:-1;;;1227:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1267:9:0;1279:5;1283:1;1279;:5;:::i;:::-;1267:17;1087:226;-1:-1:-1;;;;;1087:226:0:o;8948:219::-;9055:106;9106:53;9107:36;9137:5;9107:25;;:29;;:36;;;;:::i;9106:53::-;-1:-1:-1;;;;;9055:37:0;;;;;;:28;:37;;;;;;;:49;:106::i;:::-;-1:-1:-1;;;;;9015:37:0;;;;;;;:28;:37;;;;;:146;;;;-1:-1:-1;8948:219:0:o;9173:217::-;9278:106;9329:53;9330:36;9360:5;9330:25;;:29;;:36;;;;:::i;9329:53::-;-1:-1:-1;;;;;9278:37:0;;;;;;:28;:37;;;;;;;:49;:106::i;4026:176::-;4082:6;;4112:5;4116:1;4112;:5;:::i;:::-;4101:16;;4142:1;4137;:6;;:16;;;;;4152:1;4147;:6;;4137:16;4136:38;;;;4163:1;4159;:5;:14;;;;;4172:1;4168;:5;4128:47;;;;;444:154:1;-1:-1:-1;;;;;523:5:1;519:54;512:5;509:65;499:93;;588:1;585;578:12;603:247;662:6;715:2;703:9;694:7;690:23;686:32;683:52;;;731:1;728;721:12;683:52;770:9;757:23;789:31;814:5;789:31;:::i;855:180::-;914:6;967:2;955:9;946:7;942:23;938:32;935:52;;;983:1;980;973:12;935:52;-1:-1:-1;1006:23:1;;855:180;-1:-1:-1;855:180:1:o;1730:184::-;-1:-1:-1;;;1779:1:1;1772:88;1879:4;1876:1;1869:15;1903:4;1900:1;1893:15;1919:274;1959:1;1985;1975:189;;-1:-1:-1;;;2017:1:1;2010:88;2121:4;2118:1;2111:15;2149:4;2146:1;2139:15;1975:189;-1:-1:-1;2178:9:1;;1919:274::o;2198:184::-;-1:-1:-1;;;2247:1:1;2240:88;2347:4;2344:1;2337:15;2371:4;2368:1;2361:15;2387:251;2457:6;2510:2;2498:9;2489:7;2485:23;2481:32;2478:52;;;2526:1;2523;2516:12;2478:52;2558:9;2552:16;2577:31;2602:5;2577:31;:::i;2643:184::-;-1:-1:-1;;;2692:1:1;2685:88;2792:4;2789:1;2782:15;2816:4;2813:1;2806:15;2832:484;2885:3;2923:5;2917:12;2950:6;2945:3;2938:19;2976:4;3005:2;3000:3;2996:12;2989:19;;3042:2;3035:5;3031:14;3063:1;3073:218;3087:6;3084:1;3081:13;3073:218;;;3152:13;;-1:-1:-1;;;;;3148:62:1;3136:75;;3231:12;;;;3266:15;;;;3109:1;3102:9;3073:218;;;-1:-1:-1;3307:3:1;;2832:484;-1:-1:-1;;;;;2832:484:1:o;3321:332::-;3528:6;3517:9;3510:25;3571:2;3566;3555:9;3551:18;3544:30;3491:4;3591:56;3643:2;3632:9;3628:18;3620:6;3591:56;:::i;:::-;3583:64;3321:332;-1:-1:-1;;;;3321:332:1:o;3658:1105::-;3753:6;3784:2;3827;3815:9;3806:7;3802:23;3798:32;3795:52;;;3843:1;3840;3833:12;3795:52;3876:9;3870:16;3905:18;3946:2;3938:6;3935:14;3932:34;;;3962:1;3959;3952:12;3932:34;4000:6;3989:9;3985:22;3975:32;;4045:7;4038:4;4034:2;4030:13;4026:27;4016:55;;4067:1;4064;4057:12;4016:55;4096:2;4090:9;4118:2;4114;4111:10;4108:36;;;4124:18;;:::i;:::-;4170:2;4167:1;4163:10;4202:2;4196:9;4265:2;4261:7;4256:2;4252;4248:11;4244:25;4236:6;4232:38;4320:6;4308:10;4305:22;4300:2;4288:10;4285:18;4282:46;4279:72;;;4331:18;;:::i;:::-;4367:2;4360:22;4417:18;;;4451:15;;;;-1:-1:-1;4493:11:1;;;4489:20;;;4521:19;;;4518:39;;;4553:1;4550;4543:12;4518:39;4577:11;;;;4597:135;4613:6;4608:3;4605:15;4597:135;;;4679:10;;4667:23;;4630:12;;;;4710;;;;4597:135;;;4751:6;3658:1105;-1:-1:-1;;;;;;;;3658:1105:1:o;6467:277::-;6534:6;6587:2;6575:9;6566:7;6562:23;6558:32;6555:52;;;6603:1;6600;6593:12;6555:52;6635:9;6629:16;6688:5;6681:13;6674:21;6667:5;6664:32;6654:60;;6710:1;6707;6700:12;6749:128;6816:9;;;6837:11;;;6834:37;;;6851:18;;:::i;6882:125::-;6947:9;;;6968:10;;;6965:36;;;6981:18;;:::i;7584:184::-;7654:6;7707:2;7695:9;7686:7;7682:23;7678:32;7675:52;;;7723:1;7720;7713:12;7675:52;-1:-1:-1;7746:16:1;;7584:184;-1:-1:-1;7584:184:1:o;8515:168::-;8588:9;;;8619;;8636:15;;;8630:22;;8616:37;8606:71;;8657:18;;:::i;9446:216::-;9510:9;;;9538:11;;;9485:3;9568:9;;9596:10;;9592:19;;9621:10;;9613:19;;9589:44;9586:70;;;9636:18;;:::i;:::-;9586:70;;9446:216;;;;:::o;9877:525::-;10140:6;10129:9;10122:25;10183:3;10178:2;10167:9;10163:18;10156:31;10103:4;10204:57;10256:3;10245:9;10241:19;10233:6;10204:57;:::i;:::-;-1:-1:-1;;;;;10297:55:1;;;;10292:2;10277:18;;10270:83;-1:-1:-1;10384:2:1;10369:18;10362:34;10196:65;9877:525;-1:-1:-1;;9877:525:1:o;10407:548::-;10519:4;10548:2;10577;10566:9;10559:21;10609:6;10603:13;10652:6;10647:2;10636:9;10632:18;10625:34;10677:1;10687:140;10701:6;10698:1;10695:13;10687:140;;;10796:14;;;10792:23;;10786:30;10762:17;;;10781:2;10758:26;10751:66;10716:10;;10687:140;;;10691:3;10876:1;10871:2;10862:6;10851:9;10847:22;10843:31;10836:42;10946:2;10939;10935:7;10930:2;10922:6;10918:15;10914:29;10903:9;10899:45;10895:54;10887:62;;;;10407:548;;;;:::o;10960:200::-;11026:9;;;10999:4;11054:9;;11082:10;;11094:12;;;11078:29;11117:12;;;11109:21;;11075:56;11072:82;;;11134:18;;:::i

Swarm Source

ipfs://3cb3a936574e5fbb741cdd9aef83dbc011031e2ebaa33b5aaa5b91a48e8cb38c

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.