Contract Overview
Balance:
0 AVAX
AVAX Value:
$0.00
My Name Tag:
Not Available, login to update
[ Download CSV Export ]
Contract Name:
HOEPublicPresale
Compiler Version
v0.6.12+commit.27d51765
Contract Source Code (Solidity)
/** *Submitted for verification at snowtrace.io on 2022-05-14 */ // SPDX-License-Identifier: MIT // File: @openzeppelin/contracts/utils/Context.sol 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/access/Ownable.sol 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: @openzeppelin/contracts/utils/ReentrancyGuard.sol pragma solidity >=0.6.0 <0.8.0; /** * @dev Contract module that helps prevent reentrant calls to a function. * * Inheriting from `ReentrancyGuard` will make the {nonReentrant} modifier * available, which can be applied to functions to make sure there are no nested * (reentrant) calls to them. * * Note that because there is a single `nonReentrant` guard, functions marked as * `nonReentrant` may not call one another. This can be worked around by making * those functions `private`, and then adding `external` `nonReentrant` entry * points to them. * * TIP: If you would like to learn more about reentrancy and alternative ways * to protect against it, check out our blog post * https://blog.openzeppelin.com/reentrancy-after-istanbul/[Reentrancy After Istanbul]. */ abstract contract ReentrancyGuard { // Booleans are more expensive than uint256 or any type that takes up a full // word because each write operation emits an extra SLOAD to first read the // slot's contents, replace the bits taken up by the boolean, and then write // back. This is the compiler's defense against contract upgrades and // pointer aliasing, and it cannot be disabled. // The values being non-zero value makes deployment a bit more expensive, // but in exchange the refund on every call to nonReentrant will be lower in // amount. Since refunds are capped to a percentage of the total // transaction's gas, it is best to keep them low in cases like this one, to // increase the likelihood of the full refund coming into effect. uint256 private constant _NOT_ENTERED = 1; uint256 private constant _ENTERED = 2; uint256 private _status; constructor () internal { _status = _NOT_ENTERED; } /** * @dev Prevents a contract from calling itself, directly or indirectly. * Calling a `nonReentrant` function from another `nonReentrant` * function is not supported. It is possible to prevent this from happening * by making the `nonReentrant` function external, and make it call a * `private` function that does the actual work. */ modifier nonReentrant() { // On the first call to nonReentrant, _notEntered will be true require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to nonReentrant after this point will fail _status = _ENTERED; _; // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) _status = _NOT_ENTERED; } } // File: contracts/libs/IBEP20.sol pragma solidity >=0.4.0; 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); } // File: @openzeppelin/contracts/math/SafeMath.sol 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/Address.sol pragma solidity >=0.6.2 <0.8.0; /** * @dev Collection of functions related to the address type */ library Address { /** * @dev Returns true if `account` is a contract. * * [IMPORTANT] * ==== * It is unsafe to assume that an address for which this function returns * false is an externally-owned account (EOA) and not a contract. * * Among others, `isContract` will return false for the following * types of addresses: * * - an externally-owned account * - a contract in construction * - an address where a contract will be created * - an address where a contract lived, but was destroyed * ==== */ function isContract(address account) internal view returns (bool) { // This method relies on extcodesize, which returns 0 for contracts in // construction, since the code is only stored at the end of the // constructor execution. uint256 size; // solhint-disable-next-line no-inline-assembly assembly { size := extcodesize(account) } return size > 0; } /** * @dev Replacement for Solidity's `transfer`: sends `amount` wei to * `recipient`, forwarding all available gas and reverting on errors. * * https://eips.ethereum.org/EIPS/eip-1884[EIP1884] increases the gas cost * of certain opcodes, possibly making contracts go over the 2300 gas limit * imposed by `transfer`, making them unable to receive funds via * `transfer`. {sendValue} removes this limitation. * * https://diligence.consensys.net/posts/2019/09/stop-using-soliditys-transfer-now/[Learn more]. * * IMPORTANT: because control is transferred to `recipient`, care must be * taken to not create reentrancy vulnerabilities. Consider using * {ReentrancyGuard} or the * https://solidity.readthedocs.io/en/v0.5.11/security-considerations.html#use-the-checks-effects-interactions-pattern[checks-effects-interactions pattern]. */ function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success, ) = recipient.call{ value: amount }(""); require(success, "Address: unable to send value, recipient may have reverted"); } /** * @dev Performs a Solidity function call using a low level `call`. A * plain`call` is an unsafe replacement for a function call: use this * function instead. * * If `target` reverts with a revert reason, it is bubbled up by this * function (like regular Solidity function calls). * * Returns the raw returned data. To convert to the expected return value, * use https://solidity.readthedocs.io/en/latest/units-and-global-variables.html?highlight=abi.decode#abi-encoding-and-decoding-functions[`abi.decode`]. * * Requirements: * * - `target` must be a contract. * - calling `target` with `data` must not revert. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], but with * `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return functionCallWithValue(target, data, 0, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but also transferring `value` wei to `target`. * * Requirements: * * - the calling contract must have an ETH balance of at least `value`. * - the called Solidity function must be `payable`. * * _Available since v3.1._ */ function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } /** * @dev Same as {xref-Address-functionCallWithValue-address-bytes-uint256-}[`functionCallWithValue`], but * with `errorMessage` as a fallback revert reason when `target` reverts. * * _Available since v3.1._ */ function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); require(isContract(target), "Address: call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.call{ value: value }(data); return _verifyCallResult(success, returndata, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall(address target, bytes memory data) internal view returns (bytes memory) { return functionStaticCall(target, data, "Address: low-level static call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], * but performing a static call. * * _Available since v3.3._ */ function functionStaticCall(address target, bytes memory data, string memory errorMessage) internal view returns (bytes memory) { require(isContract(target), "Address: static call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.staticcall(data); return _verifyCallResult(success, returndata, errorMessage); } /** * @dev Same as {xref-Address-functionCall-address-bytes-}[`functionCall`], * but performing a delegate call. * * _Available since v3.4._ */ function functionDelegateCall(address target, bytes memory data) internal returns (bytes memory) { return functionDelegateCall(target, data, "Address: low-level delegate call failed"); } /** * @dev Same as {xref-Address-functionCall-address-bytes-string-}[`functionCall`], * but performing a delegate call. * * _Available since v3.4._ */ function functionDelegateCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { require(isContract(target), "Address: delegate call to non-contract"); // solhint-disable-next-line avoid-low-level-calls (bool success, bytes memory returndata) = target.delegatecall(data); return _verifyCallResult(success, returndata, errorMessage); } function _verifyCallResult(bool success, bytes memory returndata, string memory errorMessage) private pure returns(bytes memory) { if (success) { return returndata; } else { // Look for revert reason and bubble it up if present if (returndata.length > 0) { // The easiest way to bubble the revert reason is using memory via assembly // solhint-disable-next-line no-inline-assembly assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } pragma solidity 0.6.12; contract HOEPublicPresale is ReentrancyGuard { using SafeMath for uint256; // Maps user to the number of tokens owned mapping(address => uint256) public tokensOwned; // The number of unclaimed tokens the user has mapping(address => uint256) public tokensUnclaimed; mapping(address => bool) public whitelist; // HOE token IBEP20 public HOE; // USDC token IBEP20 public USDC; // Sale active bool isSaleActive; // Claim active bool isClaimActive; bool isWhitelistPresale; // Total HOE sold uint256 totalTokensSold = 0; uint256 USDCperToken = 10; // Amount of USDC received in presale uint256 usdcReceived = 0; uint256 public minimumDepositAmount = 0; address public owner; address public dao; modifier onlyOwner() { require(msg.sender == owner, "You're not the owner"); _; } event TokenBuy(address user, uint256 tokens); event TokenClaim(address user, uint256 tokens); constructor( address _HOE, address _USDC, address _dao ) public { HOE = IBEP20(_HOE); USDC = IBEP20(_USDC); isSaleActive; owner = msg.sender; dao = _dao; isWhitelistPresale = true; } function addWhitelist( address[] memory list) external onlyOwner{ for ( uint i = 0; i < list.length ; i ++ ){ whitelist[list[i]] = true; } } function setTokenPrice( uint256 _price) external onlyOwner { USDCperToken = _price; } function setWhitelistPresale( bool _f) external onlyOwner { isWhitelistPresale = _f; } function removeWhitelist( address[] memory list) external onlyOwner{ for ( uint i = 0; i < list.length ; i ++ ){ whitelist[list[i]] = false; } } function buy(uint256 _amount) public nonReentrant { if ( isWhitelistPresale ) require(whitelist[msg.sender]==true, "Not whitelisted"); require(isSaleActive, "Presale has not started"); require(_amount >= minimumDepositAmount, "low amount than min"); address _buyer = msg.sender; uint256 tokens = _amount.div(USDCperToken).mul(10**13); USDC.transferFrom(msg.sender, address(dao), _amount); tokensOwned[_buyer] = tokensOwned[_buyer].add(_amount); tokensUnclaimed[_buyer] = tokensUnclaimed[_buyer].add(tokens); totalTokensSold = totalTokensSold.add(tokens); usdcReceived = usdcReceived.add(_amount); emit TokenBuy(msg.sender, tokens); } function setSaleActive(bool _isSaleActive) external onlyOwner { isSaleActive = _isSaleActive; } function setClaimActive(bool _isClaimActive) external onlyOwner { isClaimActive = _isClaimActive; } function saleActive() public view returns (bool) { return isSaleActive; } function getTotalTokensSold() public view returns (uint256) { return totalTokensSold; } function claimActive() public view returns (bool) { return isClaimActive; } function getHOETokensLeft() external view returns (uint256) { return HOE.balanceOf(address(this)); } function claimTokens() external nonReentrant { require(isClaimActive, "Claim is not allowed yet"); require(tokensUnclaimed[msg.sender] > 0, "User should have unclaimed HOE tokens"); require(HOE.balanceOf(address(this)) >= tokensUnclaimed[msg.sender], "There are not enough HOE tokens to transfer."); uint256 callerTokensUnclaimed = tokensUnclaimed[msg.sender]; tokensUnclaimed[msg.sender] = 0; HOE.transfer(msg.sender, callerTokensUnclaimed); emit TokenClaim(msg.sender, callerTokensUnclaimed); } function setHOE(address _hoe) external onlyOwner { require(_hoe != address(0)); HOE = IBEP20(_hoe); } function setReceiver(address _newAddr) external onlyOwner { dao = _newAddr; } function withdrawUnsoldHOE() external onlyOwner { uint256 amount = HOE.balanceOf(address(this)) - totalTokensSold; HOE.transfer(msg.sender, amount); } function withdrawAllHOE() external onlyOwner { HOE.transfer(msg.sender, HOE.balanceOf(address(this))); } function transferOwnership(address _newOwner) external onlyOwner { require(_newOwner != address(0), "Ownable: new owner is the zero address"); owner = _newOwner; } }
[{"inputs":[{"internalType":"address","name":"_HOE","type":"address"},{"internalType":"address","name":"_USDC","type":"address"},{"internalType":"address","name":"_dao","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"TokenBuy","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"TokenClaim","type":"event"},{"inputs":[],"name":"HOE","outputs":[{"internalType":"contract IBEP20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"USDC","outputs":[{"internalType":"contract IBEP20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"list","type":"address[]"}],"name":"addWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"buy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"dao","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getHOETokensLeft","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTotalTokensSold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumDepositAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"list","type":"address[]"}],"name":"removeWhitelist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"saleActive","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"_isClaimActive","type":"bool"}],"name":"setClaimActive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_hoe","type":"address"}],"name":"setHOE","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newAddr","type":"address"}],"name":"setReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_isSaleActive","type":"bool"}],"name":"setSaleActive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_price","type":"uint256"}],"name":"setTokenPrice","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_f","type":"bool"}],"name":"setWhitelistPresale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"tokensOwned","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"tokensUnclaimed","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"whitelist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawAllHOE","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"withdrawUnsoldHOE","outputs":[],"stateMutability":"nonpayable","type":"function"}]
Contract Creation Code
60806040526000600655600a6007556000600855600060095534801561002457600080fd5b506040516125d73803806125d78339818101604052606081101561004757600080fd5b81019080805190602001909291908051906020019092919080519060200190929190505050600160008190555082600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600560149054906101000a90505033600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001600560166101000a81548160ff021916908315150217905550505050612424806101b36000396000f3fe608060405234801561001057600080fd5b50600436106101735760003560e01c8063807bf229116100de5780639b19251a11610097578063d96a094a11610071578063d96a094a146105fe578063db689bf51461062c578063edac985b14610636578063f2fde38b146106ee57610173565b80639b19251a14610554578063bc2ae68f146105ae578063d4a6a2fd146105de57610173565b8063807bf22914610412578063841718a61461046a57806389a302711461049a5780638da5cb5b146104ce57806394c3316314610502578063999cb1581461052057610173565b806348c54b9d1161013057806348c54b9d146103025780634c96efda1461030c57806368428a1b146103505780636a61e5fc14610370578063718da7ee1461039e57806373417b09146103e257610173565b8063080c279a14610178578063133eeb831461019657806321cda790146101b4578063232452161461020c5780633b073f30146102c45780634162169f146102ce575b600080fd5b610180610732565b6040518082815260200191505060405180910390f35b61019e610738565b6040518082815260200191505060405180910390f35b6101f6600480360360208110156101ca57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050610803565b6040518082815260200191505060405180910390f35b6102c26004803603602081101561022257600080fd5b810190808035906020019064010000000081111561023f57600080fd5b82018360208201111561025157600080fd5b8035906020019184602083028401116401000000008311171561027357600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f82011690508083019250505050505050919291929050505061081b565b005b6102cc610966565b005b6102d6610bc7565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61030a610bed565b005b61034e6004803603602081101561032257600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061109b565b005b6103586111dc565b60405180821515815260200191505060405180910390f35b61039c6004803603602081101561038657600080fd5b81019080803590602001909291905050506111f3565b005b6103e0600480360360208110156103b457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112c0565b005b610410600480360360208110156103f857600080fd5b810190808035151590602001909291905050506113c7565b005b6104546004803603602081101561042857600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506114a7565b6040518082815260200191505060405180910390f35b6104986004803603602081101561048057600080fd5b810190808035151590602001909291905050506114bf565b005b6104a261159f565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6104d66115c5565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b61050a6115eb565b6040518082815260200191505060405180910390f35b6105286115f5565b604051808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b6105966004803603602081101561056a57600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919050505061161b565b60405180821515815260200191505060405180910390f35b6105dc600480360360208110156105c457600080fd5b8101908080351515906020019092919050505061163b565b005b6105e661171b565b60405180821515815260200191505060405180910390f35b61062a6004803603602081101561061457600080fd5b8101908080359060200190929190505050611732565b005b610634611c90565b005b6106ec6004803603602081101561064c57600080fd5b810190808035906020019064010000000081111561066957600080fd5b82018360208201111561067b57600080fd5b8035906020019184602083028401116401000000008311171561069d57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600081840152601f19601f820116905080830192505050505050509192919290505050611ee7565b005b6107306004803603602081101561070457600080fd5b81019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050612032565b005b60095481565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b1580156107c357600080fd5b505afa1580156107d7573d6000803e3d6000fd5b505050506040513d60208110156107ed57600080fd5b8101908080519060200190929190505050905090565b60016020528060005260406000206000915090505481565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146108de576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b60005b8151811015610962576000600360008484815181106108fc57fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806001019150506108e1565b5050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610a29576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b6000600654600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610ab757600080fd5b505afa158015610acb573d6000803e3d6000fd5b505050506040513d6020811015610ae157600080fd5b8101908080519060200190929190505050039050600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610b8857600080fd5b505af1158015610b9c573d6000803e3d6000fd5b505050506040513d6020811015610bb257600080fd5b81019080805190602001909291905050505050565b600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60026000541415610c66576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600560159054906101000a900460ff16610cf0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260188152602001807f436c61696d206973206e6f7420616c6c6f77656420796574000000000000000081525060200191505060405180910390fd5b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205411610d88576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260258152602001806123ca6025913960400191505060405180910390fd5b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015610e5157600080fd5b505afa158015610e65573d6000803e3d6000fd5b505050506040513d6020811015610e7b57600080fd5b81019080805190602001909291905050501015610ee3576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252602c815260200180612357602c913960400191505060405180910390fd5b6000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490506000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33836040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015610fff57600080fd5b505af1158015611013573d6000803e3d6000fd5b505050506040513d602081101561102957600080fd5b8101908080519060200190929190505050507ffcd6a0cf5a625280133c034863698c011fa0aefbee7f3be397f86fabd98918523382604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a1506001600081905550565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461115e576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561119857600080fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600560149054906101000a900460ff16905090565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146112b6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b8060078190555050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611383576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b80600b60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461148a576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b80600560156101000a81548160ff02191690831515021790555050565b60026020528060005260406000206000915090505481565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611582576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b80600560146101000a81548160ff02191690831515021790555050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000600654905090565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60036020528060005260406000206000915054906101000a900460ff1681565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146116fe576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b80600560166101000a81548160ff02191690831515021790555050565b6000600560159054906101000a900460ff16905090565b600260005414156117ab576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601f8152602001807f5265656e7472616e637947756172643a207265656e7472616e742063616c6c0081525060200191505060405180910390fd5b6002600081905550600560169054906101000a900460ff161561188f5760011515600360003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615151461188e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252600f8152602001807f4e6f742077686974656c6973746564000000000000000000000000000000000081525060200191505060405180910390fd5b5b600560149054906101000a900460ff16611911576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260178152602001807f50726573616c6520686173206e6f74207374617274656400000000000000000081525060200191505060405180910390fd5b600954811015611989576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260138152602001807f6c6f7720616d6f756e74207468616e206d696e0000000000000000000000000081525060200191505060405180910390fd5b600033905060006119bd6509184e72a0006119af600754866121bf90919063ffffffff16565b61224890919063ffffffff16565b9050600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166323b872dd33600b60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16866040518463ffffffff1660e01b8152600401808473ffffffffffffffffffffffffffffffffffffffff1681526020018373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019350505050602060405180830381600087803b158015611a9257600080fd5b505af1158015611aa6573d6000803e3d6000fd5b505050506040513d6020811015611abc57600080fd5b810190808051906020019092919050505050611b2083600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122ce90919063ffffffff16565b600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611bb581600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546122ce90919063ffffffff16565b600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611c0d816006546122ce90919063ffffffff16565b600681905550611c28836008546122ce90919063ffffffff16565b6008819055507f0c031f45b18305561115944c48c15b7aef3fdfe9182afbf6b01c249542ec6a113382604051808373ffffffffffffffffffffffffffffffffffffffff1681526020018281526020019250505060405180910390a15050600160008190555050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611d53576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663a9059cbb33600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b8152600401808273ffffffffffffffffffffffffffffffffffffffff16815260200191505060206040518083038186803b158015611e1b57600080fd5b505afa158015611e2f573d6000803e3d6000fd5b505050506040513d6020811015611e4557600080fd5b81019080805190602001909291905050506040518363ffffffff1660e01b8152600401808373ffffffffffffffffffffffffffffffffffffffff16815260200182815260200192505050602060405180830381600087803b158015611ea957600080fd5b505af1158015611ebd573d6000803e3d6000fd5b505050506040513d6020811015611ed357600080fd5b810190808051906020019092919050505050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614611faa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b60005b815181101561202e57600160036000848481518110611fc857fe5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080600101915050611fad565b5050565b600a60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146120f5576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260148152602001807f596f75277265206e6f7420746865206f776e657200000000000000000000000081525060200191505060405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16141561217b576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260268152602001806123836026913960400191505060405180910390fd5b80600a60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000808211612236576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601a8152602001807f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060200191505060405180910390fd5b81838161223f57fe5b04905092915050565b60008083141561225b57600090506122c8565b600082840290508284828161226c57fe5b04146122c3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004018080602001828103825260218152602001806123a96021913960400191505060405180910390fd5b809150505b92915050565b60008082840190508381101561234c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040180806020018281038252601b8152602001807f536166654d6174683a206164646974696f6e206f766572666c6f77000000000081525060200191505060405180910390fd5b809150509291505056fe546865726520617265206e6f7420656e6f75676820484f4520746f6b656e7320746f207472616e736665722e4f776e61626c653a206e6577206f776e657220697320746865207a65726f2061646472657373536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77557365722073686f756c64206861766520756e636c61696d656420484f4520746f6b656e73a2646970667358221220144eeac2a6e9e2389b52b1fa9a7de6cb6d43503ab0ff1c9a2df777c7b7d2e82064736f6c634300060c0033000000000000000000000000b97ef9ef8734c71904d8002f8b6bc66dd9c48a6e000000000000000000000000b97ef9ef8734c71904d8002f8b6bc66dd9c48a6e000000000000000000000000fed3445457f57a3fe4d50b3ecbfb523a049045a0
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000b97ef9ef8734c71904d8002f8b6bc66dd9c48a6e000000000000000000000000b97ef9ef8734c71904d8002f8b6bc66dd9c48a6e000000000000000000000000fed3445457f57a3fe4d50b3ecbfb523a049045a0
-----Decoded View---------------
Arg [0] : _HOE (address): 0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e
Arg [1] : _USDC (address): 0xb97ef9ef8734c71904d8002f8b6bc66dd9c48a6e
Arg [2] : _dao (address): 0xfed3445457f57a3fe4d50b3ecbfb523a049045a0
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 000000000000000000000000b97ef9ef8734c71904d8002f8b6bc66dd9c48a6e
Arg [1] : 000000000000000000000000b97ef9ef8734c71904d8002f8b6bc66dd9c48a6e
Arg [2] : 000000000000000000000000fed3445457f57a3fe4d50b3ecbfb523a049045a0
Deployed ByteCode Sourcemap
24773:4310:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25439:39;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27756:105;;;:::i;:::-;;;;;;;;;;;;;;;;;;;24897:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;26364:180;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28614:158;;;:::i;:::-;;25512:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27866:521;;;:::i;:::-;;28395:124;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27491:78;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;26153:99;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28527:82;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27382:104;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;24996:50;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;27277:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;25152:18;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;25485:20;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;27574:92;;;:::i;:::-;;;;;;;;;;;;;;;;;;;25115:17;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;25053:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;26258:100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;27671:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;26549:723;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28777:109;;;:::i;:::-;;25971:176;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;28894:186;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;25439:39;;;;:::o;27756:105::-;27807:7;27828:3;;;;;;;;;;;:13;;;27850:4;27828:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27821:35;;27756:105;:::o;24897:46::-;;;;;;;;;;;;;;;;;:::o;26364:180::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26448:6:::1;26442:95;26464:4;:11;26460:1;:15;26442:95;;;26520:5;26499:9;:18;26509:4;26514:1;26509:7;;;;;;;;;;;;;;26499:18;;;;;;;;;;;;;;;;:26;;;;;;;;;;;;;;;;;;26478:4;;;;;;;26442:95;;;;26364:180:::0;:::o;28614:158::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28667:14:::1;28715:15;;28684:3;;;;;;;;;;;:13;;;28706:4;28684:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;:46;28667:63;;28735:3;;;;;;;;;;;:12;;;28748:10;28760:6;28735:32;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;25619:1;28614:158::o:0;25512:18::-;;;;;;;;;;;;;:::o;27866:521::-;5081:1;5687:7;;:19;;5679:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5081:1;5820:7;:18;;;;27924:13:::1;;;;;;;;;;;27916:50;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;28009:1;27979:15;:27;27995:10;27979:27;;;;;;;;;;;;;;;;:31;27971:81;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28097:15;:27;28113:10;28097:27;;;;;;;;;;;;;;;;28065:3;;;;;;;;;;;:13;;;28087:4;28065:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;:59;;28057:116;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28180:29;28212:15;:27;28228:10;28212:27;;;;;;;;;;;;;;;;28180:59;;28274:1;28244:15;:27;28260:10;28244:27;;;;;;;;;;;;;;;:31;;;;28280:3;;;;;;;;;;;:12;;;28293:10;28305:21;28280:47;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;28337:45;28348:10;28360:21;28337:45;;;;;;;;;;;;;;;;;;;;;;;;;;5851:1;5037::::0;5999:7;:22;;;;27866:521::o;28395:124::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28479:1:::1;28463:18;;:4;:18;;;;28455:27;;;::::0;::::1;;28506:4;28493:3;;:18;;;;;;;;;;;;;;;;;;28395:124:::0;:::o;27491:78::-;27534:4;27552:12;;;;;;;;;;;27545:19;;27491:78;:::o;26153:99::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26238:6:::1;26223:12;:21;;;;26153:99:::0;:::o;28527:82::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28596:8:::1;28590:3;;:14;;;;;;;;;;;;;;;;;;28527:82:::0;:::o;27382:104::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27467:14:::1;27451:13;;:30;;;;;;;;;;;;;;;;;;27382:104:::0;:::o;24996:50::-;;;;;;;;;;;;;;;;;:::o;27277:100::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;27359:13:::1;27344:12;;:28;;;;;;;;;;;;;;;;;;27277:100:::0;:::o;25152:18::-;;;;;;;;;;;;;:::o;25485:20::-;;;;;;;;;;;;;:::o;27574:92::-;27625:7;27646:15;;27639:22;;27574:92;:::o;25115:17::-;;;;;;;;;;;;;:::o;25053:41::-;;;;;;;;;;;;;;;;;;;;;;:::o;26258:100::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26348:2:::1;26327:18;;:23;;;;;;;;;;;;;;;;;;26258:100:::0;:::o;27671:80::-;27715:4;27733:13;;;;;;;;;;;27726:20;;27671:80;:::o;26549:723::-;5081:1;5687:7;;:19;;5679:63;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5081:1;5820:7;:18;;;;26615::::1;;;;;;;;;;;26610:94;;;26680:4;26657:27;;:9;:21;26667:10;26657:21;;;;;;;;;;;;;;;;;;;;;;;;;:27;;;26649:55;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;26610:94;26717:12;;;;;;;;;;;26709:48;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;26787:20;;26776:7;:31;;26768:63;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;26856:14;26873:10;26856:27;;26888:14;26905:37;26935:6;26905:25;26917:12;;26905:7;:11;;:25;;;;:::i;:::-;:29;;:37;;;;:::i;:::-;26888:54;;26955:4;;;;;;;;;;;:17;;;26973:10;26993:3;;;;;;;;;;;26999:7;26955:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;27036:32;27060:7;27036:11;:19;27048:6;27036:19;;;;;;;;;;;;;;;;:23;;:32;;;;:::i;:::-;27014:11;:19;27026:6;27014:19;;;;;;;;;;;;;;;:54;;;;27099:35;27127:6;27099:15;:23;27115:6;27099:23;;;;;;;;;;;;;;;;:27;;:35;;;;:::i;:::-;27073:15;:23;27089:6;27073:23;;;;;;;;;;;;;;;:61;;;;27157:27;27177:6;27157:15;;:19;;:27;;;;:::i;:::-;27139:15;:45;;;;27204:25;27221:7;27204:12;;:16;;:25;;;;:::i;:::-;27189:12;:40;;;;27239:28;27248:10;27260:6;27239:28;;;;;;;;;;;;;;;;;;;;;;;;;;5851:1;;5037::::0;5999:7;:22;;;;26549:723;:::o;28777:109::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28827:3:::1;;;;;;;;;;;:12;;;28840:10;28852:3;;;;;;;;;;;:13;;;28874:4;28852:28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;28827:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;28777:109::o:0;25971:176::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26052:6:::1;26046:94;26068:4;:11;26064:1;:15;26046:94;;;26124:4;26103:9;:18;26113:4;26118:1;26113:7;;;;;;;;;;;;;;26103:18;;;;;;;;;;;;;;;;:25;;;;;;;;;;;;;;;;;;26082:4;;;;;;;26046:94;;;;25971:176:::0;:::o;28894:186::-;25584:5;;;;;;;;;;;25570:19;;:10;:19;;;25562:52;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;28999:1:::1;28978:23;;:9;:23;;;;28970:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;29063:9;29055:5;;:17;;;;;;;;;;;;;;;;;;28894:186:::0;:::o;13621:153::-;13679:7;13711:1;13707;:5;13699:44;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13765:1;13761;:5;;;;;;13754:12;;13621:153;;;;:::o;12923:220::-;12981:7;13010:1;13005;:6;13001:20;;;13020:1;13013:8;;;;13001:20;13032:9;13048:1;13044;:5;13032:17;;13077:1;13072;13068;:5;;;;;;:10;13060:56;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13134:1;13127:8;;;12923:220;;;;;:::o;12044:179::-;12102:7;12122:9;12138:1;12134;:5;12122:17;;12163:1;12158;:6;;12150:46;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12214:1;12207:8;;;12044:179;;;;:::o
Swarm Source
ipfs://144eeac2a6e9e2389b52b1fa9a7de6cb6d43503ab0ff1c9a2df777c7b7d2e820
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.