Overview
S Balance
S Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Loading...
Loading
This contract may be a proxy contract. Click on More Options and select Is this a proxy? to confirm and enable the "Read as Proxy" & "Write as Proxy" tabs.
Contract Name:
Share
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at SonicScan.org on 2025-03-08 */ /** *Submitted for verification at FtmScan.com on 2022-02-25 */ /** *Submitted for verification at FtmScan.com on 2022-02-02 */ // SPDX-License-Identifier: MIT pragma solidity >=0.6.0 <0.8.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/utils/[email protected] pragma solidity >=0.6.0 <0.8.0; /* * @dev Provides information about the current execution context, including the * sender of the transaction and its data. While these are generally available * via msg.sender and msg.data, they should not be accessed in such a direct * manner, since when dealing with GSN meta-transactions the account sending and * paying for execution may not be the actual sender (as far as an application * is concerned). * * This contract is only required for intermediate, library-like contracts. */ abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return msg.sender; } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } // File @openzeppelin/contracts/token/ERC20/[email protected] pragma solidity >=0.6.0 <0.8.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 @openzeppelin/contracts/token/ERC20/[email protected] pragma solidity >=0.6.0 <0.8.0; /** * @dev Implementation of the {IERC20} interface. * * This implementation is agnostic to the way tokens are created. This means * that a supply mechanism has to be added in a derived contract using {_mint}. * For a generic mechanism see {ERC20PresetMinterPauser}. * * TIP: For a detailed writeup see our guide * https://forum.zeppelin.solutions/t/how-to-implement-erc20-supply-mechanisms/226[How * to implement supply mechanisms]. * * We have followed general OpenZeppelin guidelines: functions revert instead * of returning `false` on failure. This behavior is nonetheless conventional * and does not conflict with the expectations of ERC20 applications. * * Additionally, an {Approval} event is emitted on calls to {transferFrom}. * This allows applications to reconstruct the allowance for all accounts just * by listening to said events. Other implementations of the EIP may not emit * these events, as it isn't required by the specification. * * Finally, the non-standard {decreaseAllowance} and {increaseAllowance} * functions have been added to mitigate the well-known issues around setting * allowances. See {IERC20-approve}. */ contract ERC20 is Context, IERC20 { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; uint8 private _decimals; /** * @dev Sets the values for {name} and {symbol}, initializes {decimals} with * a default value of 18. * * To select a different value for {decimals}, use {_setupDecimals}. * * All three of these values are immutable: they can only be set once during * construction. */ constructor (string memory name_, string memory symbol_) public { _name = name_; _symbol = symbol_; _decimals = 18; } /** * @dev Returns the name of the token. */ function name() public view virtual returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view virtual returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5,05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. This is the value {ERC20} uses, unless {_setupDecimals} is * called. * * NOTE: This information is only used for _display_ purposes: it in * no way affects any of the arithmetic of the contract, including * {IERC20-balanceOf} and {IERC20-transfer}. */ function decimals() public view virtual returns (uint8) { return _decimals; } /** * @dev See {IERC20-totalSupply}. */ function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } /** * @dev See {IERC20-balanceOf}. */ function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } /** * @dev See {IERC20-transfer}. * * Requirements: * * - `recipient` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } /** * @dev See {IERC20-allowance}. */ function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {IERC20-approve}. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } /** * @dev See {IERC20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {ERC20}. * * Requirements: * * - `sender` and `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. * - the caller must have allowance for ``sender``'s tokens of at least * `amount`. */ function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } /** * @dev Atomically increases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } /** * @dev Atomically decreases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. * - `spender` must have allowance for the caller of at least * `subtractedValue`. */ function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } /** * @dev Moves tokens `amount` from `sender` to `recipient`. * * This is internal function is equivalent to {transfer}, and can be used to * e.g. implement automatic token fees, slashing mechanisms, etc. * * Emits a {Transfer} event. * * Requirements: * * - `sender` cannot be the zero address. * - `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. */ function _transfer(address sender, address recipient, uint256 amount) internal virtual { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(sender, recipient, amount); _balances[sender] = _balances[sender].sub(amount, "ERC20: transfer amount exceeds balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); } /** @dev Creates `amount` tokens and assigns them to `account`, increasing * the total supply. * * Emits a {Transfer} event with `from` set to the zero address. * * Requirements: * * - `to` cannot be the zero address. */ function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply = _totalSupply.add(amount); _balances[account] = _balances[account].add(amount); emit Transfer(address(0), account, amount); } /** * @dev Destroys `amount` tokens from `account`, reducing the * total supply. * * Emits a {Transfer} event with `to` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. * - `account` must have at least `amount` tokens. */ function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); _balances[account] = _balances[account].sub(amount, "ERC20: burn amount exceeds balance"); _totalSupply = _totalSupply.sub(amount); emit Transfer(account, address(0), amount); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens. * * This internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `owner` cannot be the zero address. * - `spender` cannot be the zero address. */ function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } /** * @dev Sets {decimals} to a value other than the default one of 18. * * WARNING: This function should only be called from the constructor. Most * applications that interact with token contracts will not expect * {decimals} to ever change, and may work incorrectly if it does. */ function _setupDecimals(uint8 decimals_) internal virtual { _decimals = decimals_; } /** * @dev Hook that is called before any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * will be to transferred to `to`. * - when `from` is zero, `amount` tokens will be minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens will be burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { } } // File @openzeppelin/contracts/token/ERC20/[email protected] pragma solidity >=0.6.0 <0.8.0; /** * @dev Extension of {ERC20} that allows token holders to destroy both their own * tokens and those that they have an allowance for, in a way that can be * recognized off-chain (via event analysis). */ abstract contract ERC20Burnable is Context, ERC20 { using SafeMath for uint256; /** * @dev Destroys `amount` tokens from the caller. * * See {ERC20-_burn}. */ function burn(uint256 amount) public virtual { _burn(_msgSender(), amount); } /** * @dev Destroys `amount` tokens from `account`, deducting from the caller's * allowance. * * See {ERC20-_burn} and {ERC20-allowance}. * * Requirements: * * - the caller must have allowance for ``accounts``'s tokens of at least * `amount`. */ function burnFrom(address account, uint256 amount) public virtual { uint256 decreasedAllowance = allowance(account, _msgSender()).sub(amount, "ERC20: burn amount exceeds allowance"); _approve(account, _msgSender(), decreasedAllowance); _burn(account, amount); } } // File @openzeppelin/contracts/GSN/[email protected] pragma solidity >=0.6.0 <0.8.0; // File @openzeppelin/contracts/access/[email protected] pragma solidity >=0.6.0 <0.8.0; /** * @dev Contract module which provides a basic access control mechanism, where * there is an account (an owner) that can be granted exclusive access to * specific functions. * * By default, the owner account will be the one that deploys the contract. This * can later be changed with {transferOwnership}. * * This module is used through inheritance. It will make available the modifier * `onlyOwner`, which can be applied to your functions to restrict their use to * the owner. */ abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor () internal { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } /** * @dev Leaves the contract without owner. It will not be possible to call * `onlyOwner` functions anymore. Can only be called by the current owner. * * NOTE: Renouncing ownership will leave the contract without an owner, * thereby removing any functionality that is only available to the owner. */ function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Can only be called by the current owner. */ function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } // File contracts/owner/Operator.sol pragma solidity 0.6.12; contract Operator is Context, Ownable { address private _operator; event OperatorTransferred(address indexed previousOperator, address indexed newOperator); constructor() internal { _operator = _msgSender(); emit OperatorTransferred(address(0), _operator); } function operator() public view returns (address) { return _operator; } modifier onlyOperator() { require(_operator == msg.sender, "operator: caller is not the operator"); _; } function isOperator() public view returns (bool) { return _msgSender() == _operator; } function transferOperator(address newOperator_) public onlyOwner { _transferOperator(newOperator_); } function _transferOperator(address newOperator_) internal { require(newOperator_ != address(0), "operator: zero address given for new operator"); emit OperatorTransferred(address(0), newOperator_); _operator = newOperator_; } } contract Share is ERC20Burnable, Operator { using SafeMath for uint256; // TOTAL MAX SUPPLY = 100,000 SHARE uint256 public constant FARMING_POOL_REWARD_ALLOCATION = 80000 ether; uint256 public constant COMMUNITY_FUND_POOL_ALLOCATION = 15000 ether; uint256 public constant DEV_FUND_POOL_ALLOCATION = 4700 ether; uint256 public constant VESTING_DURATION = 2 days; uint256 public startTime; uint256 public endTime; uint256 public communityFundRewardRate; uint256 public devFundRewardRate; address public communityFund; address public devFund1; address public devFund2; address public devFund3; address public devFund4; uint256 public communityFundLastClaimed; uint256 public devFundLastClaimed; bool public rewardPoolDistributed = false; constructor(uint256 _startTime, address _communityFund, address _devFund1, address _devFund2, address _devFund3, address _devFund4) public ERC20("SHARE", "SHARE") { _mint(msg.sender, 1 ether); // mint 1 SHARE for initial pools deployment startTime = _startTime; endTime = startTime + VESTING_DURATION; communityFundLastClaimed = startTime; devFundLastClaimed = startTime; communityFundRewardRate = COMMUNITY_FUND_POOL_ALLOCATION.div(VESTING_DURATION); devFundRewardRate = DEV_FUND_POOL_ALLOCATION.div(VESTING_DURATION); require(_devFund1 != address(0), "Address cannot be 0"); require(_devFund2 != address(0), "Address cannot be 0"); require(_devFund3 != address(0), "Address cannot be 0"); require(_devFund4 != address(0), "Address cannot be 0"); devFund1 = _devFund1; devFund2 = _devFund2; devFund3 = _devFund3; devFund4 = _devFund4; require(_communityFund != address(0), "Address cannot be 0"); communityFund = _communityFund; } function setTreasuryFund(address _communityFund) external onlyOwner { require(_communityFund != address(0), "zero"); communityFund = _communityFund; } function setDevFund(uint parameter, address _devFund) external onlyOwner { require(_devFund != address(0), "zero"); if (parameter == 1) { devFund1 = _devFund; } else if (parameter == 2) { devFund2 = _devFund; } else if (parameter == 3) { devFund3 = _devFund; } else if (parameter == 4) { devFund4 = _devFund; } } function unclaimedTreasuryFund() public view returns (uint256 _pending) { uint256 _now = block.timestamp; if (_now > endTime) _now = endTime; if (communityFundLastClaimed >= _now) return 0; _pending = _now.sub(communityFundLastClaimed).mul(communityFundRewardRate); } function unclaimedDevFund() public view returns (uint256 _pending) { uint256 _now = block.timestamp; if (_now > endTime) _now = endTime; if (devFundLastClaimed >= _now) return 0; _pending = _now.sub(devFundLastClaimed).mul(devFundRewardRate); } /** * @dev Claim pending rewards to community and dev fund */ function claimRewards() external onlyOwner { uint256 _pending = unclaimedTreasuryFund(); if (_pending > 0 && communityFund != address(0)) { _mint(communityFund, _pending); communityFundLastClaimed = block.timestamp; } _pending = unclaimedDevFund(); if (_pending > 0 && devFund1 != address(0) && devFund2 != address(0) && devFund3 != address(0) && devFund4 != address(0)) { _mint(devFund1, _pending.div(4)); _mint(devFund2, _pending.div(4)); _mint(devFund3, _pending.div(4)); _mint(devFund4, _pending.div(4)); devFundLastClaimed = block.timestamp; } } /** * @notice distribute to reward pool (only once) */ function distributeReward(address _farmingIncentiveFund) external onlyOperator { require(!rewardPoolDistributed, "only can distribute once"); require(_farmingIncentiveFund != address(0), "!_farmingIncentiveFund"); rewardPoolDistributed = true; _mint(_farmingIncentiveFund, FARMING_POOL_REWARD_ALLOCATION); } function burn(uint256 amount) public override { super.burn(amount); } function governanceRecoverUnsupported( IERC20 _token, uint256 _amount, address _to ) external onlyOperator { _token.transfer(_to, _amount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
Contract ABI
API[{"inputs":[{"internalType":"uint256","name":"_startTime","type":"uint256"},{"internalType":"address","name":"_communityFund","type":"address"},{"internalType":"address","name":"_devFund1","type":"address"},{"internalType":"address","name":"_devFund2","type":"address"},{"internalType":"address","name":"_devFund3","type":"address"},{"internalType":"address","name":"_devFund4","type":"address"}],"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":true,"internalType":"address","name":"previousOperator","type":"address"},{"indexed":true,"internalType":"address","name":"newOperator","type":"address"}],"name":"OperatorTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","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":[],"name":"COMMUNITY_FUND_POOL_ALLOCATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DEV_FUND_POOL_ALLOCATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FARMING_POOL_REWARD_ALLOCATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"VESTING_DURATION","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burnFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimRewards","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"communityFund","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"communityFundLastClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"communityFundRewardRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","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":[],"name":"devFund1","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devFund2","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devFund3","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devFund4","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devFundLastClaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"devFundRewardRate","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_farmingIncentiveFund","type":"address"}],"name":"distributeReward","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"endTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"_token","type":"address"},{"internalType":"uint256","name":"_amount","type":"uint256"},{"internalType":"address","name":"_to","type":"address"}],"name":"governanceRecoverUnsupported","outputs":[],"stateMutability":"nonpayable","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":[],"name":"isOperator","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"operator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rewardPoolDistributed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"parameter","type":"uint256"},{"internalType":"address","name":"_devFund","type":"address"}],"name":"setDevFund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_communityFund","type":"address"}],"name":"setTreasuryFund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"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":"newOperator_","type":"address"}],"name":"transferOperator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"unclaimedDevFund","outputs":[{"internalType":"uint256","name":"_pending","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"unclaimedTreasuryFund","outputs":[{"internalType":"uint256","name":"_pending","type":"uint256"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
60806040526000601260006101000a81548160ff0219169083151502179055503480156200002c57600080fd5b5060405162003d6838038062003d68833981810160405260c08110156200005257600080fd5b810190808051906020019092919080519060200190929190805190602001909291908051906020019092919080519060200190929190805190602001909291905050506040518060400160405280600581526020017f53484152450000000000000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f534841524500000000000000000000000000000000000000000000000000000081525081600390805190602001906200011992919062000aed565b5080600490805190602001906200013292919062000aed565b506012600560006101000a81548160ff021916908360ff1602179055505050600062000163620007ee60201b60201c565b905080600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35062000212620007ee60201b60201c565b600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed60405160405180910390a3620002e933670de0b6b3a7640000620007f660201b60201c565b856007819055506202a30060075401600881905550600754601081905550600754601181905550620003376202a30069032d26d12e980b600000620009d460201b620023321790919060201c565b600981905550620003636202a30068fec99a4a552ff00000620009d460201b620023321790919060201c565b600a81905550600073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614156200040d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f416464726573732063616e6e6f7420626520300000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415620004b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f416464726573732063616e6e6f7420626520300000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141562000555576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f416464726573732063616e6e6f7420626520300000000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415620005f9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f416464726573732063616e6e6f7420626520300000000000000000000000000081525060200191505060405180910390fd5b83600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff161415620007a1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f416464726573732063616e6e6f7420626520300000000000000000000000000081525060200191505060405180910390fd5b84600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050505050505062000b93565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156200089a576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b620008ae6000838362000a5f60201b60201c565b620008ca8160025462000a6460201b620023bb1790919060201c565b60028190555062000928816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205462000a6460201b620023bb1790919060201c565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600080821162000a4c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b81838162000a5657fe5b04905092915050565b505050565b60008082840190508381101562000ae3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f1062000b3057805160ff191683800117855562000b61565b8280016001018555821562000b61579182015b8281111562000b6057825182559160200191906001019062000b43565b5b50905062000b70919062000b74565b5090565b5b8082111562000b8f57600081600090555060010162000b75565b5090565b6131c58062000ba36000396000f3fe608060405234801561001057600080fd5b506004361061025d5760003560e01c80634cfc4d30116101465780638da5cb5b116100c3578063a9059cbb11610087578063a9059cbb14610a45578063abb4b1be14610aa9578063ca9ab2ee14610ac7578063dd62ed3e14610afb578063f2fde38b14610b73578063f746b71814610bb75761025d565b80638da5cb5b146108ec57806395d89b41146109205780639662676c146109a3578063a06160fd146109c3578063a457c2d7146109e15761025d565b80636dc651d91161010a5780636dc651d9146107ea57806370a082311461081e578063715018a61461087657806378e979251461088057806379cc67901461089e5761025d565b80634cfc4d30146106d85780634f337dd5146106f657806354575af414610714578063570ca735146107825780636beec71a146107b65761025d565b80632c07a624116101df578063387e1faf116101a3578063387e1faf1461059c57806339509351146105ea5780633bba8eed1461064e57806342966c681461066c5780634456eda21461069a57806344cdc454146106ba5761025d565b80632c07a624146105175780632e3367ce14610535578063313ce567146105535780633197cbb614610574578063372500ab146105925761025d565b8063117effeb11610226578063117effeb146103df578063177647821461041357806318160ddd1461043157806323b872dd1461044f57806329605e77146104d35761025d565b8062f380f414610262578063040173151461029657806306fdde03146102b4578063092193ab14610337578063095ea7b31461037b575b600080fd5b61026a610bfb565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61029e610c21565b6040518082815260200191505060405180910390f35b6102bc610c27565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102fc5780820151818401526020810190506102e1565b50505050905090810190601f1680156103295780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103796004803603602081101561034d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cc9565b005b6103c76004803603604081101561039157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ec7565b60405180821515815260200191505060405180910390f35b6103e7610ee5565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61041b610f0b565b6040518082815260200191505060405180910390f35b610439610f64565b6040518082815260200191505060405180910390f35b6104bb6004803603606081101561046557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f6e565b60405180821515815260200191505060405180910390f35b610515600480360360208110156104e957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611047565b005b61051f611102565b6040518082815260200191505060405180910390f35b61053d61115b565b6040518082815260200191505060405180910390f35b61055b611161565b604051808260ff16815260200191505060405180910390f35b61057c611178565b6040518082815260200191505060405180910390f35b61059a61117e565b005b6105e8600480360360408110156105b257600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611557565b005b6106366004803603604081101561060057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506117e8565b60405180821515815260200191505060405180910390f35b61065661189b565b6040518082815260200191505060405180910390f35b6106986004803603602081101561068257600080fd5b81019080803590602001909291905050506118a9565b005b6106a26118b5565b60405180821515815260200191505060405180910390f35b6106c2611914565b6040518082815260200191505060405180910390f35b6106e061191a565b6040518082815260200191505060405180910390f35b6106fe611921565b6040518082815260200191505060405180910390f35b6107806004803603606081101561072a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061192e565b005b61078a611a86565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107be611ab0565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107f2611ad6565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6108606004803603602081101561083457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611afc565b6040518082815260200191505060405180910390f35b61087e611b44565b005b610888611cb4565b6040518082815260200191505060405180910390f35b6108ea600480360360408110156108b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cba565b005b6108f4611d1c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610928611d46565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561096857808201518184015260208101905061094d565b50505050905090810190601f1680156109955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6109ab611de8565b60405180821515815260200191505060405180910390f35b6109cb611dfb565b6040518082815260200191505060405180910390f35b610a2d600480360360408110156109f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611e09565b60405180821515815260200191505060405180910390f35b610a9160048036036040811015610a5b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611ed6565b60405180821515815260200191505060405180910390f35b610ab1611ef4565b6040518082815260200191505060405180910390f35b610acf611efa565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610b5d60048036036040811015610b1157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f20565b6040518082815260200191505060405180910390f35b610bb560048036036020811015610b8957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611fa7565b005b610bf960048036036020811015610bcd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061219c565b005b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60115481565b606060038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbf5780601f10610c9457610100808354040283529160200191610cbf565b820191906000526020600020905b815481529060010190602001808311610ca257829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806130dd6024913960400191505060405180910390fd5b601260009054906101000a900460ff1615610df2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f6f6e6c792063616e2064697374726962757465206f6e6365000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f215f6661726d696e67496e63656e7469766546756e640000000000000000000081525060200191505060405180910390fd5b6001601260006101000a81548160ff021916908315150217905550610ec4816910f0cf064dd592000000612443565b50565b6000610edb610ed461260a565b8484612612565b6001905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080429050600854811115610f215760085490505b8060105410610f34576000915050610f61565b610f5d600954610f4f6010548461280990919063ffffffff16565b61288c90919063ffffffff16565b9150505b90565b6000600254905090565b6000610f7b848484612912565b61103c84610f8761260a565b6110378560405180606001604052806028815260200161309160289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610fed61260a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b612612565b600190509392505050565b61104f61260a565b73ffffffffffffffffffffffffffffffffffffffff1661106d611d1c565b73ffffffffffffffffffffffffffffffffffffffff16146110f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6110ff81612c8d565b50565b6000804290506008548111156111185760085490505b806011541061112b576000915050611158565b611154600a546111466011548461280990919063ffffffff16565b61288c90919063ffffffff16565b9150505b90565b600a5481565b6000600560009054906101000a900460ff16905090565b60085481565b61118661260a565b73ffffffffffffffffffffffffffffffffffffffff166111a4611d1c565b73ffffffffffffffffffffffffffffffffffffffff161461122d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000611237610f0b565b90506000811180156112985750600073ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156112d1576112c9600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682612443565b426010819055505b6112d9611102565b905060008111801561133a5750600073ffffffffffffffffffffffffffffffffffffffff16600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b80156113955750600073ffffffffffffffffffffffffffffffffffffffff16600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b80156113f05750600073ffffffffffffffffffffffffffffffffffffffff16600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b801561144b5750600073ffffffffffffffffffffffffffffffffffffffff16600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156115545761148f600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661148a60048461233290919063ffffffff16565b612443565b6114ce600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166114c960048461233290919063ffffffff16565b612443565b61150d600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661150860048461233290919063ffffffff16565b612443565b61154c600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661154760048461233290919063ffffffff16565b612443565b426011819055505b50565b61155f61260a565b73ffffffffffffffffffffffffffffffffffffffff1661157d611d1c565b73ffffffffffffffffffffffffffffffffffffffff1614611606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156116a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f7a65726f0000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60018214156116f85780600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506117e4565b60028214156117475780600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506117e3565b60038214156117965780600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506117e2565b60048214156117e15780600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b5b5050565b60006118916117f561260a565b8461188c856001600061180661260a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123bb90919063ffffffff16565b612612565b6001905092915050565b69032d26d12e980b60000081565b6118b281612db2565b50565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166118f861260a565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b60095481565b6202a30081565b68fec99a4a552ff0000081565b3373ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146119d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806130dd6024913960400191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb82846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611a4557600080fd5b505af1158015611a59573d6000803e3d6000fd5b505050506040513d6020811015611a6f57600080fd5b810190808051906020019092919050505050505050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611b4c61260a565b73ffffffffffffffffffffffffffffffffffffffff16611b6a611d1c565b73ffffffffffffffffffffffffffffffffffffffff1614611bf3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60075481565b6000611cf9826040518060600160405280602481526020016130b960249139611cea86611ce561260a565b611f20565b612bd39092919063ffffffff16565b9050611d0d83611d0761260a565b83612612565b611d178383612dc6565b505050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611dde5780601f10611db357610100808354040283529160200191611dde565b820191906000526020600020905b815481529060010190602001808311611dc157829003601f168201915b5050505050905090565b601260009054906101000a900460ff1681565b6910f0cf064dd59200000081565b6000611ecc611e1661260a565b84611ec78560405180606001604052806025815260200161316b6025913960016000611e4061260a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b612612565b6001905092915050565b6000611eea611ee361260a565b8484612912565b6001905092915050565b60105481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611faf61260a565b73ffffffffffffffffffffffffffffffffffffffff16611fcd611d1c565b73ffffffffffffffffffffffffffffffffffffffff1614612056576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156120dc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612fd56026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6121a461260a565b73ffffffffffffffffffffffffffffffffffffffff166121c2611d1c565b73ffffffffffffffffffffffffffffffffffffffff161461224b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156122ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f7a65726f0000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082116123a9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b8183816123b257fe5b04905092915050565b600080828401905083811015612439576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156124e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b6124f260008383612f8a565b612507816002546123bb90919063ffffffff16565b60028190555061255e816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123bb90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612698576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806131476024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561271e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612ffb6022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600082821115612881576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b818303905092915050565b60008083141561289f576000905061290c565b60008284029050828482816128b057fe5b0414612907576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806130706021913960400191505060405180910390fd5b809150505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612998576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806131226025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612a1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612f906023913960400191505060405180910390fd5b612a29838383612f8a565b612a948160405180606001604052806026815260200161301d602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b27816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123bb90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290612c80576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612c45578082015181840152602081019050612c2a565b50505050905090810190601f168015612c725780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5082840390509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612d13576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180613043602d913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed60405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b612dc3612dbd61260a565b82612dc6565b50565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612e4c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806131016021913960400191505060405180910390fd5b612e5882600083612f8a565b612ec381604051806060016040528060228152602001612fb3602291396000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f1a8160025461280990919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63656f70657261746f723a207a65726f206164647265737320676976656e20666f72206e6577206f70657261746f72536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e63656f70657261746f723a2063616c6c6572206973206e6f7420746865206f70657261746f7245524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220d712ce809aa4dbee9689b245f859821fe5a3200235a83321369c83ed2d82d3da64736f6c634300060c00330000000000000000000000000000000000000000000000000000000067cc2330000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171
Deployed Bytecode
0x608060405234801561001057600080fd5b506004361061025d5760003560e01c80634cfc4d30116101465780638da5cb5b116100c3578063a9059cbb11610087578063a9059cbb14610a45578063abb4b1be14610aa9578063ca9ab2ee14610ac7578063dd62ed3e14610afb578063f2fde38b14610b73578063f746b71814610bb75761025d565b80638da5cb5b146108ec57806395d89b41146109205780639662676c146109a3578063a06160fd146109c3578063a457c2d7146109e15761025d565b80636dc651d91161010a5780636dc651d9146107ea57806370a082311461081e578063715018a61461087657806378e979251461088057806379cc67901461089e5761025d565b80634cfc4d30146106d85780634f337dd5146106f657806354575af414610714578063570ca735146107825780636beec71a146107b65761025d565b80632c07a624116101df578063387e1faf116101a3578063387e1faf1461059c57806339509351146105ea5780633bba8eed1461064e57806342966c681461066c5780634456eda21461069a57806344cdc454146106ba5761025d565b80632c07a624146105175780632e3367ce14610535578063313ce567146105535780633197cbb614610574578063372500ab146105925761025d565b8063117effeb11610226578063117effeb146103df578063177647821461041357806318160ddd1461043157806323b872dd1461044f57806329605e77146104d35761025d565b8062f380f414610262578063040173151461029657806306fdde03146102b4578063092193ab14610337578063095ea7b31461037b575b600080fd5b61026a610bfb565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61029e610c21565b6040518082815260200191505060405180910390f35b6102bc610c27565b6040518080602001828103825283818151815260200191508051906020019080838360005b838110156102fc5780820151818401526020810190506102e1565b50505050905090810190601f1680156103295780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6103796004803603602081101561034d57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610cc9565b005b6103c76004803603604081101561039157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ec7565b60405180821515815260200191505060405180910390f35b6103e7610ee5565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61041b610f0b565b6040518082815260200191505060405180910390f35b610439610f64565b6040518082815260200191505060405180910390f35b6104bb6004803603606081101561046557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610f6e565b60405180821515815260200191505060405180910390f35b610515600480360360208110156104e957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611047565b005b61051f611102565b6040518082815260200191505060405180910390f35b61053d61115b565b6040518082815260200191505060405180910390f35b61055b611161565b604051808260ff16815260200191505060405180910390f35b61057c611178565b6040518082815260200191505060405180910390f35b61059a61117e565b005b6105e8600480360360408110156105b257600080fd5b8101908080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611557565b005b6106366004803603604081101561060057600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506117e8565b60405180821515815260200191505060405180910390f35b61065661189b565b6040518082815260200191505060405180910390f35b6106986004803603602081101561068257600080fd5b81019080803590602001909291905050506118a9565b005b6106a26118b5565b60405180821515815260200191505060405180910390f35b6106c2611914565b6040518082815260200191505060405180910390f35b6106e061191a565b6040518082815260200191505060405180910390f35b6106fe611921565b6040518082815260200191505060405180910390f35b6107806004803603606081101561072a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061192e565b005b61078a611a86565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107be611ab0565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6107f2611ad6565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6108606004803603602081101561083457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611afc565b6040518082815260200191505060405180910390f35b61087e611b44565b005b610888611cb4565b6040518082815260200191505060405180910390f35b6108ea600480360360408110156108b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611cba565b005b6108f4611d1c565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610928611d46565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561096857808201518184015260208101905061094d565b50505050905090810190601f1680156109955780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6109ab611de8565b60405180821515815260200191505060405180910390f35b6109cb611dfb565b6040518082815260200191505060405180910390f35b610a2d600480360360408110156109f757600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611e09565b60405180821515815260200191505060405180910390f35b610a9160048036036040811015610a5b57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611ed6565b60405180821515815260200191505060405180910390f35b610ab1611ef4565b6040518082815260200191505060405180910390f35b610acf611efa565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610b5d60048036036040811015610b1157600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611f20565b6040518082815260200191505060405180910390f35b610bb560048036036020811015610b8957600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611fa7565b005b610bf960048036036020811015610bcd57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061219c565b005b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60115481565b606060038054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610cbf5780601f10610c9457610100808354040283529160200191610cbf565b820191906000526020600020905b815481529060010190602001808311610ca257829003601f168201915b5050505050905090565b3373ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6f576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806130dd6024913960400191505060405180910390fd5b601260009054906101000a900460ff1615610df2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f6f6e6c792063616e2064697374726962757465206f6e6365000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610e95576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260168152602001807f215f6661726d696e67496e63656e7469766546756e640000000000000000000081525060200191505060405180910390fd5b6001601260006101000a81548160ff021916908315150217905550610ec4816910f0cf064dd592000000612443565b50565b6000610edb610ed461260a565b8484612612565b6001905092915050565b600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600080429050600854811115610f215760085490505b8060105410610f34576000915050610f61565b610f5d600954610f4f6010548461280990919063ffffffff16565b61288c90919063ffffffff16565b9150505b90565b6000600254905090565b6000610f7b848484612912565b61103c84610f8761260a565b6110378560405180606001604052806028815260200161309160289139600160008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610fed61260a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b612612565b600190509392505050565b61104f61260a565b73ffffffffffffffffffffffffffffffffffffffff1661106d611d1c565b73ffffffffffffffffffffffffffffffffffffffff16146110f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6110ff81612c8d565b50565b6000804290506008548111156111185760085490505b806011541061112b576000915050611158565b611154600a546111466011548461280990919063ffffffff16565b61288c90919063ffffffff16565b9150505b90565b600a5481565b6000600560009054906101000a900460ff16905090565b60085481565b61118661260a565b73ffffffffffffffffffffffffffffffffffffffff166111a4611d1c565b73ffffffffffffffffffffffffffffffffffffffff161461122d576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6000611237610f0b565b90506000811180156112985750600073ffffffffffffffffffffffffffffffffffffffff16600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156112d1576112c9600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682612443565b426010819055505b6112d9611102565b905060008111801561133a5750600073ffffffffffffffffffffffffffffffffffffffff16600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b80156113955750600073ffffffffffffffffffffffffffffffffffffffff16600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b80156113f05750600073ffffffffffffffffffffffffffffffffffffffff16600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b801561144b5750600073ffffffffffffffffffffffffffffffffffffffff16600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614155b156115545761148f600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661148a60048461233290919063ffffffff16565b612443565b6114ce600d60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166114c960048461233290919063ffffffff16565b612443565b61150d600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661150860048461233290919063ffffffff16565b612443565b61154c600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1661154760048461233290919063ffffffff16565b612443565b426011819055505b50565b61155f61260a565b73ffffffffffffffffffffffffffffffffffffffff1661157d611d1c565b73ffffffffffffffffffffffffffffffffffffffff1614611606576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156116a9576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f7a65726f0000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b60018214156116f85780600c60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506117e4565b60028214156117475780600d60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506117e3565b60038214156117965780600e60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506117e2565b60048214156117e15780600f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055505b5b5b5b5050565b60006118916117f561260a565b8461188c856001600061180661260a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123bb90919063ffffffff16565b612612565b6001905092915050565b69032d26d12e980b60000081565b6118b281612db2565b50565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166118f861260a565b73ffffffffffffffffffffffffffffffffffffffff1614905090565b60095481565b6202a30081565b68fec99a4a552ff0000081565b3373ffffffffffffffffffffffffffffffffffffffff16600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146119d4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806130dd6024913960400191505060405180910390fd5b8273ffffffffffffffffffffffffffffffffffffffff1663a9059cbb82846040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611a4557600080fd5b505af1158015611a59573d6000803e3d6000fd5b505050506040513d6020811015611a6f57600080fd5b810190808051906020019092919050505050505050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600c60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b611b4c61260a565b73ffffffffffffffffffffffffffffffffffffffff16611b6a611d1c565b73ffffffffffffffffffffffffffffffffffffffff1614611bf3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b60075481565b6000611cf9826040518060600160405280602481526020016130b960249139611cea86611ce561260a565b611f20565b612bd39092919063ffffffff16565b9050611d0d83611d0761260a565b83612612565b611d178383612dc6565b505050565b6000600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060048054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015611dde5780601f10611db357610100808354040283529160200191611dde565b820191906000526020600020905b815481529060010190602001808311611dc157829003601f168201915b5050505050905090565b601260009054906101000a900460ff1681565b6910f0cf064dd59200000081565b6000611ecc611e1661260a565b84611ec78560405180606001604052806025815260200161316b6025913960016000611e4061260a565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b612612565b6001905092915050565b6000611eea611ee361260a565b8484612912565b6001905092915050565b60105481565b600e60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b611faf61260a565b73ffffffffffffffffffffffffffffffffffffffff16611fcd611d1c565b73ffffffffffffffffffffffffffffffffffffffff1614612056576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156120dc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180612fd56026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6121a461260a565b73ffffffffffffffffffffffffffffffffffffffff166121c2611d1c565b73ffffffffffffffffffffffffffffffffffffffff161461224b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614156122ee576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260048152602001807f7a65726f0000000000000000000000000000000000000000000000000000000081525060200191505060405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60008082116123a9576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b8183816123b257fe5b04905092915050565b600080828401905083811015612439576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156124e6576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f45524332303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b6124f260008383612f8a565b612507816002546123bb90919063ffffffff16565b60028190555061255e816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123bb90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612698576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260248152602001806131476024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16141561271e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180612ffb6022913960400191505060405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600082821115612881576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601e8152602001807f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525060200191505060405180910390fd5b818303905092915050565b60008083141561289f576000905061290c565b60008284029050828482816128b057fe5b0414612907576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806130706021913960400191505060405180910390fd5b809150505b92915050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612998576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806131226025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612a1e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180612f906023913960400191505060405180910390fd5b612a29838383612f8a565b612a948160405180606001604052806026815260200161301d602691396000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612b27816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546123bb90919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290612c80576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b83811015612c45578082015181840152602081019050612c2a565b50505050905090810190601f168015612c725780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5082840390509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415612d13576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602d815260200180613043602d913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f74da04524d50c64947f5dd5381ef1a4dca5cba8ed1d816243f9e48aa0b5617ed60405160405180910390a380600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b612dc3612dbd61260a565b82612dc6565b50565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612e4c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806131016021913960400191505060405180910390fd5b612e5882600083612f8a565b612ec381604051806060016040528060228152602001612fb3602291396000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054612bd39092919063ffffffff16565b6000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550612f1a8160025461280990919063ffffffff16565b600281905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b50505056fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a206275726e20616d6f756e7420657863656564732062616c616e63654f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737345524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e63656f70657261746f723a207a65726f206164647265737320676976656e20666f72206e6577206f70657261746f72536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a206275726e20616d6f756e74206578636565647320616c6c6f77616e63656f70657261746f723a2063616c6c6572206973206e6f7420746865206f70657261746f7245524332303a206275726e2066726f6d20746865207a65726f206164647265737345524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f206164647265737345524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220d712ce809aa4dbee9689b245f859821fe5a3200235a83321369c83ed2d82d3da64736f6c634300060c0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000067cc2330000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171
-----Decoded View---------------
Arg [0] : _startTime (uint256): 1741431600
Arg [1] : _communityFund (address): 0xef353f79d4368A26eE535a21763fa5EE2bd87171
Arg [2] : _devFund1 (address): 0xef353f79d4368A26eE535a21763fa5EE2bd87171
Arg [3] : _devFund2 (address): 0xef353f79d4368A26eE535a21763fa5EE2bd87171
Arg [4] : _devFund3 (address): 0xef353f79d4368A26eE535a21763fa5EE2bd87171
Arg [5] : _devFund4 (address): 0xef353f79d4368A26eE535a21763fa5EE2bd87171
-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000067cc2330
Arg [1] : 000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171
Arg [2] : 000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171
Arg [3] : 000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171
Arg [4] : 000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171
Arg [5] : 000000000000000000000000ef353f79d4368a26ee535a21763fa5ee2bd87171
Deployed Bytecode Sourcemap
27213:4669:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27762:28;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27965:33;;;:::i;:::-;;;;;;;;;;;;;;;;;;;13572:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31245:348;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;15718:169;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27827:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;29777:308;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14671:108;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16369:321;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;26828:115;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;30093:285;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27721:32;;;:::i;:::-;;;;;;;;;;;;;;;;;;;14515:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27645:22;;;:::i;:::-;;;;;;;;;;;;;;;;;;;30465:700;;;:::i;:::-;;29345:424;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;17099:218;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27413:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;31601:83;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;26720:100;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27676:38;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27558:49;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27488:61;;;:::i;:::-;;;;;;;;;;;;;;;;;;;31692:187;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;26492:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27887:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27797;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;14842:127;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;25555:148;;;:::i;:::-;;27614:24;;;:::i;:::-;;;;;;;;;;;;;;;;;;;23384:295;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;24904:87;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;13782:95;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28007:41;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27338:68;;;:::i;:::-;;;;;;;;;;;;;;;;;;;17820:269;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;15182:175;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27919:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27857:23;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;15420:151;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;25858:244;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;29164:173;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27762:28;;;;;;;;;;;;;:::o;27965:33::-;;;;:::o;13572:91::-;13617:13;13650:5;13643:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13572:91;:::o;31245:348::-;26641:10;26628:23;;:9;;;;;;;;;;;:23;;;26620:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31344:21:::1;;;;;;;;;;;31343:22;31335:59;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;31446:1;31413:35;;:21;:35;;;;31405:70;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;31510:4;31486:21;;:28;;;;;;;;;;;;;;;;;;31525:60;31531:21;27395:11;31525:5;:60::i;:::-;31245:348:::0;:::o;15718:169::-;15801:4;15818:39;15827:12;:10;:12::i;:::-;15841:7;15850:6;15818:8;:39::i;:::-;15875:4;15868:11;;15718:169;;;;:::o;27827:23::-;;;;;;;;;;;;;:::o;29777:308::-;29831:16;29860:12;29875:15;29860:30;;29912:7;;29905:4;:14;29901:34;;;29928:7;;29921:14;;29901:34;29978:4;29950:24;;:32;29946:46;;29991:1;29984:8;;;;;29946:46;30014:63;30053:23;;30014:34;30023:24;;30014:4;:8;;:34;;;;:::i;:::-;:38;;:63;;;;:::i;:::-;30003:74;;29777:308;;;:::o;14671:108::-;14732:7;14759:12;;14752:19;;14671:108;:::o;16369:321::-;16475:4;16492:36;16502:6;16510:9;16521:6;16492:9;:36::i;:::-;16539:121;16548:6;16556:12;:10;:12::i;:::-;16570:89;16608:6;16570:89;;;;;;;;;;;;;;;;;:11;:19;16582:6;16570:19;;;;;;;;;;;;;;;:33;16590:12;:10;:12::i;:::-;16570:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;16539:8;:121::i;:::-;16678:4;16671:11;;16369:321;;;;;:::o;26828:115::-;25135:12;:10;:12::i;:::-;25124:23;;:7;:5;:7::i;:::-;:23;;;25116:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26904:31:::1;26922:12;26904:17;:31::i;:::-;26828:115:::0;:::o;30093:285::-;30142:16;30171:12;30186:15;30171:30;;30223:7;;30216:4;:14;30212:34;;;30239:7;;30232:14;;30212:34;30283:4;30261:18;;:26;30257:40;;30296:1;30289:8;;;;;30257:40;30319:51;30352:17;;30319:28;30328:18;;30319:4;:8;;:28;;;;:::i;:::-;:32;;:51;;;;:::i;:::-;30308:62;;30093:285;;;:::o;27721:32::-;;;;:::o;14515:91::-;14564:5;14589:9;;;;;;;;;;;14582:16;;14515:91;:::o;27645:22::-;;;;:::o;30465:700::-;25135:12;:10;:12::i;:::-;25124:23;;:7;:5;:7::i;:::-;:23;;;25116:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30519:16:::1;30538:23;:21;:23::i;:::-;30519:42;;30587:1;30576:8;:12;:43;;;;;30617:1;30592:27;;:13;;;;;;;;;;;:27;;;;30576:43;30572:163;;;30636:30;30642:13;;;;;;;;;;;30657:8;30636:5;:30::i;:::-;30708:15;30681:24;:42;;;;30572:163;30756:18;:16;:18::i;:::-;30745:29;;30800:1;30789:8;:12;:38;;;;;30825:1;30805:22;;:8;;;;;;;;;;;:22;;;;30789:38;:64;;;;;30851:1;30831:22;;:8;;;;;;;;;;;:22;;;;30789:64;:90;;;;;30877:1;30857:22;;:8;;;;;;;;;;;:22;;;;30789:90;:116;;;;;30903:1;30883:22;;:8;;;;;;;;;;;:22;;;;30789:116;30785:373;;;30922:32;30928:8;;;;;;;;;;;30938:15;30951:1;30938:8;:12;;:15;;;;:::i;:::-;30922:5;:32::i;:::-;30969;30975:8;;;;;;;;;;;30985:15;30998:1;30985:8;:12;;:15;;;;:::i;:::-;30969:5;:32::i;:::-;31016;31022:8;;;;;;;;;;;31032:15;31045:1;31032:8;:12;;:15;;;;:::i;:::-;31016:5;:32::i;:::-;31063;31069:8;;;;;;;;;;;31079:15;31092:1;31079:8;:12;;:15;;;;:::i;:::-;31063:5;:32::i;:::-;31131:15;31110:18;:36;;;;30785:373;25195:1;30465:700::o:0;29345:424::-;25135:12;:10;:12::i;:::-;25124:23;;:7;:5;:7::i;:::-;:23;;;25116:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29457:1:::1;29437:22;;:8;:22;;;;29429:39;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;29497:1;29484:9;:14;29480:282;;;29526:8;29515;;:19;;;;;;;;;;;;;;;;;;29480:282;;;29569:1;29556:9;:14;29552:210;;;29598:8;29587;;:19;;;;;;;;;;;;;;;;;;29552:210;;;29641:1;29628:9;:14;29624:138;;;29670:8;29659;;:19;;;;;;;;;;;;;;;;;;29624:138;;;29713:1;29700:9;:14;29696:66;;;29742:8;29731;;:19;;;;;;;;;;;;;;;;;;29696:66;29624:138;29552:210;29480:282;29345:424:::0;;:::o;17099:218::-;17187:4;17204:83;17213:12;:10;:12::i;:::-;17227:7;17236:50;17275:10;17236:11;:25;17248:12;:10;:12::i;:::-;17236:25;;;;;;;;;;;;;;;:34;17262:7;17236:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;17204:8;:83::i;:::-;17305:4;17298:11;;17099:218;;;;:::o;27413:68::-;27470:11;27413:68;:::o;31601:83::-;31658:18;31669:6;31658:10;:18::i;:::-;31601:83;:::o;26720:100::-;26763:4;26803:9;;;;;;;;;;;26787:25;;:12;:10;:12::i;:::-;:25;;;26780:32;;26720:100;:::o;27676:38::-;;;;:::o;27558:49::-;27601:6;27558:49;:::o;27488:61::-;27539:10;27488:61;:::o;31692:187::-;26641:10;26628:23;;:9;;;;;;;;;;;:23;;;26620:72;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;31842:6:::1;:15;;;31858:3;31863:7;31842:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;31692:187:::0;;;:::o;26492:85::-;26533:7;26560:9;;;;;;;;;;;26553:16;;26492:85;:::o;27887:23::-;;;;;;;;;;;;;:::o;27797:::-;;;;;;;;;;;;;:::o;14842:127::-;14916:7;14943:9;:18;14953:7;14943:18;;;;;;;;;;;;;;;;14936:25;;14842:127;;;:::o;25555:148::-;25135:12;:10;:12::i;:::-;25124:23;;:7;:5;:7::i;:::-;:23;;;25116:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25662:1:::1;25625:40;;25646:6;;;;;;;;;;;25625:40;;;;;;;;;;;;25693:1;25676:6;;:19;;;;;;;;;;;;;;;;;;25555:148::o:0;27614:24::-;;;;:::o;23384:295::-;23461:26;23490:84;23527:6;23490:84;;;;;;;;;;;;;;;;;:32;23500:7;23509:12;:10;:12::i;:::-;23490:9;:32::i;:::-;:36;;:84;;;;;:::i;:::-;23461:113;;23587:51;23596:7;23605:12;:10;:12::i;:::-;23619:18;23587:8;:51::i;:::-;23649:22;23655:7;23664:6;23649:5;:22::i;:::-;23384:295;;;:::o;24904:87::-;24950:7;24977:6;;;;;;;;;;;24970:13;;24904:87;:::o;13782:95::-;13829:13;13862:7;13855:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13782:95;:::o;28007:41::-;;;;;;;;;;;;;:::o;27338:68::-;27395:11;27338:68;:::o;17820:269::-;17913:4;17930:129;17939:12;:10;:12::i;:::-;17953:7;17962:96;18001:15;17962:96;;;;;;;;;;;;;;;;;:11;:25;17974:12;:10;:12::i;:::-;17962:25;;;;;;;;;;;;;;;:34;17988:7;17962:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;17930:8;:129::i;:::-;18077:4;18070:11;;17820:269;;;;:::o;15182:175::-;15268:4;15285:42;15295:12;:10;:12::i;:::-;15309:9;15320:6;15285:9;:42::i;:::-;15345:4;15338:11;;15182:175;;;;:::o;27919:39::-;;;;:::o;27857:23::-;;;;;;;;;;;;;:::o;15420:151::-;15509:7;15536:11;:18;15548:5;15536:18;;;;;;;;;;;;;;;:27;15555:7;15536:27;;;;;;;;;;;;;;;;15529:34;;15420:151;;;;:::o;25858:244::-;25135:12;:10;:12::i;:::-;25124:23;;:7;:5;:7::i;:::-;:23;;;25116:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25967:1:::1;25947:22;;:8;:22;;;;25939:73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26057:8;26028:38;;26049:6;;;;;;;;;;;26028:38;;;;;;;;;;;;26086:8;26077:6;;:17;;;;;;;;;;;;;;;;;;25858:244:::0;:::o;29164:173::-;25135:12;:10;:12::i;:::-;25124:23;;:7;:5;:7::i;:::-;:23;;;25116:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29277:1:::1;29251:28;;:14;:28;;;;29243:45;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;29315:14;29299:13;;:30;;;;;;;;;;;;;;;;;;29164:173:::0;:::o;4491:153::-;4549:7;4581:1;4577;:5;4569:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4635:1;4631;:5;;;;;;4624:12;;4491:153;;;;:::o;2914:179::-;2972:7;2992:9;3008:1;3004;:5;2992:17;;3033:1;3028;:6;;3020:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3084:1;3077:8;;;2914:179;;;;:::o;19400:378::-;19503:1;19484:21;;:7;:21;;;;19476:65;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19554:49;19583:1;19587:7;19596:6;19554:20;:49::i;:::-;19631:24;19648:6;19631:12;;:16;;:24;;;;:::i;:::-;19616:12;:39;;;;19687:30;19710:6;19687:9;:18;19697:7;19687:18;;;;;;;;;;;;;;;;:22;;:30;;;;:::i;:::-;19666:9;:18;19676:7;19666:18;;;;;;;;;;;;;;;:51;;;;19754:7;19733:37;;19750:1;19733:37;;;19763:6;19733:37;;;;;;;;;;;;;;;;;;19400:378;;:::o;8225:106::-;8278:15;8313:10;8306:17;;8225:106;:::o;20967:346::-;21086:1;21069:19;;:5;:19;;;;21061:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21167:1;21148:21;;:7;:21;;;;21140:68;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21251:6;21221:11;:18;21233:5;21221:18;;;;;;;;;;;;;;;:27;21240:7;21221:27;;;;;;;;;;;;;;;:36;;;;21289:7;21273:32;;21282:5;21273:32;;;21298:6;21273:32;;;;;;;;;;;;;;;;;;20967:346;;;:::o;3376:158::-;3434:7;3467:1;3462;:6;;3454:49;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3525:1;3521;:5;3514:12;;3376:158;;;;:::o;3793:220::-;3851:7;3880:1;3875;:6;3871:20;;;3890:1;3883:8;;;;3871:20;3902:9;3918:1;3914;:5;3902:17;;3947:1;3942;3938;:5;;;;;;:10;3930:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4004:1;3997:8;;;3793:220;;;;;:::o;18579:539::-;18703:1;18685:20;;:6;:20;;;;18677:70;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18787:1;18766:23;;:9;:23;;;;18758:71;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18842:47;18863:6;18871:9;18882:6;18842:20;:47::i;:::-;18922:71;18944:6;18922:71;;;;;;;;;;;;;;;;;:9;:17;18932:6;18922:17;;;;;;;;;;;;;;;;:21;;:71;;;;;:::i;:::-;18902:9;:17;18912:6;18902:17;;;;;;;;;;;;;;;:91;;;;19027:32;19052:6;19027:9;:20;19037:9;19027:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;19004:9;:20;19014:9;19004:20;;;;;;;;;;;;;;;:55;;;;19092:9;19075:35;;19084:6;19075:35;;;19103:6;19075:35;;;;;;;;;;;;;;;;;;18579:539;;;:::o;5741:166::-;5827:7;5860:1;5855;:6;;5863:12;5847:29;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5898:1;5894;:5;5887:12;;5741:166;;;;;:::o;26951:257::-;27052:1;27028:26;;:12;:26;;;;27020:84;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27152:12;27120:45;;27148:1;27120:45;;;;;;;;;;;;27188:12;27176:9;;:24;;;;;;;;;;;;;;;;;;26951:257;:::o;22974:91::-;23030:27;23036:12;:10;:12::i;:::-;23050:6;23030:5;:27::i;:::-;22974:91;:::o;20111:418::-;20214:1;20195:21;;:7;:21;;;;20187:67;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20267:49;20288:7;20305:1;20309:6;20267:20;:49::i;:::-;20350:68;20373:6;20350:68;;;;;;;;;;;;;;;;;:9;:18;20360:7;20350:18;;;;;;;;;;;;;;;;:22;;:68;;;;;:::i;:::-;20329:9;:18;20339:7;20329:18;;;;;;;;;;;;;;;:89;;;;20444:24;20461:6;20444:12;;:16;;:24;;;;:::i;:::-;20429:12;:39;;;;20510:1;20484:37;;20493:7;20484:37;;;20514:6;20484:37;;;;;;;;;;;;;;;;;;20111:418;;:::o;22346:92::-;;;;:::o
Swarm Source
ipfs://d712ce809aa4dbee9689b245f859821fe5a3200235a83321369c83ed2d82d3da
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 35 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|
[ 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.