More Info
Private Name Tags
ContractCreator
Latest 25 from a total of 637 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Claim Tokens | 17501987 | 498 days ago | IN | 0 ETH | 0.00069535 | ||||
Claim Tokens | 17398659 | 513 days ago | IN | 0 ETH | 0.00091018 | ||||
Claim Tokens | 17393194 | 513 days ago | IN | 0 ETH | 0.00241405 | ||||
Claim Tokens | 17393177 | 513 days ago | IN | 0 ETH | 0.00257498 | ||||
Claim Tokens | 17392878 | 514 days ago | IN | 0 ETH | 0.00129493 | ||||
Claim Tokens | 17392871 | 514 days ago | IN | 0 ETH | 0.00130607 | ||||
Claim Tokens | 17377188 | 516 days ago | IN | 0 ETH | 0.00180648 | ||||
Claim Tokens | 17376603 | 516 days ago | IN | 0 ETH | 0.00232352 | ||||
Claim Tokens | 17375390 | 516 days ago | IN | 0 ETH | 0.0020071 | ||||
Claim Tokens | 17375284 | 516 days ago | IN | 0 ETH | 0.00256323 | ||||
Claim Tokens | 17374068 | 516 days ago | IN | 0 ETH | 0.00288594 | ||||
Claim Tokens | 17373591 | 516 days ago | IN | 0 ETH | 0.00303223 | ||||
Claim Tokens | 17373429 | 516 days ago | IN | 0 ETH | 0.00443582 | ||||
Claim Tokens | 17371685 | 516 days ago | IN | 0 ETH | 0.00177538 | ||||
Claim Tokens | 17370995 | 517 days ago | IN | 0 ETH | 0.002926 | ||||
Claim Tokens | 17370221 | 517 days ago | IN | 0 ETH | 0.00327347 | ||||
Claim Tokens | 17370055 | 517 days ago | IN | 0 ETH | 0.00210564 | ||||
Claim Tokens | 17370023 | 517 days ago | IN | 0 ETH | 0.00352584 | ||||
Claim Tokens | 17370007 | 517 days ago | IN | 0 ETH | 0.0033936 | ||||
Claim Tokens | 17369704 | 517 days ago | IN | 0 ETH | 0.00402342 | ||||
Claim Tokens | 17369547 | 517 days ago | IN | 0 ETH | 0.00321929 | ||||
Claim Tokens | 17369316 | 517 days ago | IN | 0 ETH | 0.00389627 | ||||
Claim Tokens | 17368861 | 517 days ago | IN | 0 ETH | 0.00111952 | ||||
Claim Tokens | 17368752 | 517 days ago | IN | 0 ETH | 0.00155709 | ||||
Claim Tokens | 17368733 | 517 days ago | IN | 0 ETH | 0.00183451 |
Loading...
Loading
Contract Name:
Presale
Compiler Version
v0.8.15+commit.e14f2714
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.4; import "@openzeppelin/contracts/utils/math/SafeMath.sol"; import "./Ownable.sol"; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); } interface IUniswapV2Router02 { function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns ( uint amountToken, uint amountETH, uint liquidity ); } contract Presale is Ownable { using SafeMath for uint256; bool public isInit; bool public isDeposit; bool public isRefund; bool public isFinish; bool public burnTokens = true; address public creatorWallet; address public teamWallet; address public weth; uint8 public tokenDecimals = 18; uint256 public ethRaised; uint256 public percentageRaised; uint256 public tokensSold; struct Pool { uint64 startTime; uint64 endTime; uint256 tokenDeposit; uint256 tokensForSale; uint256 tokensForLiquidity; uint8 liquidityPortion; uint256 hardCap; uint256 softCap; uint256 maxBuy; uint256 minBuy; } IERC20 public tokenInstance; IUniswapV2Factory public UniswapV2Factory; IUniswapV2Router02 public UniswapV2Router02; Pool public pool; mapping(address => uint256) public ethContribution; modifier onlyActive { require(block.timestamp >= pool.startTime, "Sale must be active."); require(block.timestamp <= pool.endTime, "Sale must be active."); _; } modifier onlyInactive { require( block.timestamp < pool.startTime || block.timestamp > pool.endTime || ethRaised >= pool.hardCap, "Sale must be inactive." ); _; } modifier onlyRefund { require( isRefund == true || (block.timestamp > pool.endTime && ethRaised < pool.softCap), "Refund unavailable." ); _; } constructor( IERC20 _tokenInstance, address _uniswapv2Router, address _uniswapv2Factory, address _teamWallet, address _weth ) { require(_uniswapv2Router != address(0), "Invalid router address"); require(_uniswapv2Factory != address(0), "Invalid factory address"); isInit = false; isDeposit = false; isFinish = false; isRefund = false; ethRaised = 0; teamWallet = _teamWallet; weth = _weth; tokenInstance = _tokenInstance; creatorWallet = address(payable(msg.sender)); UniswapV2Router02 = IUniswapV2Router02(_uniswapv2Router); UniswapV2Factory = IUniswapV2Factory(_uniswapv2Factory); require(UniswapV2Factory.getPair(address(tokenInstance), weth) == address(0), "IUniswap: Pool exists."); tokenInstance.approve(_uniswapv2Router, tokenInstance.totalSupply()); } event Liquified( address indexed _token, address indexed _router, address indexed _pair ); event Canceled( address indexed _inititator, address indexed _token, address indexed _presale ); event Bought(address indexed _buyer, uint256 _tokenAmount); event Refunded(address indexed _refunder, uint256 _tokenAmount); event Deposited(address indexed _initiator, uint256 _totalDeposit); event Claimed(address indexed _participent, uint256 _tokenAmount); event RefundedRemainder(address indexed _initiator, uint256 _amount); event BurntRemainder(address indexed _initiator, uint256 _amount); event Withdraw(address indexed _creator, uint256 _amount); /* * Reverts ethers sent to this address whenever requirements are not met */ receive() external payable { if(block.timestamp >= pool.startTime && block.timestamp <= pool.endTime){ buyTokens(_msgSender()); } else { revert("Presale is closed"); } } /* * Initiates the arguments of the sale @dev arguments must be pa ssed in wei (amount*10**18) */ function initSale( uint64 _startTime, uint64 _endTime, uint256 _tokenDeposit, uint256 _tokensForSale, uint256 _tokensForLiquidity, uint8 _liquidityPortion, uint256 _hardCap, uint256 _softCap, uint256 _maxBuy, uint256 _minBuy ) external onlyOwner onlyInactive { require(isInit == false, "Sale no initialized"); require(_startTime >= block.timestamp, "Invalid start time."); require(_endTime > block.timestamp, "Invalid end time."); require(_tokenDeposit > 0, "Invalid token deposit."); require(_tokensForSale < _tokenDeposit, "Invalid tokens for sale."); require(_tokensForLiquidity < _tokenDeposit, "Invalid tokens for liquidity."); require(_softCap >= _hardCap / 2, "SC must be >= HC/2."); require(_liquidityPortion >= 50, "Liquidity must be >=50."); require(_liquidityPortion <= 100, "Invalid liquidity."); require(_minBuy < _maxBuy, "Min buy must greater than max."); require(_minBuy > 0, "Min buy must exceed 0."); Pool memory newPool = Pool( _startTime, _endTime, _tokenDeposit, _tokensForSale, _tokensForLiquidity, _liquidityPortion, _hardCap, _softCap, _maxBuy, _minBuy ); pool = newPool; isInit = true; } /* * Once called the owner deposits tokens into pool */ function deposit() external onlyOwner { require(!isDeposit, "Tokens already deposited."); require(isInit, "Not initialized yet."); uint256 totalDeposit = _getTokenDeposit(); isDeposit = true; require(tokenInstance.transferFrom(msg.sender, address(this), totalDeposit), "Deposit failed."); emit Deposited(msg.sender, totalDeposit); } /* * Finish the sale - Create Uniswap v2 pair, add liquidity, take fees, withrdawal funds, burn/refund unused tokens */ function finishSale() external onlyOwner onlyInactive{ require(ethRaised >= pool.softCap, "Soft Cap is not met."); require(block.timestamp > pool.startTime, "Can not finish before start"); require(!isFinish, "Sale already launched."); require(!isRefund, "Refund process."); percentageRaised = _getPercentageFromValue(ethRaised, pool.hardCap); tokensSold = _getValueFromPercentage(percentageRaised, pool.tokensForSale); uint256 tokensForLiquidity = _getValueFromPercentage(percentageRaised, pool.tokensForLiquidity); isFinish = true; //add liquidity (uint amountToken, uint amountETH, ) = UniswapV2Router02.addLiquidityETH{value : _getLiquidityEth()}( address(tokenInstance), tokensForLiquidity, tokensForLiquidity, _getLiquidityEth(), owner(), block.timestamp + 600 ); require(amountToken == tokensForLiquidity && amountETH == _getLiquidityEth(), "Providing liquidity failed."); emit Liquified( address(tokenInstance), address(UniswapV2Router02), UniswapV2Factory.getPair(address(tokenInstance), weth) ); //withrawal eth uint256 ownerShareEth = _getOwnerEth(); if (ownerShareEth > 0) { payable(creatorWallet).transfer(ownerShareEth); } //If HC is not reached, burn or refund the remainder if (ethRaised < pool.hardCap) { uint256 remainder = _getUserTokens(pool.hardCap - ethRaised) + (pool.tokensForLiquidity - tokensForLiquidity); if(burnTokens == true){ require(tokenInstance.transfer( 0x000000000000000000000000000000000000dEaD, remainder), "Unable to burn." ); emit BurntRemainder(msg.sender, remainder); } else { require(tokenInstance.transfer(creatorWallet, remainder), "Refund failed."); emit RefundedRemainder(msg.sender, remainder); } } } /* * The owner can decide to close the sale if it is still active NOTE: Creator may call this function even if the Hard Cap is reached, to prevent it use: require(ethRaised < pool.hardCap) */ function cancelSale() external onlyOwner onlyActive { require(!isFinish, "Sale finished."); pool.endTime = 0; isRefund = true; if (tokenInstance.balanceOf(address(this)) > 0) { uint256 tokenDeposit = _getTokenDeposit(); tokenInstance.transfer(msg.sender, tokenDeposit); emit Withdraw(msg.sender, tokenDeposit); } emit Canceled(msg.sender, address(tokenInstance), address(this)); } /* * Allows participents to claim the tokens they purchased */ function claimTokens() external onlyInactive { require(isFinish, "Sale is still active."); require(!isRefund, "Refund process."); uint256 tokensAmount = _getUserTokens(ethContribution[msg.sender]); ethContribution[msg.sender] = 0; require(tokenInstance.transfer(msg.sender, tokensAmount), "Claim failed."); emit Claimed(msg.sender, tokensAmount); } /* * Refunds the Eth to participents */ function refund() external onlyInactive onlyRefund { uint256 refundAmount = ethContribution[msg.sender]; require(refundAmount > 0, "No refund amount"); require(address(this).balance >= refundAmount, "No amount available"); ethContribution[msg.sender] = 0; address payable refunder = payable(msg.sender); refunder.transfer(refundAmount); emit Refunded(refunder, refundAmount); } /* * Withdrawal tokens on refund */ function withrawTokens() external onlyOwner onlyInactive onlyRefund { if (tokenInstance.balanceOf(address(this)) > 0) { uint256 tokenDeposit = _getTokenDeposit(); require(tokenInstance.transfer(msg.sender, tokenDeposit), "Withdraw failed."); emit Withdraw(msg.sender, tokenDeposit); } } /* * If requirements are passed, updates user"s token balance based on their eth contribution */ function buyTokens(address _contributor) public payable onlyActive { require(isDeposit, "Tokens not deposited."); require(_contributor != address(0), "Transfer to 0 address."); require(msg.value != 0, "Wei Amount is 0"); require(msg.value >= pool.minBuy, "Min buy is not met."); require(msg.value + ethContribution[_contributor] <= pool.maxBuy, "Max buy limit exceeded."); require(ethRaised + msg.value <= pool.hardCap, "HC Reached."); ethRaised += msg.value; ethContribution[msg.sender] += msg.value; } /* * Internal functions, called when calculating balances */ function _getUserTokens(uint256 _amount) internal view returns (uint256) { return _amount.mul(tokensSold).div(ethRaised); } function _getLiquidityEth() internal view returns (uint256) { return _getValueFromPercentage(pool.liquidityPortion, ethRaised); } function _getOwnerEth() internal view returns (uint256) { uint256 liquidityEthFee = _getLiquidityEth(); return ethRaised - liquidityEthFee; } function _getTokenDeposit() internal view returns (uint256){ return pool.tokenDeposit; } function _getPercentageFromValue(uint256 currentValue, uint256 maxValue) private pure returns (uint256) { require(currentValue <= maxValue, "Number too high"); return currentValue.mul(100).div(maxValue); } function _getValueFromPercentage(uint256 currentPercentage, uint256 maxValue) private pure returns (uint256) { require(currentPercentage <= 100, "Number too high"); return maxValue.mul(currentPercentage).div(100); } }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.4; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _transferOwnership(_msgSender()); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.0) (utils/math/SafeMath.sol) pragma solidity ^0.8.0; // CAUTION // This version of SafeMath should only be used with Solidity 0.8 or later, // because it relies on the compiler's built in overflow checks. /** * @dev Wrappers over Solidity's arithmetic operations. * * NOTE: `SafeMath` is generally not needed starting with Solidity 0.8, since the compiler * now has built in overflow checking. */ 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) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } /** * @dev Returns the subtraction of two unsigned integers, with an overflow flag. * * _Available since v3.4._ */ function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { 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) { unchecked { // 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) { unchecked { 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) { unchecked { 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) { return a + b; } /** * @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 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) { return a * b; } /** * @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. * * Requirements: * * - The divisor cannot be zero. */ function div(uint256 a, uint256 b) internal pure returns (uint256) { 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) { 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) { unchecked { 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. * * 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) { unchecked { 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) { unchecked { require(b > 0, errorMessage); return a % b; } } }
{ "optimizer": { "enabled": true, "runs": 200 }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"contract IERC20","name":"_tokenInstance","type":"address"},{"internalType":"address","name":"_uniswapv2Router","type":"address"},{"internalType":"address","name":"_uniswapv2Factory","type":"address"},{"internalType":"address","name":"_teamWallet","type":"address"},{"internalType":"address","name":"_weth","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_buyer","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokenAmount","type":"uint256"}],"name":"Bought","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_initiator","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"BurntRemainder","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_inititator","type":"address"},{"indexed":true,"internalType":"address","name":"_token","type":"address"},{"indexed":true,"internalType":"address","name":"_presale","type":"address"}],"name":"Canceled","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_participent","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokenAmount","type":"uint256"}],"name":"Claimed","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_initiator","type":"address"},{"indexed":false,"internalType":"uint256","name":"_totalDeposit","type":"uint256"}],"name":"Deposited","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_token","type":"address"},{"indexed":true,"internalType":"address","name":"_router","type":"address"},{"indexed":true,"internalType":"address","name":"_pair","type":"address"}],"name":"Liquified","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_refunder","type":"address"},{"indexed":false,"internalType":"uint256","name":"_tokenAmount","type":"uint256"}],"name":"Refunded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_initiator","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"RefundedRemainder","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_creator","type":"address"},{"indexed":false,"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"Withdraw","type":"event"},{"inputs":[],"name":"UniswapV2Factory","outputs":[{"internalType":"contract IUniswapV2Factory","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"UniswapV2Router02","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"burnTokens","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_contributor","type":"address"}],"name":"buyTokens","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"cancelSale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"claimTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"creatorWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deposit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"ethContribution","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"ethRaised","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"finishSale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint64","name":"_startTime","type":"uint64"},{"internalType":"uint64","name":"_endTime","type":"uint64"},{"internalType":"uint256","name":"_tokenDeposit","type":"uint256"},{"internalType":"uint256","name":"_tokensForSale","type":"uint256"},{"internalType":"uint256","name":"_tokensForLiquidity","type":"uint256"},{"internalType":"uint8","name":"_liquidityPortion","type":"uint8"},{"internalType":"uint256","name":"_hardCap","type":"uint256"},{"internalType":"uint256","name":"_softCap","type":"uint256"},{"internalType":"uint256","name":"_maxBuy","type":"uint256"},{"internalType":"uint256","name":"_minBuy","type":"uint256"}],"name":"initSale","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"isDeposit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isFinish","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isInit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isRefund","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"percentageRaised","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pool","outputs":[{"internalType":"uint64","name":"startTime","type":"uint64"},{"internalType":"uint64","name":"endTime","type":"uint64"},{"internalType":"uint256","name":"tokenDeposit","type":"uint256"},{"internalType":"uint256","name":"tokensForSale","type":"uint256"},{"internalType":"uint256","name":"tokensForLiquidity","type":"uint256"},{"internalType":"uint8","name":"liquidityPortion","type":"uint8"},{"internalType":"uint256","name":"hardCap","type":"uint256"},{"internalType":"uint256","name":"softCap","type":"uint256"},{"internalType":"uint256","name":"maxBuy","type":"uint256"},{"internalType":"uint256","name":"minBuy","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"refund","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"teamWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenDecimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenInstance","outputs":[{"internalType":"contract IERC20","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensSold","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":[],"name":"weth","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withrawTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526000805460ff60c01b1916600160c01b17905560038054600960a11b60ff60a01b199091161790553480156200003957600080fd5b5060405162002845380380620028458339810160408190526200005c91620003b4565b62000067336200034b565b6001600160a01b038416620000c35760405162461bcd60e51b815260206004820152601660248201527f496e76616c696420726f7574657220616464726573730000000000000000000060448201526064015b60405180910390fd5b6001600160a01b0383166200011b5760405162461bcd60e51b815260206004820152601760248201527f496e76616c696420666163746f727920616464726573730000000000000000006044820152606401620000ba565b6000805463ffffffff60a01b191681556004818155600280546001600160a01b038681166001600160a01b031992831617909255600380548684169083168117909155600780548b8516908416811790915560018054841633179055600980548b861690851617905560088054948a1694909316841790925560405163e6a4390560e01b81529384019190915260248301529063e6a4390590604401602060405180830381865afa158015620001d5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fb919062000434565b6001600160a01b031614620002535760405162461bcd60e51b815260206004820152601660248201527f49556e69737761703a20506f6f6c206578697374732e000000000000000000006044820152606401620000ba565b600754604080516318160ddd60e01b815290516001600160a01b039092169163095ea7b391879184916318160ddd9160048083019260209291908290030181865afa158015620002a7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002cd91906200045b565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303816000875af115801562000319573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033f919062000475565b50505050505062000499565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b0381168114620003b157600080fd5b50565b600080600080600060a08688031215620003cd57600080fd5b8551620003da816200039b565b6020870151909550620003ed816200039b565b604087015190945062000400816200039b565b606087015190935062000413816200039b565b608087015190925062000426816200039b565b809150509295509295909350565b6000602082840312156200044757600080fd5b815162000454816200039b565b9392505050565b6000602082840312156200046e57600080fd5b5051919050565b6000602082840312156200048857600080fd5b815180151581146200045457600080fd5b61239c80620004a96000396000f3fe6080604052600436106101bb5760003560e01c80637bc3b5ff116100ec578063d64428e31161008a578063ec8ac4d811610064578063ec8ac4d8146105dd578063f2fde38b146105eb578063fddf0fc01461060b578063ffa324dc1461062157600080fd5b8063d64428e314610591578063d921eb78146105a7578063e7e10490146105c857600080fd5b80638f86f5ea116100c65780638f86f5ea14610526578063b145a5b81461053b578063ca62089e1461055c578063d0e30db01461057c57600080fd5b80637bc3b5ff146104c75780637cdc65f2146104e85780638da5cb5b1461050857600080fd5b8063518ab2a81161015957806359927044116101335780635992704414610452578063658030b314610472578063715018a61461049257806378cc70b2146104a757600080fd5b8063518ab2a81461040757806355cb26661461041d578063590e1ae31461043d57600080fd5b80633b97e856116101955780633b97e8561461034c5780633fc8cef31461037f5780634034175e146103b757806348c54b9d146103f257600080fd5b806308003f781461024857806316f0115b1461027e5780632c8ca0ea1461032b57600080fd5b3661024357600a546001600160401b031642108015906101ed5750600a54600160401b90046001600160401b03164211155b156102025761020033610636565b610636565b005b60405162461bcd60e51b8152602060048201526011602482015270141c995cd85b19481a5cc818db1bdcd959607a1b60448201526064015b60405180910390fd5b600080fd5b34801561025457600080fd5b5060005461026990600160c01b900460ff1681565b60405190151581526020015b60405180910390f35b34801561028a57600080fd5b50600a54600b54600c54600d54600e54600f546010546011546012546102d3986001600160401b0380821699600160401b909204169790969095909460ff90911693909290918a565b604080516001600160401b039b8c1681529a90991660208b0152978901969096526060880194909452608087019290925260ff1660a086015260c085015260e084015261010083015261012082015261014001610275565b34801561033757600080fd5b5060005461026990600160b81b900460ff1681565b34801561035857600080fd5b5060035461036d90600160a01b900460ff1681565b60405160ff9091168152602001610275565b34801561038b57600080fd5b5060035461039f906001600160a01b031681565b6040516001600160a01b039091168152602001610275565b3480156103c357600080fd5b506103e46103d23660046120fd565b60136020526000908152604090205481565b604051908152602001610275565b3480156103fe57600080fd5b506102006108bc565b34801561041357600080fd5b506103e460065481565b34801561042957600080fd5b5060095461039f906001600160a01b031681565b34801561044957600080fd5b50610200610ac9565b34801561045e57600080fd5b5060025461039f906001600160a01b031681565b34801561047e57600080fd5b5060075461039f906001600160a01b031681565b34801561049e57600080fd5b50610200610cb6565b3480156104b357600080fd5b5060085461039f906001600160a01b031681565b3480156104d357600080fd5b5060005461026990600160a81b900460ff1681565b3480156104f457600080fd5b5060015461039f906001600160a01b031681565b34801561051457600080fd5b506000546001600160a01b031661039f565b34801561053257600080fd5b50610200610cec565b34801561054757600080fd5b5060005461026990600160a01b900460ff1681565b34801561056857600080fd5b50610200610577366004612136565b611386565b34801561058857600080fd5b5061020061182b565b34801561059d57600080fd5b506103e460055481565b3480156105b357600080fd5b5060005461026990600160b01b900460ff1681565b3480156105d457600080fd5b50610200611a09565b6102006101fb3660046120fd565b3480156105f757600080fd5b506102006106063660046120fd565b611c6e565b34801561061757600080fd5b506103e460045481565b34801561062d57600080fd5b50610200611d09565b600a546001600160401b03164210156106615760405162461bcd60e51b815260040161023a906121c7565b600a54600160401b90046001600160401b03164211156106935760405162461bcd60e51b815260040161023a906121c7565b600054600160a81b900460ff166106e45760405162461bcd60e51b81526020600482015260156024820152742a37b5b2b739903737ba103232b837b9b4ba32b21760591b604482015260640161023a565b6001600160a01b0381166107335760405162461bcd60e51b81526020600482015260166024820152752a3930b739b332b9103a3790181030b2323932b9b99760511b604482015260640161023a565b346000036107755760405162461bcd60e51b815260206004820152600f60248201526e057656920416d6f756e74206973203608c1b604482015260640161023a565b6012543410156107bd5760405162461bcd60e51b815260206004820152601360248201527226b4b710313abc9034b9903737ba1036b2ba1760691b604482015260640161023a565b6011546001600160a01b0382166000908152601360205260409020546107e3903461220b565b11156108315760405162461bcd60e51b815260206004820152601760248201527f4d617820627579206c696d69742065786365656465642e000000000000000000604482015260640161023a565b600f5460045461084290349061220b565b111561087e5760405162461bcd60e51b815260206004820152600b60248201526a2421902932b0b1b432b21760a91b604482015260640161023a565b3460046000828254610890919061220b565b909155505033600090815260136020526040812080543492906108b490849061220b565b909155505050565b600a546001600160401b03164210806108e65750600a54600160401b90046001600160401b031642115b806108f55750600f5460045410155b6109115760405162461bcd60e51b815260040161023a90612223565b600054600160b81b900460ff166109625760405162461bcd60e51b815260206004820152601560248201527429b0b6329034b99039ba34b6361030b1ba34bb329760591b604482015260640161023a565b600054600160b01b900460ff16156109ae5760405162461bcd60e51b815260206004820152600f60248201526e2932b33ab73210383937b1b2b9b99760891b604482015260640161023a565b336000908152601360205260408120546109c790611f6b565b3360008181526013602052604080822091909155600754905163a9059cbb60e01b81526004810192909252602482018390529192506001600160a01b039091169063a9059cbb906044016020604051808303816000875af1158015610a30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a549190612253565b610a905760405162461bcd60e51b815260206004820152600d60248201526c21b630b4b6903330b4b632b21760991b604482015260640161023a565b60405181815233907fd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a906020015b60405180910390a250565b600a546001600160401b0316421080610af35750600a54600160401b90046001600160401b031642115b80610b025750600f5460045410155b610b1e5760405162461bcd60e51b815260040161023a90612223565b600054600160b01b900460ff16151560011480610b5a5750600a54600160401b90046001600160401b031642118015610b5a5750601054600454105b610b9c5760405162461bcd60e51b81526020600482015260136024820152722932b33ab732103ab730bb30b4b630b136329760691b604482015260640161023a565b3360009081526013602052604090205480610bec5760405162461bcd60e51b815260206004820152601060248201526f139bc81c99599d5b9908185b5bdd5b9d60821b604482015260640161023a565b80471015610c325760405162461bcd60e51b81526020600482015260136024820152724e6f20616d6f756e7420617661696c61626c6560681b604482015260640161023a565b3360008181526013602052604080822082905551829184156108fc02918591818181858888f19350505050158015610c6e573d6000803e3d6000fd5b50806001600160a01b03167fd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d065183604051610caa91815260200190565b60405180910390a25050565b6000546001600160a01b03163314610ce05760405162461bcd60e51b815260040161023a90612275565b610cea6000611f94565b565b6000546001600160a01b03163314610d165760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b0316421080610d405750600a54600160401b90046001600160401b031642115b80610d4f5750600f5460045410155b610d6b5760405162461bcd60e51b815260040161023a90612223565b6010546004541015610db65760405162461bcd60e51b815260206004820152601460248201527329b7b33a1021b0b81034b9903737ba1036b2ba1760611b604482015260640161023a565b600a546001600160401b03164211610e105760405162461bcd60e51b815260206004820152601b60248201527f43616e206e6f742066696e697368206265666f72652073746172740000000000604482015260640161023a565b600054600160b81b900460ff1615610e635760405162461bcd60e51b815260206004820152601660248201527529b0b6329030b63932b0b23c903630bab731b432b21760511b604482015260640161023a565b600054600160b01b900460ff1615610eaf5760405162461bcd60e51b815260206004820152600f60248201526e2932b33ab73210383937b1b2b9b99760891b604482015260640161023a565b610ec0600454600a60050154611fe4565b6005819055600c54610ed2919061203e565b600655600554600d54600091610ee79161203e565b6000805460ff60b81b1916600160b81b1781556009549192509081906001600160a01b031663f305d719610f19612092565b6007546001600160a01b03168680610f2f612092565b6000546001600160a01b0316610f474261025861220b565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af1158015610fb4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610fd991906122aa565b50915091508282148015610ff35750610ff0612092565b81145b61103f5760405162461bcd60e51b815260206004820152601b60248201527f50726f766964696e67206c6971756964697479206661696c65642e0000000000604482015260640161023a565b60085460075460035460405163e6a4390560e01b81526001600160a01b039283166004820152908216602482015291169063e6a4390590604401602060405180830381865afa158015611096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ba91906122d8565b6009546007546040516001600160a01b039384169392831692909116907f855e21f045401bd18ad033c48b74263dc6e037024f082f3118fa5b79b8c63cf890600090a460006111076120af565b9050801561114b576001546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611149573d6000803e3d6000fd5b505b600f54600454101561138057600d546000906111689086906122f5565b600454600f546111809161117b916122f5565b611f6b565b61118a919061220b565b600054909150600160c01b900460ff1615156001036112925760075460405163a9059cbb60e01b815261dead6004820152602481018390526001600160a01b039091169063a9059cbb906044016020604051808303816000875af11580156111f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061121a9190612253565b6112585760405162461bcd60e51b815260206004820152600f60248201526e2ab730b13632903a3790313ab9371760891b604482015260640161023a565b60405181815233907ff64f45e6447f41665c556373a7683d2b9537f22f7498825a215561a075d341959060200160405180910390a261137e565b60075460015460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810184905291169063a9059cbb906044016020604051808303816000875af11580156112e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061130b9190612253565b6113485760405162461bcd60e51b815260206004820152600e60248201526d2932b33ab732103330b4b632b21760911b604482015260640161023a565b60405181815233907fb2a2a849a821dbd9c9ae4fad722faef4e72c7edbbadaeeaabfdba3c1b17aa86a9060200160405180910390a25b505b50505050565b6000546001600160a01b031633146113b05760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b03164210806113da5750600a54600160401b90046001600160401b031642115b806113e95750600f5460045410155b6114055760405162461bcd60e51b815260040161023a90612223565b600054600160a01b900460ff16156114555760405162461bcd60e51b815260206004820152601360248201527214d85b19481b9bc81a5b9a5d1a585b1a5e9959606a1b604482015260640161023a565b428a6001600160401b031610156114a45760405162461bcd60e51b815260206004820152601360248201527224b73b30b634b21039ba30b93a103a34b6b29760691b604482015260640161023a565b42896001600160401b0316116114f05760405162461bcd60e51b815260206004820152601160248201527024b73b30b634b21032b732103a34b6b29760791b604482015260640161023a565b600088116115395760405162461bcd60e51b815260206004820152601660248201527524b73b30b634b2103a37b5b2b7103232b837b9b4ba1760511b604482015260640161023a565b8787106115885760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420746f6b656e7320666f722073616c652e0000000000000000604482015260640161023a565b8786106115d75760405162461bcd60e51b815260206004820152601d60248201527f496e76616c696420746f6b656e7320666f72206c69717569646974792e000000604482015260640161023a565b6115e260028561230c565b8310156116275760405162461bcd60e51b815260206004820152601360248201527229a19036bab9ba103132901f1e90242197991760691b604482015260640161023a565b60328560ff16101561167b5760405162461bcd60e51b815260206004820152601760248201527f4c6971756964697479206d757374206265203e3d35302e000000000000000000604482015260640161023a565b60648560ff1611156116c45760405162461bcd60e51b815260206004820152601260248201527124b73b30b634b2103634b8bab4b234ba3c9760711b604482015260640161023a565b8181106117135760405162461bcd60e51b815260206004820152601e60248201527f4d696e20627579206d7573742067726561746572207468616e206d61782e0000604482015260640161023a565b6000811161175c5760405162461bcd60e51b815260206004820152601660248201527526b4b710313abc9036bab9ba1032bc31b2b2b210181760511b604482015260640161023a565b60408051610140810182526001600160401b039b8c168082529a909b1660208c01819052908b0189905260608b0188905260808b0187905260ff90951660a08b0181905260c08b0185905260e08b018490526101008b01839052610120909a01819052600a8054600160401b9096026fffffffffffffffffffffffffffffffff1990961690991794909417909755600b95909555600c93909355600d91909155600e805460ff1916909517909455600f556010556011556012556000805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146118555760405162461bcd60e51b815260040161023a90612275565b600054600160a81b900460ff16156118af5760405162461bcd60e51b815260206004820152601960248201527f546f6b656e7320616c7265616479206465706f73697465642e00000000000000604482015260640161023a565b600054600160a01b900460ff166118ff5760405162461bcd60e51b81526020600482015260146024820152732737ba1034b734ba34b0b634bd32b2103cb2ba1760611b604482015260640161023a565b600061190a600b5490565b6000805460ff60a81b1916600160a81b1790556007546040516323b872dd60e01b8152336004820152306024820152604481018390529192506001600160a01b0316906323b872dd906064016020604051808303816000875af1158015611975573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119999190612253565b6119d75760405162461bcd60e51b815260206004820152600f60248201526e2232b837b9b4ba103330b4b632b21760891b604482015260640161023a565b60405181815233907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c490602001610abe565b6000546001600160a01b03163314611a335760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b0316421015611a5e5760405162461bcd60e51b815260040161023a906121c7565b600a54600160401b90046001600160401b0316421115611a905760405162461bcd60e51b815260040161023a906121c7565b600054600160b81b900460ff1615611adb5760405162461bcd60e51b815260206004820152600e60248201526d29b0b632903334b734b9b432b21760911b604482015260640161023a565b600a80546fffffffffffffffff0000000000000000191690556000805460ff60b01b1916600160b01b1781556007546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611b4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b73919061232e565b1115611c32576000611b84600b5490565b60075460405163a9059cbb60e01b8152336004820152602481018390529192506001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015611bd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bfa9190612253565b5060405181815233907f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a94243649060200160405180910390a2505b60075460405130916001600160a01b03169033907f72452f1a219141fd5d3814b0d1d79e431ceb617f33a3a07bdd18a1a64ed0a6e890600090a4565b6000546001600160a01b03163314611c985760405162461bcd60e51b815260040161023a90612275565b6001600160a01b038116611cfd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161023a565b611d0681611f94565b50565b6000546001600160a01b03163314611d335760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b0316421080611d5d5750600a54600160401b90046001600160401b031642115b80611d6c5750600f5460045410155b611d885760405162461bcd60e51b815260040161023a90612223565b600054600160b01b900460ff16151560011480611dc45750600a54600160401b90046001600160401b031642118015611dc45750601054600454105b611e065760405162461bcd60e51b81526020600482015260136024820152722932b33ab732103ab730bb30b4b630b136329760691b604482015260640161023a565b6007546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015611e4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e73919061232e565b1115610cea576000611e84600b5490565b60075460405163a9059cbb60e01b8152336004820152602481018390529192506001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015611ed6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611efa9190612253565b611f395760405162461bcd60e51b815260206004820152601060248201526f2bb4ba34323930bb903330b4b632b21760811b604482015260640161023a565b60405181815233907f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a942436490602001610abe565b6000611f8e600454611f88600654856120d090919063ffffffff16565b906120dc565b92915050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818311156120285760405162461bcd60e51b815260206004820152600f60248201526e09ceadac4cae440e8dede40d0d2ced608b1b604482015260640161023a565b61203782611f888560646120d0565b9392505050565b600060648311156120835760405162461bcd60e51b815260206004820152600f60248201526e09ceadac4cae440e8dede40d0d2ced608b1b604482015260640161023a565b6120376064611f8884866120d0565b600e546004546000916120aa9160ff9091169061203e565b905090565b6000806120ba612092565b9050806004546120ca91906122f5565b91505090565b60006120378284612347565b6000612037828461230c565b6001600160a01b0381168114611d0657600080fd5b60006020828403121561210f57600080fd5b8135612037816120e8565b80356001600160401b038116811461213157600080fd5b919050565b6000806000806000806000806000806101408b8d03121561215657600080fd5b61215f8b61211a565b995061216d60208c0161211a565b985060408b0135975060608b0135965060808b0135955060a08b013560ff8116811461219857600080fd5b999c989b5096999598949794965050505060c08301359260e08101359261010082013592506101209091013590565b60208082526014908201527329b0b6329036bab9ba1031329030b1ba34bb329760611b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561221e5761221e6121f5565b500190565b60208082526016908201527529b0b6329036bab9ba1031329034b730b1ba34bb329760511b604082015260600190565b60006020828403121561226557600080fd5b8151801515811461203757600080fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000806000606084860312156122bf57600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156122ea57600080fd5b8151612037816120e8565b600082821015612307576123076121f5565b500390565b60008261232957634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561234057600080fd5b5051919050565b6000816000190483118215151615612361576123616121f5565b50029056fea2646970667358221220c5a38fff2d828f6356025d6a734ae5267207db07f6c8149537fb74b3990987a564736f6c634300080f00330000000000000000000000001a017a8fd2cc25e9fb4643bb5f627a371e88174b0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f00000000000000000000000083aaff70d1f0bf5e3d2f9bac81cd435056cfb951000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
Deployed Bytecode
0x6080604052600436106101bb5760003560e01c80637bc3b5ff116100ec578063d64428e31161008a578063ec8ac4d811610064578063ec8ac4d8146105dd578063f2fde38b146105eb578063fddf0fc01461060b578063ffa324dc1461062157600080fd5b8063d64428e314610591578063d921eb78146105a7578063e7e10490146105c857600080fd5b80638f86f5ea116100c65780638f86f5ea14610526578063b145a5b81461053b578063ca62089e1461055c578063d0e30db01461057c57600080fd5b80637bc3b5ff146104c75780637cdc65f2146104e85780638da5cb5b1461050857600080fd5b8063518ab2a81161015957806359927044116101335780635992704414610452578063658030b314610472578063715018a61461049257806378cc70b2146104a757600080fd5b8063518ab2a81461040757806355cb26661461041d578063590e1ae31461043d57600080fd5b80633b97e856116101955780633b97e8561461034c5780633fc8cef31461037f5780634034175e146103b757806348c54b9d146103f257600080fd5b806308003f781461024857806316f0115b1461027e5780632c8ca0ea1461032b57600080fd5b3661024357600a546001600160401b031642108015906101ed5750600a54600160401b90046001600160401b03164211155b156102025761020033610636565b610636565b005b60405162461bcd60e51b8152602060048201526011602482015270141c995cd85b19481a5cc818db1bdcd959607a1b60448201526064015b60405180910390fd5b600080fd5b34801561025457600080fd5b5060005461026990600160c01b900460ff1681565b60405190151581526020015b60405180910390f35b34801561028a57600080fd5b50600a54600b54600c54600d54600e54600f546010546011546012546102d3986001600160401b0380821699600160401b909204169790969095909460ff90911693909290918a565b604080516001600160401b039b8c1681529a90991660208b0152978901969096526060880194909452608087019290925260ff1660a086015260c085015260e084015261010083015261012082015261014001610275565b34801561033757600080fd5b5060005461026990600160b81b900460ff1681565b34801561035857600080fd5b5060035461036d90600160a01b900460ff1681565b60405160ff9091168152602001610275565b34801561038b57600080fd5b5060035461039f906001600160a01b031681565b6040516001600160a01b039091168152602001610275565b3480156103c357600080fd5b506103e46103d23660046120fd565b60136020526000908152604090205481565b604051908152602001610275565b3480156103fe57600080fd5b506102006108bc565b34801561041357600080fd5b506103e460065481565b34801561042957600080fd5b5060095461039f906001600160a01b031681565b34801561044957600080fd5b50610200610ac9565b34801561045e57600080fd5b5060025461039f906001600160a01b031681565b34801561047e57600080fd5b5060075461039f906001600160a01b031681565b34801561049e57600080fd5b50610200610cb6565b3480156104b357600080fd5b5060085461039f906001600160a01b031681565b3480156104d357600080fd5b5060005461026990600160a81b900460ff1681565b3480156104f457600080fd5b5060015461039f906001600160a01b031681565b34801561051457600080fd5b506000546001600160a01b031661039f565b34801561053257600080fd5b50610200610cec565b34801561054757600080fd5b5060005461026990600160a01b900460ff1681565b34801561056857600080fd5b50610200610577366004612136565b611386565b34801561058857600080fd5b5061020061182b565b34801561059d57600080fd5b506103e460055481565b3480156105b357600080fd5b5060005461026990600160b01b900460ff1681565b3480156105d457600080fd5b50610200611a09565b6102006101fb3660046120fd565b3480156105f757600080fd5b506102006106063660046120fd565b611c6e565b34801561061757600080fd5b506103e460045481565b34801561062d57600080fd5b50610200611d09565b600a546001600160401b03164210156106615760405162461bcd60e51b815260040161023a906121c7565b600a54600160401b90046001600160401b03164211156106935760405162461bcd60e51b815260040161023a906121c7565b600054600160a81b900460ff166106e45760405162461bcd60e51b81526020600482015260156024820152742a37b5b2b739903737ba103232b837b9b4ba32b21760591b604482015260640161023a565b6001600160a01b0381166107335760405162461bcd60e51b81526020600482015260166024820152752a3930b739b332b9103a3790181030b2323932b9b99760511b604482015260640161023a565b346000036107755760405162461bcd60e51b815260206004820152600f60248201526e057656920416d6f756e74206973203608c1b604482015260640161023a565b6012543410156107bd5760405162461bcd60e51b815260206004820152601360248201527226b4b710313abc9034b9903737ba1036b2ba1760691b604482015260640161023a565b6011546001600160a01b0382166000908152601360205260409020546107e3903461220b565b11156108315760405162461bcd60e51b815260206004820152601760248201527f4d617820627579206c696d69742065786365656465642e000000000000000000604482015260640161023a565b600f5460045461084290349061220b565b111561087e5760405162461bcd60e51b815260206004820152600b60248201526a2421902932b0b1b432b21760a91b604482015260640161023a565b3460046000828254610890919061220b565b909155505033600090815260136020526040812080543492906108b490849061220b565b909155505050565b600a546001600160401b03164210806108e65750600a54600160401b90046001600160401b031642115b806108f55750600f5460045410155b6109115760405162461bcd60e51b815260040161023a90612223565b600054600160b81b900460ff166109625760405162461bcd60e51b815260206004820152601560248201527429b0b6329034b99039ba34b6361030b1ba34bb329760591b604482015260640161023a565b600054600160b01b900460ff16156109ae5760405162461bcd60e51b815260206004820152600f60248201526e2932b33ab73210383937b1b2b9b99760891b604482015260640161023a565b336000908152601360205260408120546109c790611f6b565b3360008181526013602052604080822091909155600754905163a9059cbb60e01b81526004810192909252602482018390529192506001600160a01b039091169063a9059cbb906044016020604051808303816000875af1158015610a30573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a549190612253565b610a905760405162461bcd60e51b815260206004820152600d60248201526c21b630b4b6903330b4b632b21760991b604482015260640161023a565b60405181815233907fd8138f8a3f377c5259ca548e70e4c2de94f129f5a11036a15b69513cba2b426a906020015b60405180910390a250565b600a546001600160401b0316421080610af35750600a54600160401b90046001600160401b031642115b80610b025750600f5460045410155b610b1e5760405162461bcd60e51b815260040161023a90612223565b600054600160b01b900460ff16151560011480610b5a5750600a54600160401b90046001600160401b031642118015610b5a5750601054600454105b610b9c5760405162461bcd60e51b81526020600482015260136024820152722932b33ab732103ab730bb30b4b630b136329760691b604482015260640161023a565b3360009081526013602052604090205480610bec5760405162461bcd60e51b815260206004820152601060248201526f139bc81c99599d5b9908185b5bdd5b9d60821b604482015260640161023a565b80471015610c325760405162461bcd60e51b81526020600482015260136024820152724e6f20616d6f756e7420617661696c61626c6560681b604482015260640161023a565b3360008181526013602052604080822082905551829184156108fc02918591818181858888f19350505050158015610c6e573d6000803e3d6000fd5b50806001600160a01b03167fd7dee2702d63ad89917b6a4da9981c90c4d24f8c2bdfd64c604ecae57d8d065183604051610caa91815260200190565b60405180910390a25050565b6000546001600160a01b03163314610ce05760405162461bcd60e51b815260040161023a90612275565b610cea6000611f94565b565b6000546001600160a01b03163314610d165760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b0316421080610d405750600a54600160401b90046001600160401b031642115b80610d4f5750600f5460045410155b610d6b5760405162461bcd60e51b815260040161023a90612223565b6010546004541015610db65760405162461bcd60e51b815260206004820152601460248201527329b7b33a1021b0b81034b9903737ba1036b2ba1760611b604482015260640161023a565b600a546001600160401b03164211610e105760405162461bcd60e51b815260206004820152601b60248201527f43616e206e6f742066696e697368206265666f72652073746172740000000000604482015260640161023a565b600054600160b81b900460ff1615610e635760405162461bcd60e51b815260206004820152601660248201527529b0b6329030b63932b0b23c903630bab731b432b21760511b604482015260640161023a565b600054600160b01b900460ff1615610eaf5760405162461bcd60e51b815260206004820152600f60248201526e2932b33ab73210383937b1b2b9b99760891b604482015260640161023a565b610ec0600454600a60050154611fe4565b6005819055600c54610ed2919061203e565b600655600554600d54600091610ee79161203e565b6000805460ff60b81b1916600160b81b1781556009549192509081906001600160a01b031663f305d719610f19612092565b6007546001600160a01b03168680610f2f612092565b6000546001600160a01b0316610f474261025861220b565b60405160e089901b6001600160e01b03191681526001600160a01b039687166004820152602481019590955260448501939093526064840191909152909216608482015260a481019190915260c40160606040518083038185885af1158015610fb4573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610fd991906122aa565b50915091508282148015610ff35750610ff0612092565b81145b61103f5760405162461bcd60e51b815260206004820152601b60248201527f50726f766964696e67206c6971756964697479206661696c65642e0000000000604482015260640161023a565b60085460075460035460405163e6a4390560e01b81526001600160a01b039283166004820152908216602482015291169063e6a4390590604401602060405180830381865afa158015611096573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110ba91906122d8565b6009546007546040516001600160a01b039384169392831692909116907f855e21f045401bd18ad033c48b74263dc6e037024f082f3118fa5b79b8c63cf890600090a460006111076120af565b9050801561114b576001546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015611149573d6000803e3d6000fd5b505b600f54600454101561138057600d546000906111689086906122f5565b600454600f546111809161117b916122f5565b611f6b565b61118a919061220b565b600054909150600160c01b900460ff1615156001036112925760075460405163a9059cbb60e01b815261dead6004820152602481018390526001600160a01b039091169063a9059cbb906044016020604051808303816000875af11580156111f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061121a9190612253565b6112585760405162461bcd60e51b815260206004820152600f60248201526e2ab730b13632903a3790313ab9371760891b604482015260640161023a565b60405181815233907ff64f45e6447f41665c556373a7683d2b9537f22f7498825a215561a075d341959060200160405180910390a261137e565b60075460015460405163a9059cbb60e01b81526001600160a01b0391821660048201526024810184905291169063a9059cbb906044016020604051808303816000875af11580156112e7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061130b9190612253565b6113485760405162461bcd60e51b815260206004820152600e60248201526d2932b33ab732103330b4b632b21760911b604482015260640161023a565b60405181815233907fb2a2a849a821dbd9c9ae4fad722faef4e72c7edbbadaeeaabfdba3c1b17aa86a9060200160405180910390a25b505b50505050565b6000546001600160a01b031633146113b05760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b03164210806113da5750600a54600160401b90046001600160401b031642115b806113e95750600f5460045410155b6114055760405162461bcd60e51b815260040161023a90612223565b600054600160a01b900460ff16156114555760405162461bcd60e51b815260206004820152601360248201527214d85b19481b9bc81a5b9a5d1a585b1a5e9959606a1b604482015260640161023a565b428a6001600160401b031610156114a45760405162461bcd60e51b815260206004820152601360248201527224b73b30b634b21039ba30b93a103a34b6b29760691b604482015260640161023a565b42896001600160401b0316116114f05760405162461bcd60e51b815260206004820152601160248201527024b73b30b634b21032b732103a34b6b29760791b604482015260640161023a565b600088116115395760405162461bcd60e51b815260206004820152601660248201527524b73b30b634b2103a37b5b2b7103232b837b9b4ba1760511b604482015260640161023a565b8787106115885760405162461bcd60e51b815260206004820152601860248201527f496e76616c696420746f6b656e7320666f722073616c652e0000000000000000604482015260640161023a565b8786106115d75760405162461bcd60e51b815260206004820152601d60248201527f496e76616c696420746f6b656e7320666f72206c69717569646974792e000000604482015260640161023a565b6115e260028561230c565b8310156116275760405162461bcd60e51b815260206004820152601360248201527229a19036bab9ba103132901f1e90242197991760691b604482015260640161023a565b60328560ff16101561167b5760405162461bcd60e51b815260206004820152601760248201527f4c6971756964697479206d757374206265203e3d35302e000000000000000000604482015260640161023a565b60648560ff1611156116c45760405162461bcd60e51b815260206004820152601260248201527124b73b30b634b2103634b8bab4b234ba3c9760711b604482015260640161023a565b8181106117135760405162461bcd60e51b815260206004820152601e60248201527f4d696e20627579206d7573742067726561746572207468616e206d61782e0000604482015260640161023a565b6000811161175c5760405162461bcd60e51b815260206004820152601660248201527526b4b710313abc9036bab9ba1032bc31b2b2b210181760511b604482015260640161023a565b60408051610140810182526001600160401b039b8c168082529a909b1660208c01819052908b0189905260608b0188905260808b0187905260ff90951660a08b0181905260c08b0185905260e08b018490526101008b01839052610120909a01819052600a8054600160401b9096026fffffffffffffffffffffffffffffffff1990961690991794909417909755600b95909555600c93909355600d91909155600e805460ff1916909517909455600f556010556011556012556000805460ff60a01b1916600160a01b179055565b6000546001600160a01b031633146118555760405162461bcd60e51b815260040161023a90612275565b600054600160a81b900460ff16156118af5760405162461bcd60e51b815260206004820152601960248201527f546f6b656e7320616c7265616479206465706f73697465642e00000000000000604482015260640161023a565b600054600160a01b900460ff166118ff5760405162461bcd60e51b81526020600482015260146024820152732737ba1034b734ba34b0b634bd32b2103cb2ba1760611b604482015260640161023a565b600061190a600b5490565b6000805460ff60a81b1916600160a81b1790556007546040516323b872dd60e01b8152336004820152306024820152604481018390529192506001600160a01b0316906323b872dd906064016020604051808303816000875af1158015611975573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119999190612253565b6119d75760405162461bcd60e51b815260206004820152600f60248201526e2232b837b9b4ba103330b4b632b21760891b604482015260640161023a565b60405181815233907f2da466a7b24304f47e87fa2e1e5a81b9831ce54fec19055ce277ca2f39ba42c490602001610abe565b6000546001600160a01b03163314611a335760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b0316421015611a5e5760405162461bcd60e51b815260040161023a906121c7565b600a54600160401b90046001600160401b0316421115611a905760405162461bcd60e51b815260040161023a906121c7565b600054600160b81b900460ff1615611adb5760405162461bcd60e51b815260206004820152600e60248201526d29b0b632903334b734b9b432b21760911b604482015260640161023a565b600a80546fffffffffffffffff0000000000000000191690556000805460ff60b01b1916600160b01b1781556007546040516370a0823160e01b81523060048201526001600160a01b03909116906370a0823190602401602060405180830381865afa158015611b4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b73919061232e565b1115611c32576000611b84600b5490565b60075460405163a9059cbb60e01b8152336004820152602481018390529192506001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015611bd6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bfa9190612253565b5060405181815233907f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a94243649060200160405180910390a2505b60075460405130916001600160a01b03169033907f72452f1a219141fd5d3814b0d1d79e431ceb617f33a3a07bdd18a1a64ed0a6e890600090a4565b6000546001600160a01b03163314611c985760405162461bcd60e51b815260040161023a90612275565b6001600160a01b038116611cfd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161023a565b611d0681611f94565b50565b6000546001600160a01b03163314611d335760405162461bcd60e51b815260040161023a90612275565b600a546001600160401b0316421080611d5d5750600a54600160401b90046001600160401b031642115b80611d6c5750600f5460045410155b611d885760405162461bcd60e51b815260040161023a90612223565b600054600160b01b900460ff16151560011480611dc45750600a54600160401b90046001600160401b031642118015611dc45750601054600454105b611e065760405162461bcd60e51b81526020600482015260136024820152722932b33ab732103ab730bb30b4b630b136329760691b604482015260640161023a565b6007546040516370a0823160e01b81523060048201526000916001600160a01b0316906370a0823190602401602060405180830381865afa158015611e4f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e73919061232e565b1115610cea576000611e84600b5490565b60075460405163a9059cbb60e01b8152336004820152602481018390529192506001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015611ed6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611efa9190612253565b611f395760405162461bcd60e51b815260206004820152601060248201526f2bb4ba34323930bb903330b4b632b21760811b604482015260640161023a565b60405181815233907f884edad9ce6fa2440d8a54cc123490eb96d2768479d49ff9c7366125a942436490602001610abe565b6000611f8e600454611f88600654856120d090919063ffffffff16565b906120dc565b92915050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000818311156120285760405162461bcd60e51b815260206004820152600f60248201526e09ceadac4cae440e8dede40d0d2ced608b1b604482015260640161023a565b61203782611f888560646120d0565b9392505050565b600060648311156120835760405162461bcd60e51b815260206004820152600f60248201526e09ceadac4cae440e8dede40d0d2ced608b1b604482015260640161023a565b6120376064611f8884866120d0565b600e546004546000916120aa9160ff9091169061203e565b905090565b6000806120ba612092565b9050806004546120ca91906122f5565b91505090565b60006120378284612347565b6000612037828461230c565b6001600160a01b0381168114611d0657600080fd5b60006020828403121561210f57600080fd5b8135612037816120e8565b80356001600160401b038116811461213157600080fd5b919050565b6000806000806000806000806000806101408b8d03121561215657600080fd5b61215f8b61211a565b995061216d60208c0161211a565b985060408b0135975060608b0135965060808b0135955060a08b013560ff8116811461219857600080fd5b999c989b5096999598949794965050505060c08301359260e08101359261010082013592506101209091013590565b60208082526014908201527329b0b6329036bab9ba1031329030b1ba34bb329760611b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000821982111561221e5761221e6121f5565b500190565b60208082526016908201527529b0b6329036bab9ba1031329034b730b1ba34bb329760511b604082015260600190565b60006020828403121561226557600080fd5b8151801515811461203757600080fd5b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000806000606084860312156122bf57600080fd5b8351925060208401519150604084015190509250925092565b6000602082840312156122ea57600080fd5b8151612037816120e8565b600082821015612307576123076121f5565b500390565b60008261232957634e487b7160e01b600052601260045260246000fd5b500490565b60006020828403121561234057600080fd5b5051919050565b6000816000190483118215151615612361576123616121f5565b50029056fea2646970667358221220c5a38fff2d828f6356025d6a734ae5267207db07f6c8149537fb74b3990987a564736f6c634300080f0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000001a017a8fd2cc25e9fb4643bb5f627a371e88174b0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f00000000000000000000000083aaff70d1f0bf5e3d2f9bac81cd435056cfb951000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
-----Decoded View---------------
Arg [0] : _tokenInstance (address): 0x1a017A8Fd2CC25E9Fb4643bB5f627a371e88174b
Arg [1] : _uniswapv2Router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [2] : _uniswapv2Factory (address): 0x5C69bEe701ef814a2B6a3EDD4B1652CB9cc5aA6f
Arg [3] : _teamWallet (address): 0x83aAff70D1f0bf5e3D2f9Bac81cd435056Cfb951
Arg [4] : _weth (address): 0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2
-----Encoded View---------------
5 Constructor Arguments found :
Arg [0] : 0000000000000000000000001a017a8fd2cc25e9fb4643bb5f627a371e88174b
Arg [1] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [2] : 0000000000000000000000005c69bee701ef814a2b6a3edd4b1652cb9cc5aa6f
Arg [3] : 00000000000000000000000083aaff70d1f0bf5e3d2f9bac81cd435056cfb951
Arg [4] : 000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc2
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
ZKSYNC | 100.00% | $2,516.93 | 0.15 | $377.54 |
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.