ETH Price: $3,495.57 (+2.30%)
Gas: 12 Gwei

Contract

0xb13B85363A25c7361877EebaEcCed99e353F2aF9
 

Overview

ETH Balance

0 ETH

Eth Value

$0.00

Token Holdings

Multichain Info

No addresses found
Transaction Hash
Method
Block
From
To
Transfer194599332024-03-18 6:34:59120 days ago1710743699IN
Aladdin DAO: xALD Token
0 ETH0.0010367718.4597593
Transfer193023392024-02-25 4:53:59143 days ago1708836839IN
Aladdin DAO: xALD Token
0 ETH0.0008990223
Transfer189326742024-01-04 8:08:11194 days ago1704355691IN
Aladdin DAO: xALD Token
0 ETH0.0006723117.21071833
Transfer188193832023-12-19 10:23:23210 days ago1702981403IN
Aladdin DAO: xALD Token
0 ETH0.0020788653.21694151
Transfer188032432023-12-17 4:01:59213 days ago1702785719IN
Aladdin DAO: xALD Token
0 ETH0.0016546829.44275726
Transfer187511192023-12-09 20:43:11220 days ago1702154591IN
Aladdin DAO: xALD Token
0 ETH0.0009806525.08065577
Transfer183516202023-10-14 22:31:47276 days ago1697322707IN
Aladdin DAO: xALD Token
0 ETH0.000320975.71124589
Transfer183071592023-10-08 17:10:59282 days ago1696785059IN
Aladdin DAO: xALD Token
0 ETH0.000413987.36629887
Transfer176565772023-07-09 13:54:59373 days ago1688910899IN
Aladdin DAO: xALD Token
0 ETH0.0006048215.48301835
Transfer172701052023-05-16 5:07:59428 days ago1684213679IN
Aladdin DAO: xALD Token
0 ETH0.001767645.23501568
Transfer170240922023-04-11 9:53:47462 days ago1681206827IN
Aladdin DAO: xALD Token
0 ETH0.0008823122.57944034
Transfer168269182023-03-14 14:55:23490 days ago1678805723IN
Aladdin DAO: xALD Token
0 ETH0.0018253746.71335278
Transfer166106272023-02-12 5:36:11520 days ago1676180171IN
Aladdin DAO: xALD Token
0 ETH0.0005645314.44699068
Transfer165975272023-02-10 9:41:35522 days ago1676022095IN
Aladdin DAO: xALD Token
0 ETH0.0011605720.65072593
Transfer165722162023-02-06 20:44:47526 days ago1675716287IN
Aladdin DAO: xALD Token
0 ETH0.0012426531.79129489
Transfer165694462023-02-06 11:27:59526 days ago1675682879IN
Aladdin DAO: xALD Token
0 ETH0.0007227818.49133225
Transfer165654942023-02-05 22:13:47527 days ago1675635227IN
Aladdin DAO: xALD Token
0 ETH0.0009147623.40281211
Transfer165621882023-02-05 11:08:23527 days ago1675595303IN
Aladdin DAO: xALD Token
0 ETH0.0006258316.0110395
Transfer165598472023-02-05 3:18:35528 days ago1675567115IN
Aladdin DAO: xALD Token
0 ETH0.0006874317.58674497
Transfer165581722023-02-04 21:42:11528 days ago1675546931IN
Aladdin DAO: xALD Token
0 ETH0.0008499721.74527813
Transfer165581612023-02-04 21:39:59528 days ago1675546799IN
Aladdin DAO: xALD Token
0 ETH0.000920323.54432276
Transfer165557642023-02-04 13:38:23528 days ago1675517903IN
Aladdin DAO: xALD Token
0 ETH0.0008582621.95716606
Transfer165520382023-02-04 1:07:47529 days ago1675472867IN
Aladdin DAO: xALD Token
0 ETH0.0008355121.37535301
Transfer165490242023-02-03 15:02:47529 days ago1675436567IN
Aladdin DAO: xALD Token
0 ETH0.001640941.97966849
Transfer165489742023-02-03 14:52:47529 days ago1675435967IN
Aladdin DAO: xALD Token
0 ETH0.0012160731.10154401
View all transactions

View more zero value Internal Transactions in Advanced View mode

Advanced mode:
Loading...
Loading

Contract Source Code Verified (Exact Match)

Contract Name:
XALD

Compiler Version
v0.7.6+commit.7338295f

Optimization Enabled:
Yes with 1000 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-12-23
*/

// Sources flattened with hardhat v2.6.8 https://hardhat.org

// SPDX-License-Identifier: MIT

// File @openzeppelin/contracts/math/[email protected]

pragma solidity ^0.7.0;

/**
 * @dev Wrappers over Solidity's arithmetic operations with added overflow
 * checks.
 *
 * Arithmetic operations in Solidity wrap on overflow. This can easily result
 * in bugs, because programmers usually assume that an overflow raises an
 * error, which is the standard behavior in high level programming languages.
 * `SafeMath` restores this intuition by reverting the transaction when an
 * operation overflows.
 *
 * Using this library instead of the unchecked operations eliminates an entire
 * class of bugs, so it's recommended to use it always.
 */
library SafeMath {
    /**
     * @dev Returns the addition of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        uint256 c = a + b;
        if (c < a) return (false, 0);
        return (true, c);
    }

    /**
     * @dev Returns the substraction of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        if (b > a) return (false, 0);
        return (true, a - b);
    }

    /**
     * @dev Returns the multiplication of two unsigned integers, with an overflow flag.
     *
     * _Available since v3.4._
     */
    function tryMul(uint256 a, uint256 b) internal pure returns (bool, 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 (true, 0);
        uint256 c = a * b;
        if (c / a != b) return (false, 0);
        return (true, c);
    }

    /**
     * @dev Returns the division of two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        if (b == 0) return (false, 0);
        return (true, a / b);
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers, with a division by zero flag.
     *
     * _Available since v3.4._
     */
    function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) {
        if (b == 0) return (false, 0);
        return (true, a % b);
    }

    /**
     * @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) {
        require(b <= a, "SafeMath: subtraction overflow");
        return a - b;
    }

    /**
     * @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) {
        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, reverting 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) {
        require(b > 0, "SafeMath: division by zero");
        return a / b;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting 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) {
        require(b > 0, "SafeMath: modulo by zero");
        return a % b;
    }

    /**
     * @dev Returns the subtraction of two unsigned integers, reverting with custom message on
     * overflow (when the result is negative).
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {trySub}.
     *
     * 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);
        return a - b;
    }

    /**
     * @dev Returns the integer division of two unsigned integers, reverting with custom message on
     * division by zero. The result is rounded towards zero.
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {tryDiv}.
     *
     * 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);
        return a / b;
    }

    /**
     * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo),
     * reverting with custom message when dividing by zero.
     *
     * CAUTION: This function is deprecated because it requires allocating memory for the error
     * message unnecessarily. For custom revert reasons use {tryMod}.
     *
     * 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;
    }
}


// File @openzeppelin/contracts/token/ERC20/[email protected]

pragma solidity ^0.7.0;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    /**
     * @dev Moves `amount` tokens from the caller's account to `recipient`.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transfer(address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Returns the remaining number of tokens that `spender` will be
     * allowed to spend on behalf of `owner` through {transferFrom}. This is
     * zero by default.
     *
     * This value changes when {approve} or {transferFrom} are called.
     */
    function allowance(address owner, address spender) external view returns (uint256);

    /**
     * @dev Sets `amount` as the allowance of `spender` over the caller's tokens.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * IMPORTANT: Beware that changing an allowance with this method brings the risk
     * that someone may use both the old and the new allowance by unfortunate
     * transaction ordering. One possible solution to mitigate this race
     * condition is to first reduce the spender's allowance to 0 and set the
     * desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     *
     * Emits an {Approval} event.
     */
    function approve(address spender, uint256 amount) external returns (bool);

    /**
     * @dev Moves `amount` tokens from `sender` to `recipient` using the
     * allowance mechanism. `amount` is then deducted from the caller's
     * allowance.
     *
     * Returns a boolean value indicating whether the operation succeeded.
     *
     * Emits a {Transfer} event.
     */
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);

    /**
     * @dev Emitted when `value` tokens are moved from one account (`from`) to
     * another (`to`).
     *
     * Note that `value` may be zero.
     */
    event Transfer(address indexed from, address indexed to, uint256 value);

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);
}


// File contracts/interfaces/IXALD.sol

pragma solidity ^0.7.6;

interface IXALD is IERC20 {
  function stake(address _recipient, uint256 _aldAmount) external;

  function unstake(address _account, uint256 _xALDAmount) external;

  function rebase(uint256 epoch, uint256 profit) external;

  function getSharesByALD(uint256 _aldAmount) external view returns (uint256);

  function getALDByShares(uint256 _sharesAmount) external view returns (uint256);
}


// File contracts/token/XALD.sol

pragma solidity ^0.7.6;

contract XALD is IXALD {
  using SafeMath for uint256;

  event MintShare(address recipient, uint256 share);
  event BurnShare(address account, uint256 share);
  event Rebase(uint256 epoch, uint256 profit);

  /**
   * @dev xALD balances are dynamic and are calculated based on the accounts' shares
   * and the total amount of staked ALD Token. Account shares aren't normalized, so
   * the contract also stores the sum of all shares to calculate each account's token
   * balance which equals to:
   *
   *   _shares[account] * _totalSupply / _totalShares
   */
  mapping(address => uint256) private _shares;
  mapping(address => mapping(address => uint256)) private _allowances;

  uint256 private _totalSupply;
  uint256 private _totalShares;

  address public staking;

  address private _initializer;

  modifier onlyStaking() {
    require(msg.sender == staking, "XALD: only staking contract");
    _;
  }

  constructor() {
    _initializer = msg.sender;
  }

  function initialize(address _staking) external {
    require(_initializer == msg.sender, "XALD: only initializer");
    require(_staking != address(0), "XALD: not zero address");

    staking = _staking;
    _initializer = address(0);
  }

  /**
   * @dev Returns the name of the token.
   */
  function name() public pure returns (string memory) {
    return "staked ALD Token";
  }

  /**
   * @dev Returns the symbol of the token, usually a shorter version of the
   * name.
   */
  function symbol() public pure returns (string memory) {
    return "xALD";
  }

  /**
   * @dev Returns the number of decimals used to get its user representation.
   */
  function decimals() public pure returns (uint8) {
    return 18;
  }

  /**
   * @dev See {IERC20-totalSupply}.
   */
  function totalSupply() public view override returns (uint256) {
    return _totalSupply;
  }

  /**
   * @dev Returns the total shares of sALD.
   */
  function totalShares() public view returns (uint256) {
    return _totalShares;
  }

  /**
   * @dev See {IERC20-balanceOf}.
   */
  function balanceOf(address _account) public view override returns (uint256) {
    return getALDByShares(_shares[_account]);
  }

  /**
   * @return the amount of shares owned by `_account`.
   */
  function sharesOf(address _account) public view returns (uint256) {
    return _shares[_account];
  }

  /**
   * @dev See {IERC20-transfer}.
   */
  function transfer(address _recipient, uint256 _amount) public override returns (bool) {
    _transfer(msg.sender, _recipient, _amount);
    return true;
  }

  /**
   * @dev See {IERC20-allowance}.
   */
  function allowance(address _owner, address _spender) public view override returns (uint256) {
    return _allowances[_owner][_spender];
  }

  /**
   * @dev See {IERC20-approve}.
   */
  function approve(address _spender, uint256 _amount) public override returns (bool) {
    _approve(msg.sender, _spender, _amount);
    return true;
  }

  /**
   * @dev See {IERC20-transferFrom}.
   */
  function transferFrom(
    address _sender,
    address _recipient,
    uint256 _amount
  ) public override returns (bool) {
    uint256 currentAllowance = _allowances[_sender][msg.sender];
    require(currentAllowance >= _amount, "XALD: transfer amount exceeds allowance");

    _transfer(_sender, _recipient, _amount);
    _approve(_sender, msg.sender, currentAllowance.sub(_amount));
    return true;
  }

  /**
   * @dev Atomically increases the allowance granted to `spender` by the caller.
   */
  function increaseAllowance(address _spender, uint256 _addedValue) public returns (bool) {
    _approve(msg.sender, _spender, _allowances[msg.sender][_spender].add(_addedValue));
    return true;
  }

  /**
   * @dev Atomically decreases the allowance granted to `spender` by the caller.
   */
  function decreaseAllowance(address _spender, uint256 _subtractedValue) public returns (bool) {
    uint256 currentAllowance = _allowances[msg.sender][_spender];
    require(currentAllowance >= _subtractedValue, "XALD: decreased allowance below zero");

    _approve(msg.sender, _spender, currentAllowance.sub(_subtractedValue));
    return true;
  }

  function stake(address _recipient, uint256 _aldAmount) external override onlyStaking {
    uint256 _sharesAmount = getSharesByALD(_aldAmount);
    _totalSupply = _totalSupply.add(_aldAmount);
    _mintShares(_recipient, _sharesAmount);
  }

  function unstake(address _account, uint256 _xALDAmount) external override onlyStaking {
    uint256 _sharesAmount = getSharesByALD(_xALDAmount);
    _totalSupply = _totalSupply.sub(_xALDAmount);
    _burnShares(_account, _sharesAmount);
  }

  function rebase(uint256 epoch, uint256 profit) external override onlyStaking {
    _totalSupply = _totalSupply.add(profit);

    emit Rebase(epoch, profit);
  }

  function getSharesByALD(uint256 _aldAmount) public view override returns (uint256) {
    uint256 totalPooledALD = _totalSupply;
    if (totalPooledALD == 0) {
      return _aldAmount;
    } else {
      return _aldAmount.mul(_totalShares).div(totalPooledALD);
    }
  }

  function getALDByShares(uint256 _sharesAmount) public view override returns (uint256) {
    uint256 totalShares_ = _totalShares;
    if (totalShares_ == 0) {
      return 0;
    } else {
      return _sharesAmount.mul(_totalSupply).div(totalShares_);
    }
  }

  /**
   * @dev Moves `_amount` tokens from `_sender` to `_recipient`.
   */
  function _transfer(
    address _sender,
    address _recipient,
    uint256 _amount
  ) internal {
    uint256 _sharesToTransfer = getSharesByALD(_amount);
    _transferShares(_sender, _recipient, _sharesToTransfer);
    emit Transfer(_sender, _recipient, _amount);
  }

  /**
   * @dev Sets `_amount` as the allowance of `_spender` over the `_owner` s tokens.
   */
  function _approve(
    address _owner,
    address _spender,
    uint256 _amount
  ) internal {
    require(_owner != address(0), "XALD: approve from the zero address");
    require(_spender != address(0), "XALD: approve to the zero address");

    _allowances[_owner][_spender] = _amount;
    emit Approval(_owner, _spender, _amount);
  }

  /**
   * @dev Moves `_sharesAmount` shares from `_sender` to `_recipient`.
   */
  function _transferShares(
    address _sender,
    address _recipient,
    uint256 _sharesAmount
  ) internal {
    require(_sender != address(0), "XALD: transfer from the zero address");
    require(_recipient != address(0), "XALD: transfer to the zero address");

    uint256 currentSenderShares = _shares[_sender];
    require(_sharesAmount <= currentSenderShares, "XALD: transfer amount exceeds balance");

    _shares[_sender] = currentSenderShares.sub(_sharesAmount);
    _shares[_recipient] = _shares[_recipient].add(_sharesAmount);
  }

  /**
   * @dev Creates `_sharesAmount` shares and assigns them to `_recipient`, increasing the total amount of shares.
   *
   * This doesn't increase the token total supply.
   */
  function _mintShares(address _recipient, uint256 _sharesAmount) internal {
    require(_recipient != address(0), "XALD: mint to the zero address");

    _totalShares = _totalShares.add(_sharesAmount);

    _shares[_recipient] = _shares[_recipient].add(_sharesAmount);

    emit MintShare(_recipient, _sharesAmount);
  }

  /**
   * @dev Destroys `_sharesAmount` shares from `_account`'s holdings, decreasing the total amount of shares.
   *
   * This doesn't decrease the token total supply.
   */
  function _burnShares(address _account, uint256 _sharesAmount) internal {
    require(_account != address(0), "XALD: burn from the zero address");

    uint256 accountShares = _shares[_account];
    require(_sharesAmount <= accountShares, "XALD: burn amount exceeds balance");

    _totalShares = _totalShares.sub(_sharesAmount);

    _shares[_account] = accountShares.sub(_sharesAmount);

    emit BurnShare(_account, _sharesAmount);
  }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"uint256","name":"share","type":"uint256"}],"name":"BurnShare","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"recipient","type":"address"},{"indexed":false,"internalType":"uint256","name":"share","type":"uint256"}],"name":"MintShare","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"epoch","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"profit","type":"uint256"}],"name":"Rebase","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_sharesAmount","type":"uint256"}],"name":"getALDByShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_aldAmount","type":"uint256"}],"name":"getSharesByALD","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_spender","type":"address"},{"internalType":"uint256","name":"_addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_staking","type":"address"}],"name":"initialize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"epoch","type":"uint256"},{"internalType":"uint256","name":"profit","type":"uint256"}],"name":"rebase","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"}],"name":"sharesOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_recipient","type":"address"},{"internalType":"uint256","name":"_aldAmount","type":"uint256"}],"name":"stake","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"staking","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_recipient","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_sender","type":"address"},{"internalType":"address","name":"_recipient","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_account","type":"address"},{"internalType":"uint256","name":"_xALDAmount","type":"uint256"}],"name":"unstake","outputs":[],"stateMutability":"nonpayable","type":"function"}]

608060405234801561001057600080fd5b50600580546001600160a01b031916331790556111c3806100326000396000f3fe608060405234801561001057600080fd5b506004361061016c5760003560e01c806375b9a54e116100cd578063c2a672e011610081578063dd62ed3e11610066578063dd62ed3e1461043a578063e920e0e414610468578063f5eb42dc146104855761016c565b8063c2a672e0146103e8578063c4d66de8146104145761016c565b8063a457c2d7116100b2578063a457c2d714610364578063a9059cbb14610390578063adc9772e146103bc5761016c565b806375b9a54e1461033f57806395d89b411461035c5761016c565b8063313ce567116101245780633a98ef39116101095780633a98ef39146102ed5780634cf088d9146102f557806370a08231146103195761016c565b8063313ce567146102a357806339509351146102c15761016c565b8063095ea7b311610155578063095ea7b31461021357806318160ddd1461025357806323b872dd1461026d5761016c565b8063058ecdb41461017157806306fdde0314610196575b600080fd5b6101946004803603604081101561018757600080fd5b50803590602001356104ab565b005b61019e610559565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d85781810151838201526020016101c0565b50505050905090810190601f1680156102055780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023f6004803603604081101561022957600080fd5b506001600160a01b038135169060200135610590565b604080519115158252519081900360200190f35b61025b6105a7565b60408051918252519081900360200190f35b61023f6004803603606081101561028357600080fd5b506001600160a01b038135811691602081013590911690604001356105ad565b6102ab61063a565b6040805160ff9092168252519081900360200190f35b61023f600480360360408110156102d757600080fd5b506001600160a01b03813516906020013561063f565b61025b610675565b6102fd61067b565b604080516001600160a01b039092168252519081900360200190f35b61025b6004803603602081101561032f57600080fd5b50356001600160a01b031661068a565b61025b6004803603602081101561035557600080fd5b50356106b4565b61019e6106ef565b61023f6004803603604081101561037a57600080fd5b506001600160a01b038135169060200135610726565b61023f600480360360408110156103a657600080fd5b506001600160a01b0381351690602001356107a2565b610194600480360360408110156103d257600080fd5b506001600160a01b0381351690602001356107af565b610194600480360360408110156103fe57600080fd5b506001600160a01b03813516906020013561083b565b6101946004803603602081101561042a57600080fd5b50356001600160a01b03166108c2565b61025b6004803603604081101561045057600080fd5b506001600160a01b03813581169160200135166109bd565b61025b6004803603602081101561047e57600080fd5b50356109e8565b61025b6004803603602081101561049b57600080fd5b50356001600160a01b0316610a16565b6004546001600160a01b0316331461050a576040805162461bcd60e51b815260206004820152601b60248201527f58414c443a206f6e6c79207374616b696e6720636f6e74726163740000000000604482015290519081900360640190fd5b6002546105179082610a31565b600255604080518381526020810183905281517f11c6bf55864ff83827df712625d7a80e5583eef0264921025e7cd22003a21511929181900390910190a15050565b60408051808201909152601081527f7374616b656420414c4420546f6b656e00000000000000000000000000000000602082015290565b600061059d338484610a92565b5060015b92915050565b60025490565b6001600160a01b0383166000908152600160209081526040808320338452909152812054828110156106105760405162461bcd60e51b81526004018080602001828103825260278152602001806110b86027913960400191505060405180910390fd5b61061b858585610b7e565b61062f853361062a8487610be7565b610a92565b506001949350505050565b601290565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161059d91859061062a9086610a31565b60035490565b6004546001600160a01b031681565b6001600160a01b0381166000908152602081905260408120546106ac906109e8565b90505b919050565b600254600090806106c857829150506106af565b6106e7816106e160035486610c4490919063ffffffff16565b90610c9d565b9150506106af565b60408051808201909152600481527f78414c4400000000000000000000000000000000000000000000000000000000602082015290565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156107895760405162461bcd60e51b815260040180806020018281038252602481526020018061116a6024913960400191505060405180910390fd5b610798338561062a8487610be7565b5060019392505050565b600061059d338484610b7e565b6004546001600160a01b0316331461080e576040805162461bcd60e51b815260206004820152601b60248201527f58414c443a206f6e6c79207374616b696e6720636f6e74726163740000000000604482015290519081900360640190fd5b6000610819826106b4565b6002549091506108299083610a31565b6002556108368382610d04565b505050565b6004546001600160a01b0316331461089a576040805162461bcd60e51b815260206004820152601b60248201527f58414c443a206f6e6c79207374616b696e6720636f6e74726163740000000000604482015290519081900360640190fd5b60006108a5826106b4565b6002549091506108b59083610be7565b6002556108368382610dec565b6005546001600160a01b03163314610921576040805162461bcd60e51b815260206004820152601660248201527f58414c443a206f6e6c7920696e697469616c697a657200000000000000000000604482015290519081900360640190fd5b6001600160a01b03811661097c576040805162461bcd60e51b815260206004820152601660248201527f58414c443a206e6f74207a65726f206164647265737300000000000000000000604482015290519081900360640190fd5b600480546001600160a01b039092167fffffffffffffffffffffffff0000000000000000000000000000000000000000928316179055600580549091169055565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600354600090806109fd5760009150506106af565b6106e7816106e160025486610c4490919063ffffffff16565b6001600160a01b031660009081526020819052604090205490565b600082820183811015610a8b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038316610ad75760405162461bcd60e51b81526004018080602001828103825260238152602001806110526023913960400191505060405180910390fd5b6001600160a01b038216610b1c5760405162461bcd60e51b81526004018080602001828103825260218152602001806110df6021913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6000610b89826106b4565b9050610b96848483610f14565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050565b600082821115610c3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082610c53575060006105a1565b82820282848281610c6057fe5b0414610a8b5760405162461bcd60e51b81526004018080602001828103825260218152602001806110756021913960400191505060405180910390fd5b6000808211610cf3576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610cfc57fe5b049392505050565b6001600160a01b038216610d5f576040805162461bcd60e51b815260206004820152601e60248201527f58414c443a206d696e7420746f20746865207a65726f20616464726573730000604482015290519081900360640190fd5b600354610d6c9082610a31565b6003556001600160a01b038216600090815260208190526040902054610d929082610a31565b6001600160a01b0383166000818152602081815260409182902093909355805191825291810183905281517fa336a0cb19174a9c3ff5851ad3dd274df5c9323dbbc6e2177031c7f7c0319d77929181900390910190a15050565b6001600160a01b038216610e47576040805162461bcd60e51b815260206004820181905260248201527f58414c443a206275726e2066726f6d20746865207a65726f2061646472657373604482015290519081900360640190fd5b6001600160a01b03821660009081526020819052604090205480821115610e9f5760405162461bcd60e51b81526004018080602001828103825260218152602001806111246021913960400191505060405180910390fd5b600354610eac9083610be7565b600355610eb98183610be7565b6001600160a01b0384166000818152602081815260409182902093909355805191825291810184905281517ffaddfec5b2541216c9e8d42ec31574199eae6b232c24690ab7f661eb95f5859f929181900390910190a1505050565b6001600160a01b038316610f595760405162461bcd60e51b81526004018080602001828103825260248152602001806111006024913960400191505060405180910390fd5b6001600160a01b038216610f9e5760405162461bcd60e51b81526004018080602001828103825260228152602001806110966022913960400191505060405180910390fd5b6001600160a01b03831660009081526020819052604090205480821115610ff65760405162461bcd60e51b81526004018080602001828103825260258152602001806111456025913960400191505060405180910390fd5b6110008183610be7565b6001600160a01b03808616600090815260208190526040808220939093559085168152205461102f9083610a31565b6001600160a01b0390931660009081526020819052604090209290925550505056fe58414c443a20617070726f76652066726f6d20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7758414c443a207472616e7366657220746f20746865207a65726f206164647265737358414c443a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636558414c443a20617070726f766520746f20746865207a65726f206164647265737358414c443a207472616e736665722066726f6d20746865207a65726f206164647265737358414c443a206275726e20616d6f756e7420657863656564732062616c616e636558414c443a207472616e7366657220616d6f756e7420657863656564732062616c616e636558414c443a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220df7f6fb3e02bfcfe49bd1a824071bd48939193a44d45fd47b82b4ba7ff6df9e864736f6c63430007060033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061016c5760003560e01c806375b9a54e116100cd578063c2a672e011610081578063dd62ed3e11610066578063dd62ed3e1461043a578063e920e0e414610468578063f5eb42dc146104855761016c565b8063c2a672e0146103e8578063c4d66de8146104145761016c565b8063a457c2d7116100b2578063a457c2d714610364578063a9059cbb14610390578063adc9772e146103bc5761016c565b806375b9a54e1461033f57806395d89b411461035c5761016c565b8063313ce567116101245780633a98ef39116101095780633a98ef39146102ed5780634cf088d9146102f557806370a08231146103195761016c565b8063313ce567146102a357806339509351146102c15761016c565b8063095ea7b311610155578063095ea7b31461021357806318160ddd1461025357806323b872dd1461026d5761016c565b8063058ecdb41461017157806306fdde0314610196575b600080fd5b6101946004803603604081101561018757600080fd5b50803590602001356104ab565b005b61019e610559565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d85781810151838201526020016101c0565b50505050905090810190601f1680156102055780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023f6004803603604081101561022957600080fd5b506001600160a01b038135169060200135610590565b604080519115158252519081900360200190f35b61025b6105a7565b60408051918252519081900360200190f35b61023f6004803603606081101561028357600080fd5b506001600160a01b038135811691602081013590911690604001356105ad565b6102ab61063a565b6040805160ff9092168252519081900360200190f35b61023f600480360360408110156102d757600080fd5b506001600160a01b03813516906020013561063f565b61025b610675565b6102fd61067b565b604080516001600160a01b039092168252519081900360200190f35b61025b6004803603602081101561032f57600080fd5b50356001600160a01b031661068a565b61025b6004803603602081101561035557600080fd5b50356106b4565b61019e6106ef565b61023f6004803603604081101561037a57600080fd5b506001600160a01b038135169060200135610726565b61023f600480360360408110156103a657600080fd5b506001600160a01b0381351690602001356107a2565b610194600480360360408110156103d257600080fd5b506001600160a01b0381351690602001356107af565b610194600480360360408110156103fe57600080fd5b506001600160a01b03813516906020013561083b565b6101946004803603602081101561042a57600080fd5b50356001600160a01b03166108c2565b61025b6004803603604081101561045057600080fd5b506001600160a01b03813581169160200135166109bd565b61025b6004803603602081101561047e57600080fd5b50356109e8565b61025b6004803603602081101561049b57600080fd5b50356001600160a01b0316610a16565b6004546001600160a01b0316331461050a576040805162461bcd60e51b815260206004820152601b60248201527f58414c443a206f6e6c79207374616b696e6720636f6e74726163740000000000604482015290519081900360640190fd5b6002546105179082610a31565b600255604080518381526020810183905281517f11c6bf55864ff83827df712625d7a80e5583eef0264921025e7cd22003a21511929181900390910190a15050565b60408051808201909152601081527f7374616b656420414c4420546f6b656e00000000000000000000000000000000602082015290565b600061059d338484610a92565b5060015b92915050565b60025490565b6001600160a01b0383166000908152600160209081526040808320338452909152812054828110156106105760405162461bcd60e51b81526004018080602001828103825260278152602001806110b86027913960400191505060405180910390fd5b61061b858585610b7e565b61062f853361062a8487610be7565b610a92565b506001949350505050565b601290565b3360008181526001602090815260408083206001600160a01b0387168452909152812054909161059d91859061062a9086610a31565b60035490565b6004546001600160a01b031681565b6001600160a01b0381166000908152602081905260408120546106ac906109e8565b90505b919050565b600254600090806106c857829150506106af565b6106e7816106e160035486610c4490919063ffffffff16565b90610c9d565b9150506106af565b60408051808201909152600481527f78414c4400000000000000000000000000000000000000000000000000000000602082015290565b3360009081526001602090815260408083206001600160a01b0386168452909152812054828110156107895760405162461bcd60e51b815260040180806020018281038252602481526020018061116a6024913960400191505060405180910390fd5b610798338561062a8487610be7565b5060019392505050565b600061059d338484610b7e565b6004546001600160a01b0316331461080e576040805162461bcd60e51b815260206004820152601b60248201527f58414c443a206f6e6c79207374616b696e6720636f6e74726163740000000000604482015290519081900360640190fd5b6000610819826106b4565b6002549091506108299083610a31565b6002556108368382610d04565b505050565b6004546001600160a01b0316331461089a576040805162461bcd60e51b815260206004820152601b60248201527f58414c443a206f6e6c79207374616b696e6720636f6e74726163740000000000604482015290519081900360640190fd5b60006108a5826106b4565b6002549091506108b59083610be7565b6002556108368382610dec565b6005546001600160a01b03163314610921576040805162461bcd60e51b815260206004820152601660248201527f58414c443a206f6e6c7920696e697469616c697a657200000000000000000000604482015290519081900360640190fd5b6001600160a01b03811661097c576040805162461bcd60e51b815260206004820152601660248201527f58414c443a206e6f74207a65726f206164647265737300000000000000000000604482015290519081900360640190fd5b600480546001600160a01b039092167fffffffffffffffffffffffff0000000000000000000000000000000000000000928316179055600580549091169055565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b600354600090806109fd5760009150506106af565b6106e7816106e160025486610c4490919063ffffffff16565b6001600160a01b031660009081526020819052604090205490565b600082820183811015610a8b576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b6001600160a01b038316610ad75760405162461bcd60e51b81526004018080602001828103825260238152602001806110526023913960400191505060405180910390fd5b6001600160a01b038216610b1c5760405162461bcd60e51b81526004018080602001828103825260218152602001806110df6021913960400191505060405180910390fd5b6001600160a01b03808416600081815260016020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6000610b89826106b4565b9050610b96848483610f14565b826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a350505050565b600082821115610c3e576040805162461bcd60e51b815260206004820152601e60248201527f536166654d6174683a207375627472616374696f6e206f766572666c6f770000604482015290519081900360640190fd5b50900390565b600082610c53575060006105a1565b82820282848281610c6057fe5b0414610a8b5760405162461bcd60e51b81526004018080602001828103825260218152602001806110756021913960400191505060405180910390fd5b6000808211610cf3576040805162461bcd60e51b815260206004820152601a60248201527f536166654d6174683a206469766973696f6e206279207a65726f000000000000604482015290519081900360640190fd5b818381610cfc57fe5b049392505050565b6001600160a01b038216610d5f576040805162461bcd60e51b815260206004820152601e60248201527f58414c443a206d696e7420746f20746865207a65726f20616464726573730000604482015290519081900360640190fd5b600354610d6c9082610a31565b6003556001600160a01b038216600090815260208190526040902054610d929082610a31565b6001600160a01b0383166000818152602081815260409182902093909355805191825291810183905281517fa336a0cb19174a9c3ff5851ad3dd274df5c9323dbbc6e2177031c7f7c0319d77929181900390910190a15050565b6001600160a01b038216610e47576040805162461bcd60e51b815260206004820181905260248201527f58414c443a206275726e2066726f6d20746865207a65726f2061646472657373604482015290519081900360640190fd5b6001600160a01b03821660009081526020819052604090205480821115610e9f5760405162461bcd60e51b81526004018080602001828103825260218152602001806111246021913960400191505060405180910390fd5b600354610eac9083610be7565b600355610eb98183610be7565b6001600160a01b0384166000818152602081815260409182902093909355805191825291810184905281517ffaddfec5b2541216c9e8d42ec31574199eae6b232c24690ab7f661eb95f5859f929181900390910190a1505050565b6001600160a01b038316610f595760405162461bcd60e51b81526004018080602001828103825260248152602001806111006024913960400191505060405180910390fd5b6001600160a01b038216610f9e5760405162461bcd60e51b81526004018080602001828103825260228152602001806110966022913960400191505060405180910390fd5b6001600160a01b03831660009081526020819052604090205480821115610ff65760405162461bcd60e51b81526004018080602001828103825260258152602001806111456025913960400191505060405180910390fd5b6110008183610be7565b6001600160a01b03808616600090815260208190526040808220939093559085168152205461102f9083610a31565b6001600160a01b0390931660009081526020819052604090209290925550505056fe58414c443a20617070726f76652066726f6d20746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7758414c443a207472616e7366657220746f20746865207a65726f206164647265737358414c443a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636558414c443a20617070726f766520746f20746865207a65726f206164647265737358414c443a207472616e736665722066726f6d20746865207a65726f206164647265737358414c443a206275726e20616d6f756e7420657863656564732062616c616e636558414c443a207472616e7366657220616d6f756e7420657863656564732062616c616e636558414c443a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220df7f6fb3e02bfcfe49bd1a824071bd48939193a44d45fd47b82b4ba7ff6df9e864736f6c63430007060033

Deployed Bytecode Sourcemap

10924:8122:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15702:164;;;;;;;;;;;;;;;;-1:-1:-1;15702:164:0;;;;;;;:::i;:::-;;12234:90;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13808:153;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;13808:153:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;12739:94;;;:::i;:::-;;;;;;;;;;;;;;;;14019:418;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;14019:418:0;;;;;;;;;;;;;;;;;:::i;12612:70::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14539:201;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;14539:201:0;;;;;;;;:::i;12898:85::-;;;:::i;11695:22::-;;;:::i;:::-;;;;-1:-1:-1;;;;;11695:22:0;;;;;;;;;;;;;;13038:129;;;;;;;;;;;;;;;;-1:-1:-1;13038:129:0;-1:-1:-1;;;;;13038:129:0;;:::i;15872:276::-;;;;;;;;;;;;;;;;-1:-1:-1;15872:276:0;;:::i;12433:80::-;;;:::i;14842:355::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;14842:355:0;;;;;;;;:::i;13400:159::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;13400:159:0;;;;;;;;:::i;15203:243::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;15203:243:0;;;;;;;;:::i;15452:244::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;15452:244:0;;;;;;;;:::i;11928:::-;;;;;;;;;;;;;;;;-1:-1:-1;11928:244:0;-1:-1:-1;;;;;11928:244:0;;:::i;13614:141::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;13614:141:0;;;;;;;;;;:::i;16154:267::-;;;;;;;;;;;;;;;;-1:-1:-1;16154:267:0;;:::i;13243:103::-;;;;;;;;;;;;;;;;-1:-1:-1;13243:103:0;-1:-1:-1;;;;;13243:103:0;;:::i;15702:164::-;11811:7;;-1:-1:-1;;;;;11811:7:0;11797:10;:21;11789:61;;;;;-1:-1:-1;;;11789:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15801:12:::1;::::0;:24:::1;::::0;15818:6;15801:16:::1;:24::i;:::-;15786:12;:39:::0;15839:21:::1;::::0;;;;;::::1;::::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;15702:164:::0;;:::o;12234:90::-;12293:25;;;;;;;;;;;;;;;;;12234:90;:::o;13808:153::-;13885:4;13898:39;13907:10;13919:8;13929:7;13898:8;:39::i;:::-;-1:-1:-1;13951:4:0;13808:153;;;;;:::o;12739:94::-;12815:12;;12739:94;:::o;14019:418::-;-1:-1:-1;;;;;14180:20:0;;14140:4;14180:20;;;:11;:20;;;;;;;;14201:10;14180:32;;;;;;;;14227:27;;;;14219:79;;;;-1:-1:-1;;;14219:79:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14307:39;14317:7;14326:10;14338:7;14307:9;:39::i;:::-;14353:60;14362:7;14371:10;14383:29;:16;14404:7;14383:20;:29::i;:::-;14353:8;:60::i;:::-;-1:-1:-1;14427:4:0;;14019:418;-1:-1:-1;;;;14019:418:0:o;12612:70::-;12674:2;12612:70;:::o;14539:201::-;14643:10;14621:4;14665:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;14665:33:0;;;;;;;;;;14621:4;;14634:82;;14655:8;;14665:50;;14703:11;14665:37;:50::i;12898:85::-;12965:12;;12898:85;:::o;11695:22::-;;;-1:-1:-1;;;;;11695:22:0;;:::o;13038:129::-;-1:-1:-1;;;;;13143:17:0;;13105:7;13143:17;;;;;;;;;;;13128:33;;:14;:33::i;:::-;13121:40;;13038:129;;;;:::o;15872:276::-;15987:12;;15946:7;;16010:19;16006:137;;16047:10;16040:17;;;;;16006:137;16087:48;16120:14;16087:28;16102:12;;16087:10;:14;;:28;;;;:::i;:::-;:32;;:48::i;:::-;16080:55;;;;;12433:80;12494:13;;;;;;;;;;;;;;;;;12433:80;:::o;14842:355::-;14981:10;14929:4;14969:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;14969:33:0;;;;;;;;;;15017:36;;;;15009:85;;;;-1:-1:-1;;;15009:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15103:70;15112:10;15124:8;15134:38;:16;15155;15134:20;:38::i;15103:70::-;-1:-1:-1;15187:4:0;;14842:355;-1:-1:-1;;;14842:355:0:o;13400:159::-;13480:4;13493:42;13503:10;13515;13527:7;13493:9;:42::i;15203:243::-;11811:7;;-1:-1:-1;;;;;11811:7:0;11797:10;:21;11789:61;;;;;-1:-1:-1;;;11789:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15295:21:::1;15319:26;15334:10;15319:14;:26::i;:::-;15367:12;::::0;15295:50;;-1:-1:-1;15367:28:0::1;::::0;15384:10;15367:16:::1;:28::i;:::-;15352:12;:43:::0;15402:38:::1;15414:10:::0;15426:13;15402:11:::1;:38::i;:::-;11857:1;15203:243:::0;;:::o;15452:244::-;11811:7;;-1:-1:-1;;;;;11811:7:0;11797:10;:21;11789:61;;;;;-1:-1:-1;;;11789:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;15545:21:::1;15569:27;15584:11;15569:14;:27::i;:::-;15618:12;::::0;15545:51;;-1:-1:-1;15618:29:0::1;::::0;15635:11;15618:16:::1;:29::i;:::-;15603:12;:44:::0;15654:36:::1;15666:8:::0;15676:13;15654:11:::1;:36::i;11928:244::-:0;11990:12;;-1:-1:-1;;;;;11990:12:0;12006:10;11990:26;11982:61;;;;;-1:-1:-1;;;11982:61:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;12058:22:0;;12050:57;;;;;-1:-1:-1;;;12050:57:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;12116:7;:18;;-1:-1:-1;;;;;12116:18:0;;;;;;;;;;12141:12;:25;;;;;;;11928:244::o;13614:141::-;-1:-1:-1;;;;;13720:19:0;;;13697:7;13720:19;;;:11;:19;;;;;;;;:29;;;;;;;;;;;;;13614:141::o;16154:267::-;16270:12;;16231:7;;16293:17;16289:127;;16328:1;16321:8;;;;;16289:127;16359:49;16395:12;16359:31;16377:12;;16359:13;:17;;:31;;;;:::i;13243:103::-;-1:-1:-1;;;;;13323:17:0;13300:7;13323:17;;;;;;;;;;;;13243:103::o;2901:179::-;2959:7;2991:5;;;3015:6;;;;3007:46;;;;;-1:-1:-1;;;3007:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;3071:1;2901:179;-1:-1:-1;;;2901:179:0:o;16890:349::-;-1:-1:-1;;;;;17003:20:0;;16995:68;;;;-1:-1:-1;;;16995:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17078:22:0;;17070:68;;;;-1:-1:-1;;;17070:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17147:19:0;;;;;;;:11;:19;;;;;;;;:29;;;;;;;;;;;;;:39;;;17198:35;;;;;;;;;;;;;;;;;16890:349;;;:::o;16507:278::-;16616:25;16644:23;16659:7;16644:14;:23::i;:::-;16616:51;;16674:55;16690:7;16699:10;16711:17;16674:15;:55::i;:::-;16759:10;-1:-1:-1;;;;;16741:38:0;16750:7;-1:-1:-1;;;;;16741:38:0;;16771:7;16741:38;;;;;;;;;;;;;;;;;;16507:278;;;;:::o;3363:158::-;3421:7;3454:1;3449;:6;;3441:49;;;;;-1:-1:-1;;;3441:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;3508:5:0;;;3363:158::o;3780:220::-;3838:7;3862:6;3858:20;;-1:-1:-1;3877:1:0;3870:8;;3858:20;3901:5;;;3905:1;3901;:5;:1;3925:5;;;;;:10;3917:56;;;;-1:-1:-1;;;3917:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4478:153;4536:7;4568:1;4564;:5;4556:44;;;;;-1:-1:-1;;;4556:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;4622:1;4618;:5;;;;;;;4478:153;-1:-1:-1;;;4478:153:0:o;18080:327::-;-1:-1:-1;;;;;18168:24:0;;18160:67;;;;;-1:-1:-1;;;18160:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;18251:12;;:31;;18268:13;18251:16;:31::i;:::-;18236:12;:46;-1:-1:-1;;;;;18313:19:0;;:7;:19;;;;;;;;;;;:38;;18337:13;18313:23;:38::i;:::-;-1:-1:-1;;;;;18291:19:0;;:7;:19;;;;;;;;;;;;:60;;;;18365:36;;;;;;;;;;;;;;;;;;;;;;;;18080:327;;:::o;18595:448::-;-1:-1:-1;;;;;18681:22:0;;18673:67;;;;;-1:-1:-1;;;18673:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;18773:17:0;;18749:21;18773:17;;;;;;;;;;;18805:30;;;;18797:76;;;;-1:-1:-1;;;18797:76:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18897:12;;:31;;18914:13;18897:16;:31::i;:::-;18882:12;:46;18957:32;:13;18975;18957:17;:32::i;:::-;-1:-1:-1;;;;;18937:17:0;;:7;:17;;;;;;;;;;;;:52;;;;19003:34;;;;;;;;;;;;;;;;;;;;;;;;18595:448;;;:::o;17331:556::-;-1:-1:-1;;;;;17460:21:0;;17452:70;;;;-1:-1:-1;;;17452:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17537:24:0;;17529:71;;;;-1:-1:-1;;;17529:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;17639:16:0;;17609:27;17639:16;;;;;;;;;;;17670:36;;;;17662:86;;;;-1:-1:-1;;;17662:86:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17776:38;:19;17800:13;17776:23;:38::i;:::-;-1:-1:-1;;;;;17757:16:0;;;:7;:16;;;;;;;;;;;:57;;;;17843:19;;;;;;;:38;;17867:13;17843:23;:38::i;:::-;-1:-1:-1;;;;;17821:19:0;;;:7;:19;;;;;;;;;;:60;;;;-1:-1:-1;;;17331:556:0:o

Swarm Source

ipfs://df7f6fb3e02bfcfe49bd1a824071bd48939193a44d45fd47b82b4ba7ff6df9e8

Block Transaction Difficulty Gas Used Reward
View All Blocks Produced

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

OVERVIEW

AladdinDAO is a decentralized network to shift crypto investments from venture capitalists to wisdom of crowds through collective value discovery.

Validator Index Block Amount
View All Withdrawals

Transaction Hash Block Value Eth2 PubKey Valid
View All Deposits
Loading...
Loading
[ 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.