BscScan - Sponsored slots available. Book your slot here!
Contract Overview
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Latest 25 internal transaction
[ Download CSV Export ]
Contract Name:
YetuTokensCrowdsale
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity Multiple files format)
//SPDX-License-Identifier: MIT pragma solidity ^0.6.12; pragma experimental ABIEncoderV2; import './YetubitToken.sol'; interface IStdReference { /// A structure returned whenever someone requests for standard reference data. struct ReferenceData { uint256 rate; // base/quote exchange rate, multiplied by 1e18. uint256 lastUpdatedBase; // UNIX epoch of the last time when base price gets updated. uint256 lastUpdatedQuote; // UNIX epoch of the last time when quote price gets updated. } /// Returns the price data for the given base/quote pair. Revert if not available. function getReferenceData(string memory _base, string memory _quote) external view returns (ReferenceData memory); } contract YetuTokensCrowdsale { using SafeMath for uint256; IStdReference internal ref; /** * Event for YetuTokens purchase logging * @param purchaser who paid for the tokens * @param beneficiary who got the tokens * @param value bnbs paid for purchase * @param YetuTokenAmount amount of Yetu tokens purchased */ event TokenPurchase( address indexed purchaser, address indexed beneficiary, uint256 value, uint256 YetuTokenAmount ); bool public isEnded = false; event Ended(uint256 totalBNBRaisedInCrowdsale,uint256 unsoldTokensTransferredToOwner); uint256 public currentYetuTokenUSDPrice; //YetuTokens in $USD YetubitToken public yetu; uint8 public currentCrowdsaleStage; // Yetu Token Distribution // ============================= uint256 public totalYetuTokensForSale = 60000000*(1e18); // 60,000,000 Yetu will be sold during the whole Crowdsale // ============================== // Amount of bnb raised in Crowdsale // ================== uint256 public totalBNBRaised; // =================== // Crowdsale Stages Details // ================== mapping (uint256 => uint256) public remainingYetuInStage; mapping (uint256 => uint256) public yetuUSDPriceInStages; // =================== // Events event BNBTransferred(string text); //Modifier address payable public owner; modifier onlyOwner() { require (msg.sender == owner); _; } // Constructor // ============ constructor() public { owner = msg.sender; currentCrowdsaleStage = 1; remainingYetuInStage[1] = 5000000*1e18; // 5,000,000 Yetu will be sold during the Stage 1 remainingYetuInStage[2] = 20000000*1e18; // 20,000,000 Yetu will be sold during the Stage 2 remainingYetuInStage[3] = 20000000*1e18; // 20,000,000 Yetu will be sold during the Stage 3 remainingYetuInStage[4] = 10000000*1e18; // 10,000,000 Yetu will be sold during the Stage 4 remainingYetuInStage[5] = 5000000*1e18; // 5,000,000 Yetu will be sold during the Stage 5 yetuUSDPriceInStages[1] = 40000000000000000; //$0.04 yetuUSDPriceInStages[2] = 80000000000000000; //$0.08 yetuUSDPriceInStages[3] = 200000000000000000; //$0.2 yetuUSDPriceInStages[4] = 400000000000000000; //$0.4 yetuUSDPriceInStages[5] = 800000000000000000; //$0.8 currentYetuTokenUSDPrice = yetuUSDPriceInStages[1]; ref = IStdReference(0xDA7a001b254CD22e46d3eAB04d937489c93174C3); yetu = new YetubitToken(owner); // Yetu Token Deployment } // ============= // Change Crowdsale Stage. function switchToNextStage() public onlyOwner { currentCrowdsaleStage = currentCrowdsaleStage + 1; if((currentCrowdsaleStage == 6) || (currentCrowdsaleStage == 0)){ endCrowdsale(); } currentYetuTokenUSDPrice = yetuUSDPriceInStages[currentCrowdsaleStage]; } /** * @dev Validation of an incoming purchase. Use require statements to revert state when conditions are not met. Use super to concatenate validations. * @param _beneficiary Address performing the YetuToken purchase */ function _preValidatePurchase( address _beneficiary ) internal pure { require(_beneficiary != address(0)); } /** * @dev Source of tokens. Override this method to modify the way in which the crowdsale ultimately gets and sends its tokens. * @param _beneficiary Address performing the YetuTokens purchase * @param _tokenAmount Number of Yetu tokens to be purchased */ function _deliverTokens( address _beneficiary, uint256 _tokenAmount ) internal { yetu.transfer(_beneficiary, _tokenAmount); } /** * @dev Executed when a purchase has been validated and is ready to be executed. Not necessarily emits/sends tokens. * @param _beneficiary Address receiving the tokens * @param _tokenAmount Number of Yetu tokens to be purchased */ function _processPurchase( address _beneficiary, uint256 _tokenAmount ) internal { _deliverTokens(_beneficiary, _tokenAmount); } /** * @dev Override to extend the way in which bnb is converted to tokens. * @param _bnbAmount Value in bnb to be converted into tokens * @return Number of tokens that can be purchased with the specified _bnbAmount */ function _getTokenAmount(uint256 _bnbAmount) internal view returns (uint256) { return _bnbAmount.mul(getLatestBNBPrice()).div(currentYetuTokenUSDPrice); } // YetuTokens Purchase // ========================= receive() external payable { if(isEnded){ revert(); //Block Incoming BNB Deposits if Crowdsale has ended } buyYetuTokens(msg.sender); } function buyYetuTokens(address _beneficiary) public payable { uint256 bnbAmount = msg.value; require(bnbAmount > 0,"Please Send some BNB"); if(isEnded){ revert(); } _preValidatePurchase(_beneficiary); uint256 YetuTokensToBePurchased = _getTokenAmount(bnbAmount); if (YetuTokensToBePurchased > remainingYetuInStage[currentCrowdsaleStage]) { revert(); //Block Incoming BNB Deposits if tokens to be purchased, exceeds remaining tokens for sale in the current stage } _processPurchase(_beneficiary, YetuTokensToBePurchased); emit TokenPurchase( msg.sender, _beneficiary, bnbAmount, YetuTokensToBePurchased ); totalBNBRaised = totalBNBRaised.add(bnbAmount); remainingYetuInStage[currentCrowdsaleStage] = remainingYetuInStage[currentCrowdsaleStage].sub(YetuTokensToBePurchased); if(remainingYetuInStage[currentCrowdsaleStage] == 0){ switchToNextStage(); // Switch to Next Crowdsale Stage when all tokens allocated for current stage are being sold out } } // Finish: Finalizing the Crowdsale. // ==================================================================== function endCrowdsale() public onlyOwner { require(!isEnded,"Crowdsale already finalized"); uint256 unsoldTokens = yetu.balanceOf(address(this)); if (unsoldTokens > 0) { yetu.burn(unsoldTokens); } for(uint8 i = 1; i<=5; i++){ remainingYetuInStage[i] = 0; } currentCrowdsaleStage = 0; emit Ended(totalBNBRaised,unsoldTokens); isEnded = true; } // =============================== function yetuTokenBalance(address tokenHolder) external view returns(uint256 balance){ return yetu.balanceOf(tokenHolder); } /** * Returns the latest BNB-USD price */ function getLatestBNBPrice() public view returns (uint256){ IStdReference.ReferenceData memory data = ref.getReferenceData("BNB","USD"); return data.rate; } function withdrawFunds(uint256 amount) public onlyOwner { require(amount <= address(this).balance,"Insufficient Funds"); owner.transfer(amount); emit BNBTransferred("Funds Withdrawn to Owner Account"); } function transferYetuOwnership(address _newOwner) public onlyOwner{ return yetu.transferOwnership(_newOwner); } }
File 2 of 2: YetubitToken.sol
// SPDX-License-Identifier: MIT pragma solidity 0.6.12; interface IBEP20 { /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the token decimals. */ function decimals() external view returns (uint8); /** * @dev Returns the token symbol. */ function symbol() external view returns (string memory); /** * @dev Returns the token name. */ function name() external view returns (string memory); /** * @dev Returns the bep token owner. */ function getOwner() external view returns (address); /** * @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); } /* * @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. */ contract Context { // Empty internal constructor, to prevent people from mistakenly deploying // an instance of this contract, which should be used via inheritance. constructor () internal { } function _msgSender() internal view returns (address payable) { return msg.sender; } function _msgData() internal view returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } /** * @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, reverting on * overflow. * * Counterpart to Solidity's `+` operator. * * Requirements: * - Addition cannot overflow. */ function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } /** * @dev Returns the subtraction of two unsigned integers, reverting on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } /** * @dev Returns the subtraction of two unsigned integers, reverting with custom message on * overflow (when the result is negative). * * Counterpart to Solidity's `-` operator. * * Requirements: * - Subtraction cannot overflow. */ function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } /** * @dev Returns the multiplication of two unsigned integers, reverting on * overflow. * * Counterpart to Solidity's `*` operator. * * Requirements: * - Multiplication cannot overflow. */ function mul(uint256 a, uint256 b) internal pure returns (uint256) { // Gas optimization: this is cheaper than requiring 'a' not being zero, but the // benefit is lost if 'b' is also tested. // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522 if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } /** * @dev Returns the integer division of two unsigned integers. Reverts on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } /** * @dev Returns the integer division of two unsigned integers. Reverts with custom message on * division by zero. The result is rounded towards zero. * * Counterpart to Solidity's `/` operator. Note: this function uses a * `revert` opcode (which leaves remaining gas untouched) while Solidity * uses an invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { // Solidity only automatically asserts when dividing by 0 require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } /** * @dev Returns the remainder of dividing two unsigned integers. (unsigned integer modulo), * Reverts with custom message when dividing by zero. * * Counterpart to Solidity's `%` operator. This function uses a `revert` * opcode (which leaves remaining gas untouched) while Solidity uses an * invalid opcode to revert (consuming all remaining gas). * * Requirements: * - The divisor cannot be zero. */ function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } /** * @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. */ 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() internal view 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 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 onlyOwner { _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). */ function _transferOwnership(address newOwner) internal { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } contract YetubitToken is Context, IBEP20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; uint256 private _totalSupply; uint8 private _decimals; string private _symbol; string private _name; uint256 public constant maxSupply = 300000000*1e18; //300,000,000 Yetubit Token constructor(address _dev) public { _name = "Yetucoin"; _symbol = "YETU"; _decimals = 18; address crowdsaleContract = msg.sender; //depoloyer is actually from the Crowdsale smart contract uint256 crowdsaleAllocation = 60000000*1e18; //60,000,000 Yetubit TOKEN Crowdsale Supply uint256 devFunds = 40000000*1e18; //40,000,000 Yetubit TOKEN Dev Funds _mint(crowdsaleContract, crowdsaleAllocation); //mint crowdsaleAllocation to Crowdsale Contract _mint(_dev, devFunds); //mint devFunds to Developer address } /** * @dev Returns the bep token owner. */ function getOwner() external override view returns (address) { return owner(); } /** * @dev Returns the token decimals. */ function decimals() external override view returns (uint8) { return _decimals; } /** * @dev Returns the token symbol. */ function symbol() external override view returns (string memory) { return _symbol; } /** * @dev Returns the token name. */ function name() external override view returns (string memory) { return _name; } /** * @dev See {BEP20-totalSupply}. */ function totalSupply() external override view returns (uint256) { return _totalSupply; } /** * @dev See {BEP20-balanceOf}. */ function balanceOf(address account) external override view returns (uint256) { return _balances[account]; } /** * @dev See {BEP20-transfer}. * * Requirements: * * - `recipient` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address recipient, uint256 amount) external override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } /** * @dev See {BEP20-allowance}. */ function allowance(address owner, address spender) external override view returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {BEP20-approve}. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) external override returns (bool) { _approve(_msgSender(), spender, amount); return true; } /** * @dev See {BEP20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {BEP20}; * * 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) external override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "BEP20: 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 {BEP20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public 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 {BEP20-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 returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "BEP20: decreased allowance below zero")); return true; } /** * @dev Creates `amount` tokens and assigns them to `msg.sender`, increasing * the total supply. * * Requirements * * - `msg.sender` must be the token owner */ function mint(uint256 amount) public onlyOwner returns (bool) { require(_totalSupply.add(amount) <= maxSupply,"Max Supply Reached, no new tokens be minted"); _mint(_msgSender(), amount); 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 { require(sender != address(0), "BEP20: transfer from the zero address"); require(recipient != address(0), "BEP20: transfer to the zero address"); _balances[sender] = _balances[sender].sub(amount, "BEP20: 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 { require(account != address(0), "BEP20: mint to the zero address"); _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. * * Requirements * * - `msg.sender` must be the token owner */ function burn(uint256 amount) public returns (bool) { _burn(_msgSender(), amount); return true; } /** * @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 { require(account != address(0), "BEP20: burn from the zero address"); _balances[account] = _balances[account].sub(amount, "BEP20: 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 is 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 { require(owner != address(0), "BEP20: approve from the zero address"); require(spender != address(0), "BEP20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } /** * @dev Destroys `amount` tokens from `account`.`amount` is then deducted * from the caller's allowance. * * See {_burn} and {_approve}. */ function burnFrom(address account, uint256 amount) public { _burn(account, amount); _approve(account, _msgSender(), _allowances[account][_msgSender()].sub(amount, "BEP20: burn amount exceeds allowance")); } }
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"string","name":"text","type":"string"}],"name":"BNBTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"totalBNBRaisedInCrowdsale","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"unsoldTokensTransferredToOwner","type":"uint256"}],"name":"Ended","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"purchaser","type":"address"},{"indexed":true,"internalType":"address","name":"beneficiary","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"YetuTokenAmount","type":"uint256"}],"name":"TokenPurchase","type":"event"},{"inputs":[{"internalType":"address","name":"_beneficiary","type":"address"}],"name":"buyYetuTokens","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"currentCrowdsaleStage","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"currentYetuTokenUSDPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"endCrowdsale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getLatestBNBPrice","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isEnded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"remainingYetuInStage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"switchToNextStage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalBNBRaised","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalYetuTokensForSale","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferYetuOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"withdrawFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"yetu","outputs":[{"internalType":"contract YetubitToken","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"tokenHolder","type":"address"}],"name":"yetuTokenBalance","outputs":[{"internalType":"uint256","name":"balance","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"yetuUSDPriceInStages","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405260008060146101000a81548160ff0219169083151502179055506a31a17e847807b1bc0000006003553480156200003a57600080fd5b5033600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600260146101000a81548160ff021916908360ff1602179055506a0422ca8b0a00a4250000006005600060018152602001908152602001600020819055506a108b2a2c280290940000006005600060028152602001908152602001600020819055506a108b2a2c280290940000006005600060038152602001908152602001600020819055506a084595161401484a0000006005600060048152602001908152602001600020819055506a0422ca8b0a00a425000000600560006005815260200190815260200160002081905550668e1bc9bf04000060066000600181526020019081526020016000208190555067011c37937e0800006006600060028152602001908152602001600020819055506702c68af0bb14000060066000600381526020019081526020016000208190555067058d15e176280000600660006004815260200190815260200160002081905550670b1a2bc2ec50000060066000600581526020019081526020016000208190555060066000600181526020019081526020016000205460018190555073da7a001b254cd22e46d3eab04d937489c93174c36000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16604051620002909062000300565b6200029c91906200031f565b604051809103906000f080158015620002b9573d6000803e3d6000fd5b50600260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000398565b6122768062001cf483390190565b62000319816200035c565b82525050565b60006020820190506200033660008301846200030e565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620003698262000370565b9050919050565b60006200037d8262000384565b9050919050565b600062000391826200033c565b9050919050565b61194c80620003a86000396000f3fe6080604052600436106100f75760003560e01c80638c5318931161008a578063a4fd6f5611610059578063a4fd6f5614610327578063a52f8c6414610352578063bf48b5961461037d578063c7fc51e6146103a857610121565b80638c5318931461028a5780638da5cb5b146102b55780639e14aff5146102e0578063a3f38bb4146102fc57610121565b8063504e4730116100c6578063504e4730146101e057806351b7e9bc1461020b578063695524d2146102365780637a3028a41461024d57610121565b80630fe8c8d314610126578063155dd5ee146101635780632095f2d41461018c5780634724930b146101a357610121565b3661012157600060149054906101000a900460ff161561011657600080fd5b61011f336103d1565b005b600080fd5b34801561013257600080fd5b5061014d60048036038101906101489190611245565b6105a4565b60405161015a9190611724565b60405180910390f35b34801561016f57600080fd5b5061018a60048036038101906101859190611245565b6105bc565b005b34801561019857600080fd5b506101a16106fa565b005b3480156101af57600080fd5b506101ca60048036038101906101c591906111ca565b6109bc565b6040516101d79190611724565b60405180910390f35b3480156101ec57600080fd5b506101f5610a70565b6040516102029190611724565b60405180910390f35b34801561021757600080fd5b50610220610b2e565b60405161022d9190611724565b60405180910390f35b34801561024257600080fd5b5061024b610b34565b005b34801561025957600080fd5b50610274600480360381019061026f9190611245565b610c2a565b6040516102819190611724565b60405180910390f35b34801561029657600080fd5b5061029f610c42565b6040516102ac9190611724565b60405180910390f35b3480156102c157600080fd5b506102ca610c48565b6040516102d79190611595565b60405180910390f35b6102fa60048036038101906102f591906111ca565b6103d1565b005b34801561030857600080fd5b50610311610c6e565b60405161031e91906115f4565b60405180910390f35b34801561033357600080fd5b5061033c610c94565b60405161034991906115d9565b60405180910390f35b34801561035e57600080fd5b50610367610ca7565b6040516103749190611724565b60405180910390f35b34801561038957600080fd5b50610392610cad565b60405161039f9190611768565b60405180910390f35b3480156103b457600080fd5b506103cf60048036038101906103ca91906111ca565b610cc0565b005b600034905060008111610419576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161041090611704565b60405180910390fd5b600060149054906101000a900460ff161561043357600080fd5b61043c82610daa565b600061044782610de7565b905060056000600260149054906101000a900460ff1660ff1681526020019081526020016000205481111561047b57600080fd5b6104858382610e1e565b8273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f623b3804fa71d67900d064613da8f94b9617215ee90799290593e1745087ad1884846040516104e492919061173f565b60405180910390a361050182600454610e2c90919063ffffffff16565b60048190555061053f8160056000600260149054906101000a900460ff1660ff16815260200190815260200160002054610e8190919063ffffffff16565b60056000600260149054906101000a900460ff1660ff16815260200190815260200160002081905550600060056000600260149054906101000a900460ff1660ff16815260200190815260200160002054141561059f5761059e610b34565b5b505050565b60056020528060005260406000206000915090505481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461061657600080fd5b47811115610659576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161065090611684565b60405180910390fd5b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156106c1573d6000803e3d6000fd5b507f790d094343f9755c47a29871b05f467d042f9cce6a6a87459921af6e4401fcdf6040516106ef906116e4565b60405180910390a150565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461075457600080fd5b600060149054906101000a900460ff16156107a4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079b906116a4565b60405180910390fd5b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401610801919061157a565b60206040518083038186803b15801561081957600080fd5b505afa15801561082d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610851919061126e565b9050600081111561090b57600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166342966c68826040518263ffffffff1660e01b81526004016108b79190611724565b602060405180830381600087803b1580156108d157600080fd5b505af11580156108e5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061090991906111f3565b505b6000600190505b60058160ff1611610946576000600560008360ff168152602001908152602001600020819055508080600101915050610912565b506000600260146101000a81548160ff021916908360ff1602179055507feadd714b167a6d432dd3d920fddab9ad589f3ccb20b9aa2c0850c7b56b43a4426004548260405161099692919061173f565b60405180910390a16001600060146101000a81548160ff02191690831515021790555050565b6000600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231836040518263ffffffff1660e01b8152600401610a19919061155f565b60206040518083038186803b158015610a3157600080fd5b505afa158015610a45573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a69919061126e565b9050919050565b6000610a7a6110f5565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166365555bcc6040518163ffffffff1660e01b8152600401610ad190611651565b60606040518083038186803b158015610ae957600080fd5b505afa158015610afd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b21919061121c565b9050806000015191505090565b60045481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610b8e57600080fd5b6001600260149054906101000a900460ff1601600260146101000a81548160ff021916908360ff1602179055506006600260149054906101000a900460ff1660ff161480610bee57506000600260149054906101000a900460ff1660ff16145b15610bfc57610bfb6106fa565b5b60066000600260149054906101000a900460ff1660ff16815260200190815260200160002054600181905550565b60066020528060005260406000206000915090505481565b60035481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600060149054906101000a900460ff1681565b60015481565b600260149054906101000a900460ff1681565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610d1a57600080fd5b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f2fde38b826040518263ffffffff1660e01b8152600401610d75919061155f565b600060405180830381600087803b158015610d8f57600080fd5b505af1158015610da3573d6000803e3d6000fd5b5050505050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415610de457600080fd5b50565b6000610e17600154610e09610dfa610a70565b85610ecb90919063ffffffff16565b610f3b90919063ffffffff16565b9050919050565b610e288282610f85565b5050565b600080828401905083811015610e77576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6e90611631565b60405180910390fd5b8091505092915050565b6000610ec383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611039565b905092915050565b600080831415610ede5760009050610f35565b6000828402905082848281610eef57fe5b0414610f30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f27906116c4565b60405180910390fd5b809150505b92915050565b6000610f7d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611094565b905092915050565b600260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb83836040518363ffffffff1660e01b8152600401610fe29291906115b0565b602060405180830381600087803b158015610ffc57600080fd5b505af1158015611010573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061103491906111f3565b505050565b6000838311158290611081576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611078919061160f565b60405180910390fd5b5060008385039050809150509392505050565b600080831182906110db576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d2919061160f565b60405180910390fd5b5060008385816110e757fe5b049050809150509392505050565b60405180606001604052806000815260200160008152602001600081525090565b600081359050611125816118d1565b92915050565b60008151905061113a816118e8565b92915050565b60006060828403121561115257600080fd5b61115c6060611783565b9050600061116c848285016111b5565b6000830152506020611180848285016111b5565b6020830152506040611194848285016111b5565b60408301525092915050565b6000813590506111af816118ff565b92915050565b6000815190506111c4816118ff565b92915050565b6000602082840312156111dc57600080fd5b60006111ea84828501611116565b91505092915050565b60006020828403121561120557600080fd5b60006112138482850161112b565b91505092915050565b60006060828403121561122e57600080fd5b600061123c84828501611140565b91505092915050565b60006020828403121561125757600080fd5b6000611265848285016111a0565b91505092915050565b60006020828403121561128057600080fd5b600061128e848285016111b5565b91505092915050565b6112a081611833565b82525050565b6112af816117de565b82525050565b6112be816117cc565b82525050565b6112cd816117f0565b82525050565b6112dc81611845565b82525050565b60006112ed826117b0565b6112f781856117bb565b935061130781856020860161188d565b611310816118c0565b840191505092915050565b6000611328601b836117bb565b91507f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006000830152602082019050919050565b60006113686003836117bb565b91507f424e4200000000000000000000000000000000000000000000000000000000006000830152602082019050919050565b60006113a86012836117bb565b91507f496e73756666696369656e742046756e647300000000000000000000000000006000830152602082019050919050565b60006113e8601b836117bb565b91507f43726f776473616c6520616c72656164792066696e616c697a656400000000006000830152602082019050919050565b60006114286021836117bb565b91507f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008301527f77000000000000000000000000000000000000000000000000000000000000006020830152604082019050919050565b600061148e6020836117bb565b91507f46756e64732057697468647261776e20746f204f776e6572204163636f756e746000830152602082019050919050565b60006114ce6003836117bb565b91507f55534400000000000000000000000000000000000000000000000000000000006000830152602082019050919050565b600061150e6014836117bb565b91507f506c656173652053656e6420736f6d6520424e420000000000000000000000006000830152602082019050919050565b61154a8161181c565b82525050565b61155981611826565b82525050565b600060208201905061157460008301846112b5565b92915050565b600060208201905061158f6000830184611297565b92915050565b60006020820190506115aa60008301846112a6565b92915050565b60006040820190506115c560008301856112b5565b6115d26020830184611541565b9392505050565b60006020820190506115ee60008301846112c4565b92915050565b600060208201905061160960008301846112d3565b92915050565b6000602082019050818103600083015261162981846112e2565b905092915050565b6000602082019050818103600083015261164a8161131b565b9050919050565b6000604082019050818103600083015261166a8161135b565b9050818103602083015261167d816114c1565b9050919050565b6000602082019050818103600083015261169d8161139b565b9050919050565b600060208201905081810360008301526116bd816113db565b9050919050565b600060208201905081810360008301526116dd8161141b565b9050919050565b600060208201905081810360008301526116fd81611481565b9050919050565b6000602082019050818103600083015261171d81611501565b9050919050565b60006020820190506117396000830184611541565b92915050565b60006040820190506117546000830185611541565b6117616020830184611541565b9392505050565b600060208201905061177d6000830184611550565b92915050565b6000604051905081810181811067ffffffffffffffff821117156117a657600080fd5b8060405250919050565b600081519050919050565b600082825260208201905092915050565b60006117d7826117fc565b9050919050565b60006117e9826117fc565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b600061183e82611869565b9050919050565b600061185082611857565b9050919050565b6000611862826117fc565b9050919050565b60006118748261187b565b9050919050565b6000611886826117fc565b9050919050565b60005b838110156118ab578082015181840152602081019050611890565b838111156118ba576000848401525b50505050565b6000601f19601f8301169050919050565b6118da816117cc565b81146118e557600080fd5b50565b6118f1816117f0565b81146118fc57600080fd5b50565b6119088161181c565b811461191357600080fd5b5056fea264697066735822122089e45b264b03a0f256946186cbc2f25298b119454aae13ce1996177921698d4a64736f6c634300060c003360806040523480156200001157600080fd5b506040516200227638038062002276833981810160405260208110156200003757600080fd5b810190808051906020019092919050505060006200005a6200020360201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3506040518060400160405280600881526020017f59657475636f696e000000000000000000000000000000000000000000000000815250600690805190602001906200014592919062000460565b506040518060400160405280600481526020017f5945545500000000000000000000000000000000000000000000000000000000815250600590805190602001906200019392919062000460565b506012600460006101000a81548160ff021916908360ff160217905550600033905060006a31a17e847807b1bc000000905060006a21165458500521280000009050620001e783836200020b60201b60201c565b620001f984826200020b60201b60201c565b5050505062000506565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415620002af576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f42455032303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b620002cb81600354620003d760201b620010431790919060201c565b6003819055506200032a81600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054620003d760201b620010431790919060201c565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008082840190508381101562000456576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620004a357805160ff1916838001178555620004d4565b82800160010185558215620004d4579182015b82811115620004d3578251825591602001919060010190620004b6565b5b509050620004e39190620004e7565b5090565b5b8082111562000502576000816000905550600101620004e8565b5090565b611d6080620005166000396000f3fe608060405234801561001057600080fd5b50600436106101165760003560e01c806379cc6790116100a2578063a457c2d711610071578063a457c2d714610518578063a9059cbb1461057c578063d5abeb01146105e0578063dd62ed3e146105fe578063f2fde38b1461067657610116565b806379cc6790146103cf578063893d20e81461041d57806395d89b4114610451578063a0712d68146104d457610116565b8063313ce567116100e9578063313ce567146102a457806339509351146102c557806342966c681461032957806370a082311461036d578063715018a6146103c557610116565b806306fdde031461011b578063095ea7b31461019e57806318160ddd1461020257806323b872dd14610220575b600080fd5b6101236106ba565b6040518080602001828103825283818151815260200191508051906020019080838360005b83811015610163578082015181840152602081019050610148565b50505050905090810190601f1680156101905780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6101ea600480360360408110156101b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061075c565b60405180821515815260200191505060405180910390f35b61020a61077a565b6040518082815260200191505060405180910390f35b61028c6004803603606081101561023657600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610784565b60405180821515815260200191505060405180910390f35b6102ac61085d565b604051808260ff16815260200191505060405180910390f35b610311600480360360408110156102db57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610874565b60405180821515815260200191505060405180910390f35b6103556004803603602081101561033f57600080fd5b8101908080359060200190929190505050610927565b60405180821515815260200191505060405180910390f35b6103af6004803603602081101561038357600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610943565b6040518082815260200191505060405180910390f35b6103cd61098c565b005b61041b600480360360408110156103e557600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b12565b005b610425610be1565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b610459610bf0565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561049957808201518184015260208101905061047e565b50505050905090810190601f1680156104c65780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b610500600480360360208110156104ea57600080fd5b8101908080359060200190929190505050610c92565b60405180821515815260200191505060405180910390f35b6105646004803603604081101561052e57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610dee565b60405180821515815260200191505060405180910390f35b6105c86004803603604081101561059257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610ebb565b60405180821515815260200191505060405180910390f35b6105e8610ed9565b6040518082815260200191505060405180910390f35b6106606004803603604081101561061457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610ee8565b6040518082815260200191505060405180910390f35b6106b86004803603602081101561068c57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610f6f565b005b606060068054600181600116156101000203166002900480601f0160208091040260200160405190810160405280929190818152602001828054600181600116156101000203166002900480156107525780601f1061072757610100808354040283529160200191610752565b820191906000526020600020905b81548152906001019060200180831161073557829003601f168201915b5050505050905090565b60006107706107696110cb565b84846110d3565b6001905092915050565b6000600354905090565b60006107918484846112ca565b6108528461079d6110cb565b61084d85604051806060016040528060288152602001611be160289139600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006108036110cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115849092919063ffffffff16565b6110d3565b600190509392505050565b6000600460009054906101000a900460ff16905090565b600061091d6108816110cb565b8461091885600260006108926110cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104390919063ffffffff16565b6110d3565b6001905092915050565b600061093a6109346110cb565b83611644565b60019050919050565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6109946110cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a54576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610b1c8282611644565b610bdd82610b286110cb565b610bd884604051806060016040528060248152602001611ce560249139600260008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610b8e6110cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115849092919063ffffffff16565b6110d3565b5050565b6000610beb6117fe565b905090565b606060058054600181600116156101000203166002900480601f016020809104026020016040519081016040528092919081815260200182805460018160011615610100020316600290048015610c885780601f10610c5d57610100808354040283529160200191610c88565b820191906000526020600020905b815481529060010190602001808311610c6b57829003601f168201915b5050505050905090565b6000610c9c6110cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d5c576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b6af8277896582678ac000000610d7d8360035461104390919063ffffffff16565b1115610dd4576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602b815260200180611c98602b913960400191505060405180910390fd5b610de5610ddf6110cb565b83611827565b60019050919050565b6000610eb1610dfb6110cb565b84610eac85604051806060016040528060258152602001611c526025913960026000610e256110cb565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115849092919063ffffffff16565b6110d3565b6001905092915050565b6000610ecf610ec86110cb565b84846112ca565b6001905092915050565b6af8277896582678ac00000081565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b610f776110cb565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611037576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260208152602001807f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657281525060200191505060405180910390fd5b611040816119e4565b50565b6000808284019050838110156110c1576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611159576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526024815260200180611b976024913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156111df576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526022815260200180611d096022913960400191505060405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040518082815260200191505060405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611350576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526025815260200180611b726025913960400191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156113d6576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526023815260200180611c2f6023913960400191505060405180910390fd5b61144281604051806060016040528060268152602001611c0960269139600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115849092919063ffffffff16565b600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506114d781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104390919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a3505050565b6000838311158290611631576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825283818151815260200191508051906020019080838360005b838110156115f65780820151818401526020810190506115db565b50505050905090810190601f1680156116235780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385039050809150509392505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156116ca576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526021815260200180611c776021913960400191505060405180910390fd5b61173681604051806060016040528060228152602001611cc360229139600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546115849092919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061178e81600354611b2790919063ffffffff16565b600381905550600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156118ca576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f42455032303a206d696e7420746f20746865207a65726f20616464726573730081525060200191505060405180910390fd5b6118df8160035461104390919063ffffffff16565b60038190555061193781600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461104390919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040518082815260200191505060405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611a6a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401808060200182810382526026815260200180611bbb6026913960400191505060405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000611b6983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611584565b90509291505056fe42455032303a207472616e736665722066726f6d20746865207a65726f206164647265737342455032303a20617070726f76652066726f6d20746865207a65726f20616464726573734f776e61626c653a206e6577206f776e657220697320746865207a65726f206164647265737342455032303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636542455032303a207472616e7366657220616d6f756e7420657863656564732062616c616e636542455032303a207472616e7366657220746f20746865207a65726f206164647265737342455032303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726f42455032303a206275726e2066726f6d20746865207a65726f20616464726573734d617820537570706c7920526561636865642c206e6f206e657720746f6b656e73206265206d696e74656442455032303a206275726e20616d6f756e7420657863656564732062616c616e636542455032303a206275726e20616d6f756e74206578636565647320616c6c6f77616e636542455032303a20617070726f766520746f20746865207a65726f2061646472657373a26469706673582212202f5e49b2eb49f4c6949c8100be6ac2157aba188fb41867f18022a5ea35f2ca9664736f6c634300060c0033
Deployed ByteCode Sourcemap
782:8407:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6211:7;;;;;;;;;;;6208:103;;;6236:8;;;6208:103;6323:25;6337:10;6323:13;:25::i;:::-;782:8407;;;;;2165:56;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8808:235;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7803:549;;;;;;;;;;;;;:::i;:::-;;8412:142;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8621:179;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2026:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3910:323;;;;;;;;;;;;;:::i;:::-;;2231:56;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1781:55;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2419:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6374:1284;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1619:24;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1388:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1535:39;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1662:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9057:125;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6374:1284;6447:17;6467:9;6447:29;;6509:1;6497:9;:13;6489:45;;;;;;;;;;;;:::i;:::-;;;;;;;;;6550:7;;;;;;;;;;;6547:48;;;6573:8;;;6547:48;6619:34;6640:12;6619:20;:34::i;:::-;6666:31;6700:26;6716:9;6700:15;:26::i;:::-;6666:60;;6769:20;:43;6790:21;;;;;;;;;;;6769:43;;;;;;;;;;;;;;6743:23;:69;6739:226;;;6830:8;;;6739:226;6979:55;6996:12;7010:23;6979:16;:55::i;:::-;7111:12;7054:150;;7084:10;7054:150;;;7140:9;7166:23;7054:150;;;;;;;:::i;:::-;;;;;;;;7248:29;7267:9;7248:14;;:18;;:29;;;;:::i;:::-;7231:14;:46;;;;7336:72;7384:23;7336:20;:43;7357:21;;;;;;;;;;;7336:43;;;;;;;;;;;;;;:47;;:72;;;;:::i;:::-;7290:20;:43;7311:21;;;;;;;;;;;7290:43;;;;;;;;;;;;;:118;;;;7483:1;7436:20;:43;7457:21;;;;;;;;;;;7436:43;;;;;;;;;;;;;;:48;7433:204;;;7502:19;:17;:19::i;:::-;7433:204;6374:1284;;;:::o;2165:56::-;;;;;;;;;;;;;;;;;:::o;8808:235::-;2521:5;;;;;;;;;;;2507:19;;:10;:19;;;2498:29;;;;;;8893:21:::1;8883:6;:31;;8875:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;8947:5;;;;;;;;;;;:14;;:22;8962:6;8947:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;8985:50;;;;;;:::i;:::-;;;;;;;;8808:235:::0;:::o;7803:549::-;2521:5;;;;;;;;;;;2507:19;;:10;:19;;;2498:29;;;;;;7866:7:::1;;;;;;;;;;;7865:8;7857:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;7920:20;7943:4;;;;;;;;;;;:14;;;7966:4;7943:29;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7920:52;;8068:1;8053:12;:16;8049:76;;;8088:4;;;;;;;;;;;:9;;;8098:12;8088:23;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8049:76;8141:7;8151:1;8141:11;;8137:87;8157:1;8154;:4;;;8137:87;;8206:1;8180:20;:23;8201:1;8180:23;;;;;;;;;;;;;:27;;;;8160:3;;;;;;;8137:87;;;;8262:1;8238:21;;:25;;;;;;;;;;;;;;;;;;8281:34;8287:14;;8302:12;8281:34;;;;;;;:::i;:::-;;;;;;;;8338:4;8328:7;;:14;;;;;;;;;;;;;;;;;;2542:1;7803:549::o:0;8412:142::-;8481:15;8517:4;;;;;;;;;;;:14;;;8532:11;8517:27;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8510:34;;8412:142;;;:::o;8621:179::-;8671:7;8690:39;;:::i;:::-;8732:3;;;;;;;;;;:20;;;:33;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8690:75;;8783:4;:9;;;8776:16;;;8621:179;:::o;2026:29::-;;;;:::o;3910:323::-;2521:5;;;;;;;;;;;2507:19;;:10;:19;;;2498:29;;;;;;4017:1:::1;3993:21;;;;;;;;;;;:25;3969:21;;:49;;;;;;;;;;;;;;;;;;4060:1;4035:21;;;;;;;;;;;:26;;;4034:60;;;;4092:1;4067:21;;;;;;;;;;;:26;;;4034:60;4031:109;;;4112:14;:12;:14::i;:::-;4031:109;4179:20;:43;4200:21;;;;;;;;;;;4179:43;;;;;;;;;;;;;;4152:24;:70;;;;3910:323::o:0;2231:56::-;;;;;;;;;;;;;;;;;:::o;1781:55::-;;;;:::o;2419:28::-;;;;;;;;;;;;;:::o;1619:24::-;;;;;;;;;;;;;:::o;1388:27::-;;;;;;;;;;;;;:::o;1535:39::-;;;;:::o;1662:34::-;;;;;;;;;;;;;:::o;9057:125::-;2521:5;;;;;;;;;;;2507:19;;:10;:19;;;2498:29;;;;;;9141:4:::1;;;;;;;;;;;:22;;;9164:9;9141:33;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;9057:125:::0;:::o;4501:156::-;4644:1;4620:26;;:12;:26;;;;4612:35;;;;;;4501:156;:::o;5892:186::-;5969:7;6003:65;6043:24;;6003:35;6018:19;:17;:19::i;:::-;6003:10;:14;;:35;;;;:::i;:::-;:39;;:65;;;;:::i;:::-;5996:72;;5892:186;;;:::o;5436:185::-;5569:42;5584:12;5598;5569:14;:42::i;:::-;5436:185;;:::o;4870:167:1:-;4928:7;4944:9;4960:1;4956;:5;4944:17;;4981:1;4976;:6;;4968:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;5030:1;5023:8;;;4870:167;;;;:::o;5292:130::-;5350:7;5373:43;5377:1;5380;5373:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;5366:50;;5292:130;;;;:::o;6106:431::-;6164:7;6398:1;6393;:6;6389:37;;;6417:1;6410:8;;;;6389:37;6434:9;6450:1;6446;:5;6434:17;;6475:1;6470;6466;:5;;;;;;:10;6458:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;6530:1;6523:8;;;6106:431;;;;;:::o;6981:126::-;7039:7;7062:39;7066:1;7069;7062:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;7055:46;;6981:126;;;;:::o;4967:182:0:-;5098:4;;;;;;;;;;;:13;;;5112:12;5126;5098:41;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;4967:182;;:::o;5697:178:1:-;5783:7;5812:1;5807;:6;;5815:12;5799:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;5835:9;5851:1;5847;:5;5835:17;;5868:1;5861:8;;;5697:178;;;;;:::o;7571:323::-;7657:7;7748:1;7744;:5;7751:12;7736:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;7771:9;7787:1;7783;:5;;;;;;7771:17;;7887:1;7880:8;;;7571:323;;;;;:::o;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o;5:130::-;;85:6;72:20;63:29;;97:33;124:5;97:33;:::i;:::-;57:78;;;;:::o;142:128::-;;223:6;217:13;208:22;;235:30;259:5;235:30;:::i;:::-;202:68;;;;:::o;318:682::-;;447:4;435:9;430:3;426:19;422:30;419:2;;;465:1;462;455:12;419:2;483:20;498:4;483:20;:::i;:::-;474:29;;553:1;585:60;641:3;632:6;621:9;617:22;585:60;:::i;:::-;578:4;571:5;567:16;560:86;513:144;718:2;751:60;807:3;798:6;787:9;783:22;751:60;:::i;:::-;744:4;737:5;733:16;726:86;667:156;885:2;918:60;974:3;965:6;954:9;950:22;918:60;:::i;:::-;911:4;904:5;900:16;893:86;833:157;413:587;;;;:::o;1007:130::-;;1087:6;1074:20;1065:29;;1099:33;1126:5;1099:33;:::i;:::-;1059:78;;;;:::o;1144:134::-;;1228:6;1222:13;1213:22;;1240:33;1267:5;1240:33;:::i;:::-;1207:71;;;;:::o;1285:241::-;;1389:2;1377:9;1368:7;1364:23;1360:32;1357:2;;;1405:1;1402;1395:12;1357:2;1440:1;1457:53;1502:7;1493:6;1482:9;1478:22;1457:53;:::i;:::-;1447:63;;1419:97;1351:175;;;;:::o;1533:257::-;;1645:2;1633:9;1624:7;1620:23;1616:32;1613:2;;;1661:1;1658;1651:12;1613:2;1696:1;1713:61;1766:7;1757:6;1746:9;1742:22;1713:61;:::i;:::-;1703:71;;1675:105;1607:183;;;;:::o;1797:321::-;;1941:2;1929:9;1920:7;1916:23;1912:32;1909:2;;;1957:1;1954;1947:12;1909:2;1992:1;2009:93;2094:7;2085:6;2074:9;2070:22;2009:93;:::i;:::-;1999:103;;1971:137;1903:215;;;;:::o;2125:241::-;;2229:2;2217:9;2208:7;2204:23;2200:32;2197:2;;;2245:1;2242;2235:12;2197:2;2280:1;2297:53;2342:7;2333:6;2322:9;2318:22;2297:53;:::i;:::-;2287:63;;2259:97;2191:175;;;;:::o;2373:263::-;;2488:2;2476:9;2467:7;2463:23;2459:32;2456:2;;;2504:1;2501;2494:12;2456:2;2539:1;2556:64;2612:7;2603:6;2592:9;2588:22;2556:64;:::i;:::-;2546:74;;2518:108;2450:186;;;;:::o;2643:142::-;2734:45;2773:5;2734:45;:::i;:::-;2729:3;2722:58;2716:69;;:::o;2792:137::-;2891:32;2917:5;2891:32;:::i;:::-;2886:3;2879:45;2873:56;;:::o;2936:113::-;3019:24;3037:5;3019:24;:::i;:::-;3014:3;3007:37;3001:48;;:::o;3056:104::-;3133:21;3148:5;3133:21;:::i;:::-;3128:3;3121:34;3115:45;;:::o;3167:168::-;3271:58;3323:5;3271:58;:::i;:::-;3266:3;3259:71;3253:82;;:::o;3342:347::-;;3454:39;3487:5;3454:39;:::i;:::-;3505:71;3569:6;3564:3;3505:71;:::i;:::-;3498:78;;3581:52;3626:6;3621:3;3614:4;3607:5;3603:16;3581:52;:::i;:::-;3654:29;3676:6;3654:29;:::i;:::-;3649:3;3645:39;3638:46;;3434:255;;;;;:::o;3697:327::-;;3857:67;3921:2;3916:3;3857:67;:::i;:::-;3850:74;;3957:29;3953:1;3948:3;3944:11;3937:50;4015:2;4010:3;4006:12;3999:19;;3843:181;;;:::o;4033:302::-;;4193:66;4257:1;4252:3;4193:66;:::i;:::-;4186:73;;4292:5;4288:1;4283:3;4279:11;4272:26;4326:2;4321:3;4317:12;4310:19;;4179:156;;;:::o;4344:318::-;;4504:67;4568:2;4563:3;4504:67;:::i;:::-;4497:74;;4604:20;4600:1;4595:3;4591:11;4584:41;4653:2;4648:3;4644:12;4637:19;;4490:172;;;:::o;4671:327::-;;4831:67;4895:2;4890:3;4831:67;:::i;:::-;4824:74;;4931:29;4927:1;4922:3;4918:11;4911:50;4989:2;4984:3;4980:12;4973:19;;4817:181;;;:::o;5007:370::-;;5167:67;5231:2;5226:3;5167:67;:::i;:::-;5160:74;;5267:34;5263:1;5258:3;5254:11;5247:55;5336:3;5331:2;5326:3;5322:12;5315:25;5368:2;5363:3;5359:12;5352:19;;5153:224;;;:::o;5386:332::-;;5546:67;5610:2;5605:3;5546:67;:::i;:::-;5539:74;;5646:34;5642:1;5637:3;5633:11;5626:55;5709:2;5704:3;5700:12;5693:19;;5532:186;;;:::o;5727:302::-;;5887:66;5951:1;5946:3;5887:66;:::i;:::-;5880:73;;5986:5;5982:1;5977:3;5973:11;5966:26;6020:2;6015:3;6011:12;6004:19;;5873:156;;;:::o;6038:320::-;;6198:67;6262:2;6257:3;6198:67;:::i;:::-;6191:74;;6298:22;6294:1;6289:3;6285:11;6278:43;6349:2;6344:3;6340:12;6333:19;;6184:174;;;:::o;6366:113::-;6449:24;6467:5;6449:24;:::i;:::-;6444:3;6437:37;6431:48;;:::o;6486:107::-;6565:22;6581:5;6565:22;:::i;:::-;6560:3;6553:35;6547:46;;:::o;6600:222::-;;6727:2;6716:9;6712:18;6704:26;;6741:71;6809:1;6798:9;6794:17;6785:6;6741:71;:::i;:::-;6698:124;;;;:::o;6829:238::-;;6964:2;6953:9;6949:18;6941:26;;6978:79;7054:1;7043:9;7039:17;7030:6;6978:79;:::i;:::-;6935:132;;;;:::o;7074:254::-;;7217:2;7206:9;7202:18;7194:26;;7231:87;7315:1;7304:9;7300:17;7291:6;7231:87;:::i;:::-;7188:140;;;;:::o;7335:333::-;;7490:2;7479:9;7475:18;7467:26;;7504:71;7572:1;7561:9;7557:17;7548:6;7504:71;:::i;:::-;7586:72;7654:2;7643:9;7639:18;7630:6;7586:72;:::i;:::-;7461:207;;;;;:::o;7675:210::-;;7796:2;7785:9;7781:18;7773:26;;7810:65;7872:1;7861:9;7857:17;7848:6;7810:65;:::i;:::-;7767:118;;;;:::o;7892:264::-;;8040:2;8029:9;8025:18;8017:26;;8054:92;8143:1;8132:9;8128:17;8119:6;8054:92;:::i;:::-;8011:145;;;;:::o;8163:310::-;;8310:2;8299:9;8295:18;8287:26;;8360:9;8354:4;8350:20;8346:1;8335:9;8331:17;8324:47;8385:78;8458:4;8449:6;8385:78;:::i;:::-;8377:86;;8281:192;;;;:::o;8480:416::-;;8680:2;8669:9;8665:18;8657:26;;8730:9;8724:4;8720:20;8716:1;8705:9;8701:17;8694:47;8755:131;8881:4;8755:131;:::i;:::-;8747:139;;8651:245;;;:::o;8903:721::-;;9204:2;9193:9;9189:18;9181:26;;9254:9;9248:4;9244:20;9240:1;9229:9;9225:17;9218:47;9279:131;9405:4;9279:131;:::i;:::-;9271:139;;9458:9;9452:4;9448:20;9443:2;9432:9;9428:18;9421:48;9483:131;9609:4;9483:131;:::i;:::-;9475:139;;9175:449;;;:::o;9631:416::-;;9831:2;9820:9;9816:18;9808:26;;9881:9;9875:4;9871:20;9867:1;9856:9;9852:17;9845:47;9906:131;10032:4;9906:131;:::i;:::-;9898:139;;9802:245;;;:::o;10054:416::-;;10254:2;10243:9;10239:18;10231:26;;10304:9;10298:4;10294:20;10290:1;10279:9;10275:17;10268:47;10329:131;10455:4;10329:131;:::i;:::-;10321:139;;10225:245;;;:::o;10477:416::-;;10677:2;10666:9;10662:18;10654:26;;10727:9;10721:4;10717:20;10713:1;10702:9;10698:17;10691:47;10752:131;10878:4;10752:131;:::i;:::-;10744:139;;10648:245;;;:::o;10900:416::-;;11100:2;11089:9;11085:18;11077:26;;11150:9;11144:4;11140:20;11136:1;11125:9;11121:17;11114:47;11175:131;11301:4;11175:131;:::i;:::-;11167:139;;11071:245;;;:::o;11323:416::-;;11523:2;11512:9;11508:18;11500:26;;11573:9;11567:4;11563:20;11559:1;11548:9;11544:17;11537:47;11598:131;11724:4;11598:131;:::i;:::-;11590:139;;11494:245;;;:::o;11746:222::-;;11873:2;11862:9;11858:18;11850:26;;11887:71;11955:1;11944:9;11940:17;11931:6;11887:71;:::i;:::-;11844:124;;;;:::o;11975:333::-;;12130:2;12119:9;12115:18;12107:26;;12144:71;12212:1;12201:9;12197:17;12188:6;12144:71;:::i;:::-;12226:72;12294:2;12283:9;12279:18;12270:6;12226:72;:::i;:::-;12101:207;;;;;:::o;12315:214::-;;12438:2;12427:9;12423:18;12415:26;;12452:67;12516:1;12505:9;12501:17;12492:6;12452:67;:::i;:::-;12409:120;;;;:::o;12536:256::-;;12598:2;12592:9;12582:19;;12636:4;12628:6;12624:17;12735:6;12723:10;12720:22;12699:18;12687:10;12684:34;12681:62;12678:2;;;12756:1;12753;12746:12;12678:2;12776:10;12772:2;12765:22;12576:216;;;;:::o;12799:122::-;;12893:5;12887:12;12877:22;;12858:63;;;:::o;12929:163::-;;13044:6;13039:3;13032:19;13081:4;13076:3;13072:14;13057:29;;13025:67;;;;:::o;13100:91::-;;13162:24;13180:5;13162:24;:::i;:::-;13151:35;;13145:46;;;:::o;13198:99::-;;13268:24;13286:5;13268:24;:::i;:::-;13257:35;;13251:46;;;:::o;13304:85::-;;13377:5;13370:13;13363:21;13352:32;;13346:43;;;:::o;13396:121::-;;13469:42;13462:5;13458:54;13447:65;;13441:76;;;:::o;13524:72::-;;13586:5;13575:16;;13569:27;;;:::o;13603:81::-;;13674:4;13667:5;13663:16;13652:27;;13646:38;;;:::o;13691:129::-;;13778:37;13809:5;13778:37;:::i;:::-;13765:50;;13759:61;;;:::o;13827:163::-;;13927:58;13979:5;13927:58;:::i;:::-;13914:71;;13908:82;;;:::o;13997:129::-;;14097:24;14115:5;14097:24;:::i;:::-;14084:37;;14078:48;;;:::o;14133:121::-;;14212:37;14243:5;14212:37;:::i;:::-;14199:50;;14193:61;;;:::o;14261:108::-;;14340:24;14358:5;14340:24;:::i;:::-;14327:37;;14321:48;;;:::o;14377:268::-;14442:1;14449:101;14463:6;14460:1;14457:13;14449:101;;;14539:1;14534:3;14530:11;14524:18;14520:1;14515:3;14511:11;14504:39;14485:2;14482:1;14478:10;14473:15;;14449:101;;;14565:6;14562:1;14559:13;14556:2;;;14630:1;14621:6;14616:3;14612:16;14605:27;14556:2;14426:219;;;;:::o;14653:97::-;;14741:2;14737:7;14732:2;14725:5;14721:14;14717:28;14707:38;;14701:49;;;:::o;14758:117::-;14827:24;14845:5;14827:24;:::i;:::-;14820:5;14817:35;14807:2;;14866:1;14863;14856:12;14807:2;14801:74;:::o;14882:111::-;14948:21;14963:5;14948:21;:::i;:::-;14941:5;14938:32;14928:2;;14984:1;14981;14974:12;14928:2;14922:71;:::o;15000:117::-;15069:24;15087:5;15069:24;:::i;:::-;15062:5;15059:35;15049:2;;15108:1;15105;15098:12;15049:2;15043:74;:::o
Swarm Source
ipfs://2f5e49b2eb49f4c6949c8100be6ac2157aba188fb41867f18022a5ea35f2ca96
Age | Block | Fee Address | BC Fee Address | Voting Power | Jailed | Incoming |
---|
Make sure to use the "Vote Down" button for any spammy posts, and the "Vote Up" for interesting conversations.