ERC-20
Protocol
Overview
Max Total Supply
1,000,000 YEET
Holders
338 (0.00%)
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Yeet
Compiler Version
v0.8.19+commit.7dd6d404
Optimization Enabled:
Yes with 200 runs
Other Settings:
default evmVersion
Contract Source Code (Solidity Standard Json-Input format)
/* | | # # ####### ####### ####### ####### ####### # ####### ####### ####### # # # # # # # # # # # # # # # # # # # # # # # ##### ##### # # ##### # ##### ##### # # # # # # # # # # # # # # # # # # # # # # # # ####### ####### # ####### ####### ##### ####### ####### # An experimental protocol that purges jeets on every button push. WEBSITE: https://yeetzejeet.com TELEGRAM: https://t.me/YeetZeJeet TWITTER: https://twitter.com/YeetZeJeet */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.17; import "lib/openzeppelin-contracts/contracts/access/Ownable.sol"; import "lib/openzeppelin-contracts/contracts/security/ReentrancyGuard.sol"; import "lib/openzeppelin-contracts/contracts/interfaces/IERC20.sol"; import "interfaces/IUniswapV2Router02.sol"; import "interfaces/IUniswapV2Pair.sol"; import "interfaces/IUniswapV2Factory.sol"; contract Yeet is IERC20, Ownable, ReentrancyGuard { string public name = "Yeet ze Jeet"; string public symbol = "YEET"; uint8 public decimals = 18; uint256 public totalSupply; mapping(address => uint256) public balanceOf; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) public isExcludedFromTax; bool public isTimeToYeet; bool public isYeetReserve; bool public tradingOpen; uint256 public buyTax = 5; uint256 public sellTax = 5; uint256 public maxTaxSwap = 5_000e18; uint256 public lastYeetTimestamp; uint256 public lastYeetReserve; uint256 public yeetCooldown; IUniswapV2Pair public immutable uniswapV2Pair; IUniswapV2Router02 public immutable uniswapV2Router; address payable public immutable taxWallet; constructor() { totalSupply = 1_000_000e18; balanceOf[msg.sender] = totalSupply; uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapV2Pair = IUniswapV2Pair( IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()) ); taxWallet = payable(0x9423Ffa556c9b538c8fd29C939Dc4335E1724836); isYeetReserve = address(this) < uniswapV2Router.WETH(); yeetCooldown = 24 hours; isExcludedFromTax[owner()] = true; isExcludedFromTax[address(this)] = true; isExcludedFromTax[taxWallet] = true; isExcludedFromTax[0xF1A64C73e389404d43f1C4B9A37BC2d3517d782D] = true; // Presale addr isExcludedFromTax[0x2c952eE289BbDB3aEbA329a4c41AE4C836bcc231] = true; // Wentokens addr } event Yeeted(uint256 prevYeetReserve, uint256 newYeetReserve, uint256 ethReserve, uint256 yeetBurned); event FailedToYeet(uint256 prevYeetReserve, uint256 newYeetReserve); event AddedLiquidity(uint256 yeetAmount, uint256 ethAmount); bool inSwap = false; modifier lockTheSwap() { inSwap = true; _; inSwap = false; } receive() external payable {} function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _spendAllowance(address owner, address spender, uint256 amount) private { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(owner, spender, currentAllowance - amount); } } } function transfer(address recipient, uint256 amount) external returns (bool) { _transfer(_msgSender(), recipient, amount); emit Transfer(msg.sender, recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) external returns (bool) { _spendAllowance(sender, _msgSender(), amount); _transfer(sender, recipient, amount); emit Transfer(sender, recipient, amount); return true; } function _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (!tradingOpen) { require(isExcludedFromTax[from], "Can't trade yet"); } uint256 taxAmount = 0; if (isTimeToYeet && !isExcludedFromTax[from] && !isExcludedFromTax[to]) { if (from == address(uniswapV2Pair) && to != address(uniswapV2Router)) { taxAmount = (amount * buyTax) / 100; } if (to == address(uniswapV2Pair) && from != address(this)) { taxAmount = (amount * sellTax) / 100; } if (taxAmount > 0) { balanceOf[address(this)] += taxAmount; emit Transfer(from, address(this), taxAmount); } uint256 contractTokenBalance = balanceOf[address(this)]; bool canSwap = contractTokenBalance > 0; if (canSwap && !inSwap && to == address(uniswapV2Pair)) { swapAndLiquify(min(amount, min(contractTokenBalance, maxTaxSwap))); } } balanceOf[from] -= amount; balanceOf[to] += amount - taxAmount; } function burnFrom(address account, uint256 amount) private { address deadAddress = 0x000000000000000000000000000000000000dEaD; balanceOf[account] -= amount; balanceOf[deadAddress] += amount; emit Transfer(account, deadAddress, amount); } function swapAndLiquify(uint256 tokenAmount) private lockTheSwap { uint256 oneThird = tokenAmount / 3; uint256 twoThirds = tokenAmount - oneThird; uint256 initialBalance = address(this).balance; swapTokensForEth(twoThirds); uint256 newBalance = address(this).balance - initialBalance; addLiquidity(oneThird, newBalance); emit AddedLiquidity(oneThird, newBalance); } function swapTokensForEth(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); uint256 ethBalBefore = address(this).balance; _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); uint256 ethToOwner = address(this).balance - ((address(this).balance - ethBalBefore) / 3); (bool success,) = taxWallet.call{value: ethToOwner}(""); require(success); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.addLiquidityETH{value: ethAmount}(address(this), tokenAmount, 0, 0, owner(), block.timestamp); } function manualSwap() external { require(_msgSender() == taxWallet, "Not authorized"); uint256 tokenBalance = balanceOf[address(this)]; if (tokenBalance > 0) { swapAndLiquify(tokenBalance); } } /** * This function burns jeet tokens from lp, pumping the price. */ function yeet() public nonReentrant { require(isTimeToYeet, "Yeet machine broke"); require(lastYeetTimestamp + yeetCooldown <= block.timestamp, "Yeet cooldown not met"); // Get current liquidity pair reserves (uint112 currentYeetReserve, ) = getReserves(); // Check if current reserve is higher since last yeet // (meaning price is lower) if (currentYeetReserve > lastYeetReserve) { // Burn the difference from lp uint256 toBurn = currentYeetReserve - lastYeetReserve; burnFrom(address(uniswapV2Pair), toBurn); uniswapV2Pair.sync(); (uint112 newYeetReserve, uint112 newEthReserve) = getReserves(); //Let them jeets know emit Yeeted(currentYeetReserve, newYeetReserve, newEthReserve, toBurn); } else { emit FailedToYeet(currentYeetReserve, lastYeetReserve); } // Reset reserve and timestamp (uint112 updatedYeetReserve,) = getReserves(); lastYeetReserve = updatedYeetReserve; lastYeetTimestamp = block.timestamp; } /** * This function always returns currentYeetReserve at first slot of the tuple, * which is not always the case with calling pair for reserves */ function getReserves() public view returns (uint112, uint112) { (uint112 reserve0, uint112 reserve1,) = uniswapV2Pair.getReserves(); uint112 yeetReserve = isYeetReserve ? reserve0 : reserve1; uint112 ethReserve = !isYeetReserve ? reserve0 : reserve1; return (yeetReserve, ethReserve); } /** * To get usd price: divide current eth price by returned values */ function getPredictedPrice() public view returns (uint256 _priceNow, uint256 _priceAfterYeet) { (uint112 currentYeetReserve, uint112 currentEthReserve) = getReserves(); uint256 priceNow = currentYeetReserve / currentEthReserve; uint256 priceAfterYeet; if (currentYeetReserve > lastYeetReserve) { priceAfterYeet = lastYeetReserve / currentEthReserve; } else { priceAfterYeet = priceNow; } return (priceNow, priceAfterYeet); } /** * Estimates burn amount from lp */ function estimateBurn() public view returns (uint256) { (uint112 currentYeetReserve,) = getReserves(); uint256 toBurn; if (currentYeetReserve > lastYeetReserve) { toBurn = currentYeetReserve - lastYeetReserve; } return toBurn; } /** * Set how much time shoud pass between yeets */ function setYeetCooldown(uint256 cooldown) public onlyOwner { yeetCooldown = cooldown; } /** * Start the protocol */ function timeToYeet(bool isIt) public onlyOwner { isTimeToYeet = isIt; } /** * Add liquidity and set initial price */ function addLiquidity(uint256 tokenAmount) public payable onlyOwner { lastYeetReserve = tokenAmount; lastYeetTimestamp = block.timestamp; this.transferFrom(owner(), address(this), tokenAmount); this.approve(address(uniswapV2Router), type(uint256).max); uniswapV2Router.addLiquidityETH{value: msg.value}(address(this), tokenAmount, 0, 0, owner(), block.timestamp); } /** * Open trading on Uniswap */ function openTrading() public payable onlyOwner { tradingOpen = true; } function addExcludedFromTax(address toBeExcluded) public payable onlyOwner { isExcludedFromTax[toBeExcluded] = true; } function removeExcludedFromTax(address toBeRemoved) public payable onlyOwner { isExcludedFromTax[toBeRemoved] = false; } function min(uint256 a, uint256 b) public pure returns (uint256) { return a < b ? a : b; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.7.0) (access/Ownable.sol) pragma solidity ^0.8.0; import "../utils/Context.sol"; /** * @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() { _transferOwnership(_msgSender()); } /** * @dev Throws if called by any account other than the owner. */ modifier onlyOwner() { _checkOwner(); _; } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if the sender is not the owner. */ function _checkOwner() internal view virtual { 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 { _transferOwnership(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"); _transferOwnership(newOwner); } /** * @dev Transfers ownership of the contract to a new account (`newOwner`). * Internal function without access restriction. */ function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.8.0) (security/ReentrancyGuard.sol) pragma solidity ^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() { _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 making it call a * `private` function that does the actual work. */ modifier nonReentrant() { _nonReentrantBefore(); _; _nonReentrantAfter(); } function _nonReentrantBefore() private { // On the first call to nonReentrant, _status will be _NOT_ENTERED require(_status != _ENTERED, "ReentrancyGuard: reentrant call"); // Any calls to nonReentrant after this point will fail _status = _ENTERED; } function _nonReentrantAfter() private { // By storing the original value once again, a refund is triggered (see // https://eips.ethereum.org/EIPS/eip-2200) _status = _NOT_ENTERED; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (interfaces/IERC20.sol) pragma solidity ^0.8.0; import "../token/ERC20/IERC20.sol";
pragma solidity >=0.6.2; import './IUniswapV2Router01.sol'; interface IUniswapV2Router02 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; }
pragma solidity >=0.5.0; interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Mint(address indexed sender, uint amount0, uint amount1); event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function mint(address to) external returns (uint liquidity); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; }
pragma solidity >=0.5.0; interface IUniswapV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (utils/Context.sol) pragma solidity ^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 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) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.6.0) (token/ERC20/IERC20.sol) pragma solidity ^0.8.0; /** * @dev Interface of the ERC20 standard as defined in the EIP. */ interface IERC20 { /** * @dev Emitted when `value` tokens are moved from one account (`from`) to * another (`to`). * * Note that `value` may be zero. */ event Transfer(address indexed from, address indexed to, uint256 value); /** * @dev Emitted when the allowance of a `spender` for an `owner` is set by * a call to {approve}. `value` is the new allowance. */ event Approval(address indexed owner, address indexed spender, uint256 value); /** * @dev Returns the amount of tokens in existence. */ function totalSupply() external view returns (uint256); /** * @dev Returns the amount of tokens owned by `account`. */ function balanceOf(address account) external view returns (uint256); /** * @dev Moves `amount` tokens from the caller's account to `to`. * * Returns a boolean value indicating whether the operation succeeded. * * Emits a {Transfer} event. */ function transfer(address to, 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 `from` to `to` 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 from, address to, uint256 amount ) external returns (bool); }
pragma solidity >=0.6.2; interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); }
{ "remappings": [ "ds-test/=lib/forge-std/lib/ds-test/src/", "forge-std/=lib/forge-std/src/", "openzeppelin-contracts/=lib/openzeppelin-contracts/" ], "optimizer": { "enabled": true, "runs": 200 }, "metadata": { "bytecodeHash": "ipfs", "appendCBOR": true }, "outputSelection": { "*": { "*": [ "evm.bytecode", "evm.deployedBytecode", "devdoc", "userdoc", "metadata", "abi" ] } }, "evmVersion": "london", "libraries": {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"yeetAmount","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethAmount","type":"uint256"}],"name":"AddedLiquidity","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"prevYeetReserve","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newYeetReserve","type":"uint256"}],"name":"FailedToYeet","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"prevYeetReserve","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"newYeetReserve","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReserve","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"yeetBurned","type":"uint256"}],"name":"Yeeted","type":"event"},{"inputs":[{"internalType":"address","name":"toBeExcluded","type":"address"}],"name":"addExcludedFromTax","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"uint256","name":"tokenAmount","type":"uint256"}],"name":"addLiquidity","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"estimateBurn","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getPredictedPrice","outputs":[{"internalType":"uint256","name":"_priceNow","type":"uint256"},{"internalType":"uint256","name":"_priceAfterYeet","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getReserves","outputs":[{"internalType":"uint112","name":"","type":"uint112"},{"internalType":"uint112","name":"","type":"uint112"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isTimeToYeet","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isYeetReserve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastYeetReserve","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lastYeetTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"a","type":"uint256"},{"internalType":"uint256","name":"b","type":"uint256"}],"name":"min","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"toBeRemoved","type":"address"}],"name":"removeExcludedFromTax","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"cooldown","type":"uint256"}],"name":"setYeetCooldown","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"taxWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"isIt","type":"bool"}],"name":"timeToYeet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"contract IUniswapV2Pair","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"yeet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"yeetCooldown","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
610120604052600c60e09081526b1659595d081e99481299595d60a21b610100526002906200002f908262000492565b506040805180820190915260048152631651515560e21b60208201526003906200005a908262000492565b506004805460ff199081166012179091556005600a819055600b5569010f0cf064dd59200000600c556010805490911690553480156200009957600080fd5b50620000a5336200039d565b6001805569d3c21bcecceda100000060058190553360009081526006602090815260409182902092909255737a250d5630b4cf539739df2c5dacb4c659f2488d60a0819052815163c45a015560e01b81529151909263c45a015592600480820193918290030181865afa15801562000121573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200014791906200055e565b6001600160a01b031663c9c653963060a0516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000197573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001bd91906200055e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200020b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023191906200055e565b6001600160a01b03908116608052739423ffa556c9b538c8fd29c939dc4335e172483660c05260a051604080516315ab88c960e31b81529051919092169163ad5c46489160048083019260209291908290030181865afa1580156200029a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002c091906200055e565b6009805461ff0019166001600160a01b0392831630908110610100029190911790915562015180600f55600080548316815260086020526040808220805460ff199081166001908117909255938352818320805485168217905560c0519094168252812080548316841790557f1ed078dbf90bb96a4b1051988465acd9e7e9fed4ece66741882f25acc04c5c5e8054831684179055732c952ee289bbdb3aeba329a4c41ae4c836bcc23190527fedc479d62025e3ede42ad3d73794bb6c27ab651971eb8bc6b5aac8e8697ee27a8054909116909117905562000590565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200041857607f821691505b6020821081036200043957634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200048d57600081815260208120601f850160051c81016020861015620004685750805b601f850160051c820191505b81811015620004895782815560010162000474565b5050505b505050565b81516001600160401b03811115620004ae57620004ae620003ed565b620004c681620004bf845462000403565b846200043f565b602080601f831160018114620004fe5760008415620004e55750858301515b600019600386901b1c1916600185901b17855562000489565b600085815260208120601f198616915b828110156200052f578886015182559484019460019091019084016200050e565b50858210156200054e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200057157600080fd5b81516001600160a01b03811681146200058957600080fd5b9392505050565b60805160a05160c051611f59620006306000396000818161036d015281816108c501526119aa0152600081816102eb01528181610a0a01528181610a880152818161139701528181611822015281816118d40152818161191001528181611a330152611a5a0152600081816103e70152818161078301528181610ce101528181610d080152818161135b015281816113f001526114e00152611f596000f3fe60806040526004361061021d5760003560e01c806370a0823111610123578063a9059cbb116100ab578063dd62ed3e1161006f578063dd62ed3e1461063f578063e76a112a14610685578063e7af5a7014610698578063f2fde38b146106ad578063ffb54a99146106cd57600080fd5b8063a9059cbb146105b1578063bbf50660146105d1578063c9567bf9146105f1578063cb4ca631146105f9578063cc1776d31461062957600080fd5b8063837f3964116100f2578063837f3964146105365780638bbefe4b146105495780638da5cb5b1461055e57806395d89b411461057c5780639fc498a71461059157600080fd5b806370a08231146104b5578063715018a6146104e25780637ae2b5c7146104f7578063816395391461051757600080fd5b80633db232ea116101a657806351c6590a1161017557806351c6590a146104365780635c77591b1461044957806362997f8c1461045f57806364b391291461047557806368e979bd1461049f57600080fd5b80633db232ea146103bb57806349bd5a5e146103d55780634f7041a51461040957806351bc3c851461041f57600080fd5b80631694505e116101ed5780631694505e146102d957806318160ddd1461032557806323b872dd1461033b5780632dc0562d1461035b578063313ce5671461038f57600080fd5b806295a1bc1461022957806306fdde03146102525780630902f1ac14610274578063095ea7b3146102a957600080fd5b3661022457005b600080fd5b34801561023557600080fd5b5061023f600d5481565b6040519081526020015b60405180910390f35b34801561025e57600080fd5b506102676106ed565b6040516102499190611b04565b34801561028057600080fd5b5061028961077b565b604080516001600160701b03938416815292909116602083015201610249565b3480156102b557600080fd5b506102c96102c4366004611b67565b61084e565b6040519015158152602001610249565b3480156102e557600080fd5b5061030d7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610249565b34801561033157600080fd5b5061023f60055481565b34801561034757600080fd5b506102c9610356366004611b93565b610865565b34801561036757600080fd5b5061030d7f000000000000000000000000000000000000000000000000000000000000000081565b34801561039b57600080fd5b506004546103a99060ff1681565b60405160ff9091168152602001610249565b3480156103c757600080fd5b506009546102c99060ff1681565b3480156103e157600080fd5b5061030d7f000000000000000000000000000000000000000000000000000000000000000081565b34801561041557600080fd5b5061023f600a5481565b34801561042b57600080fd5b506104346108c2565b005b610434610444366004611bd4565b610952565b34801561045557600080fd5b5061023f600e5481565b34801561046b57600080fd5b5061023f600c5481565b34801561048157600080fd5b5061048a610b38565b60408051928352602083019190915201610249565b3480156104ab57600080fd5b5061023f600f5481565b3480156104c157600080fd5b5061023f6104d0366004611bed565b60066020526000908152604090205481565b3480156104ee57600080fd5b50610434610ba3565b34801561050357600080fd5b5061023f610512366004611c0a565b610bb7565b34801561052357600080fd5b506009546102c990610100900460ff1681565b610434610544366004611bed565b610bcf565b34801561055557600080fd5b50610434610bfb565b34801561056a57600080fd5b506000546001600160a01b031661030d565b34801561058857600080fd5b50610267610e52565b34801561059d57600080fd5b506104346105ac366004611c3a565b610e5f565b3480156105bd57600080fd5b506102c96105cc366004611b67565b610e7a565b3480156105dd57600080fd5b506104346105ec366004611bd4565b610ebe565b610434610ecb565b34801561060557600080fd5b506102c9610614366004611bed565b60086020526000908152604090205460ff1681565b34801561063557600080fd5b5061023f600b5481565b34801561064b57600080fd5b5061023f61065a366004611c57565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b610434610693366004611bed565b610ee6565b3480156106a457600080fd5b5061023f610f0f565b3480156106b957600080fd5b506104346106c8366004611bed565b610f48565b3480156106d957600080fd5b506009546102c99062010000900460ff1681565b600280546106fa90611c90565b80601f016020809104026020016040519081016040528092919081815260200182805461072690611c90565b80156107735780601f1061074857610100808354040283529160200191610773565b820191906000526020600020905b81548152906001019060200180831161075657829003601f168201915b505050505081565b6000806000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156107df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108039190611ce6565b506009549193509150600090610100900460ff166108215781610823565b825b600954909150600090610100900460ff161561083f5782610841565b835b9196919550909350505050565b600061085b338484610fbe565b5060015b92915050565b60006108728433846110e3565b61087d84848461116f565b826001600160a01b0316846001600160a01b0316600080516020611f04833981519152846040516108b091815260200190565b60405180910390a35060019392505050565b337f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316146109305760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b60448201526064015b60405180910390fd5b30600090815260066020526040902054801561094f5761094f8161159f565b50565b61095a611635565b600e81905542600d55306323b872dd61097b6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018490526064016020604051808303816000875af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f29190611d36565b5060405163095ea7b360e01b81526001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660048201526000196024820152309063095ea7b3906044016020604051808303816000875af1158015610a61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a859190611d36565b507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d719343084600080610acd6000546001600160a01b031690565b426040518863ffffffff1660e01b8152600401610aef96959493929190611d53565b60606040518083038185885af1158015610b0d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b329190611d8e565b50505050565b600080600080610b4661077b565b90925090506000610b578284611de8565b6001600160701b031690506000600e54846001600160701b03161115610b9557826001600160701b0316600e54610b8e9190611e0e565b9050610b98565b50805b909590945092505050565b610bab611635565b610bb5600061168f565b565b6000818310610bc65781610bc8565b825b9392505050565b610bd7611635565b6001600160a01b03166000908152600860205260409020805460ff19166001179055565b610c036116df565b60095460ff16610c4a5760405162461bcd60e51b815260206004820152601260248201527159656574206d616368696e652062726f6b6560701b6044820152606401610927565b42600f54600d54610c5b9190611e22565b1115610ca15760405162461bcd60e51b81526020600482015260156024820152741659595d0818dbdbdb191bdddb881b9bdd081b595d605a1b6044820152606401610927565b6000610cab61077b565b509050600e54816001600160701b03161115610de5576000600e54826001600160701b0316610cda9190611e35565b9050610d067f000000000000000000000000000000000000000000000000000000000000000082611738565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610d6157600080fd5b505af1158015610d75573d6000803e3d6000fd5b50505050600080610d8461077b565b604080516001600160701b03888116825284811660208301528316818301526060810187905290519294509092507fda1b10991fe729633c589f95f806d673cd1b168d01e2d98f2671cf27fb33a31b919081900360800190a1505050610e2c565b600e54604080516001600160701b038416815260208101929092527f20fcf48730b1f2d3f43ca33a57cd0df64dcaddcf2f4f8a99f41bcdea315e00d2910160405180910390a15b6000610e3661077b565b506001600160701b0316600e55505042600d55610bb560018055565b600380546106fa90611c90565b610e67611635565b6009805460ff1916911515919091179055565b6000610e8733848461116f565b6040518281526001600160a01b038416903390600080516020611f048339815191529060200160405180910390a350600192915050565b610ec6611635565b600f55565b610ed3611635565b6009805462ff0000191662010000179055565b610eee611635565b6001600160a01b03166000908152600860205260409020805460ff19169055565b600080610f1a61077b565b5090506000600e54826001600160701b0316111561085f57600e54610bc8906001600160701b038416611e35565b610f50611635565b6001600160a01b038116610fb55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610927565b61094f8161168f565b6001600160a01b0383166110205760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610927565b6001600160a01b0382166110815760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610927565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038381166000908152600760209081526040808320938616835292905220546000198114610b3257818110156111625760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610927565b610b328484848403610fbe565b6001600160a01b0383166111d35760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610927565b6001600160a01b0382166112355760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610927565b600081116112975760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610927565b60095462010000900460ff16611301576001600160a01b03831660009081526008602052604090205460ff166113015760405162461bcd60e51b815260206004820152600f60248201526e10d85b89dd081d1c985919481e595d608a1b6044820152606401610927565b60095460009060ff16801561132f57506001600160a01b03841660009081526008602052604090205460ff16155b801561135457506001600160a01b03831660009081526008602052604090205460ff16155b15611534577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316846001600160a01b03161480156113cc57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b156113ee576064600a54836113e19190611e48565b6113eb9190611e0e565b90505b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614801561143857506001600160a01b0384163014155b1561145a576064600b548361144d9190611e48565b6114579190611e0e565b90505b80156114b357306000908152600660205260408120805483929061147f908490611e22565b909155505060405181815230906001600160a01b03861690600080516020611f048339815191529060200160405180910390a35b30600090815260066020526040902054801580159081906114d7575060105460ff16155b801561151457507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b0316145b156115315761153161152c8561051285600c54610bb7565b61159f565b50505b6001600160a01b0384166000908152600660205260408120805484929061155c908490611e35565b9091555061156c90508183611e35565b6001600160a01b03841660009081526006602052604081208054909190611594908490611e22565b909155505050505050565b6010805460ff1916600117905560006115b9600383611e0e565b905060006115c78284611e35565b9050476115d3826117cb565b60006115df8247611e35565b90506115eb8482611a2d565b60408051858152602081018390527fe74b04c1435e286c6b8eba73f0f16a0a2fcc9d21d879598ecacf17db8c497701910160405180910390a150506010805460ff19169055505050565b6000546001600160a01b03163314610bb55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610927565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6002600154036117315760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610927565b6002600155565b6001600160a01b0382166000908152600660205260408120805461dead92849291611764908490611e35565b90915550506001600160a01b03811660009081526006602052604081208054849290611791908490611e22565b92505081905550806001600160a01b0316836001600160a01b0316600080516020611f04833981519152846040516110d691815260200190565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061180057611800611e5f565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561187e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a29190611e75565b816001815181106118b5576118b5611e5f565b6001600160a01b0390921660209283029190910190910152476118f9307f000000000000000000000000000000000000000000000000000000000000000085610fbe565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac9479061194e908690600090879030904290600401611e92565b600060405180830381600087803b15801561196857600080fd5b505af115801561197c573d6000803e3d6000fd5b505050506000600382476119909190611e35565b61199a9190611e0e565b6119a49047611e35565b905060007f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a13576040519150601f19603f3d011682016040523d82523d6000602084013e611a18565b606091505b5050905080611a2657600080fd5b5050505050565b611a58307f000000000000000000000000000000000000000000000000000000000000000084610fbe565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d719823085600080611a9f6000546001600160a01b031690565b426040518863ffffffff1660e01b8152600401611ac196959493929190611d53565b60606040518083038185885af1158015611adf573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a269190611d8e565b600060208083528351808285015260005b81811015611b3157858101830151858201604001528201611b15565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461094f57600080fd5b60008060408385031215611b7a57600080fd5b8235611b8581611b52565b946020939093013593505050565b600080600060608486031215611ba857600080fd5b8335611bb381611b52565b92506020840135611bc381611b52565b929592945050506040919091013590565b600060208284031215611be657600080fd5b5035919050565b600060208284031215611bff57600080fd5b8135610bc881611b52565b60008060408385031215611c1d57600080fd5b50508035926020909101359150565b801515811461094f57600080fd5b600060208284031215611c4c57600080fd5b8135610bc881611c2c565b60008060408385031215611c6a57600080fd5b8235611c7581611b52565b91506020830135611c8581611b52565b809150509250929050565b600181811c90821680611ca457607f821691505b602082108103611cc457634e487b7160e01b600052602260045260246000fd5b50919050565b80516001600160701b0381168114611ce157600080fd5b919050565b600080600060608486031215611cfb57600080fd5b611d0484611cca565b9250611d1260208501611cca565b9150604084015163ffffffff81168114611d2b57600080fd5b809150509250925092565b600060208284031215611d4857600080fd5b8151610bc881611c2c565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b600080600060608486031215611da357600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001600160701b0380841680611e0257611e02611dbc565b92169190910492915050565b600082611e1d57611e1d611dbc565b500490565b8082018082111561085f5761085f611dd2565b8181038181111561085f5761085f611dd2565b808202811582820484141761085f5761085f611dd2565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611e8757600080fd5b8151610bc881611b52565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ee25784516001600160a01b031683529383019391830191600101611ebd565b50506001600160a01b0396909616606085015250505060800152939250505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212204b9fe1e8eb15696ee4f6d3a1aea9d494554db5e4441e998435b64de29a6ea2cd64736f6c63430008130033
Deployed Bytecode
0x60806040526004361061021d5760003560e01c806370a0823111610123578063a9059cbb116100ab578063dd62ed3e1161006f578063dd62ed3e1461063f578063e76a112a14610685578063e7af5a7014610698578063f2fde38b146106ad578063ffb54a99146106cd57600080fd5b8063a9059cbb146105b1578063bbf50660146105d1578063c9567bf9146105f1578063cb4ca631146105f9578063cc1776d31461062957600080fd5b8063837f3964116100f2578063837f3964146105365780638bbefe4b146105495780638da5cb5b1461055e57806395d89b411461057c5780639fc498a71461059157600080fd5b806370a08231146104b5578063715018a6146104e25780637ae2b5c7146104f7578063816395391461051757600080fd5b80633db232ea116101a657806351c6590a1161017557806351c6590a146104365780635c77591b1461044957806362997f8c1461045f57806364b391291461047557806368e979bd1461049f57600080fd5b80633db232ea146103bb57806349bd5a5e146103d55780634f7041a51461040957806351bc3c851461041f57600080fd5b80631694505e116101ed5780631694505e146102d957806318160ddd1461032557806323b872dd1461033b5780632dc0562d1461035b578063313ce5671461038f57600080fd5b806295a1bc1461022957806306fdde03146102525780630902f1ac14610274578063095ea7b3146102a957600080fd5b3661022457005b600080fd5b34801561023557600080fd5b5061023f600d5481565b6040519081526020015b60405180910390f35b34801561025e57600080fd5b506102676106ed565b6040516102499190611b04565b34801561028057600080fd5b5061028961077b565b604080516001600160701b03938416815292909116602083015201610249565b3480156102b557600080fd5b506102c96102c4366004611b67565b61084e565b6040519015158152602001610249565b3480156102e557600080fd5b5061030d7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b039091168152602001610249565b34801561033157600080fd5b5061023f60055481565b34801561034757600080fd5b506102c9610356366004611b93565b610865565b34801561036757600080fd5b5061030d7f0000000000000000000000009423ffa556c9b538c8fd29c939dc4335e172483681565b34801561039b57600080fd5b506004546103a99060ff1681565b60405160ff9091168152602001610249565b3480156103c757600080fd5b506009546102c99060ff1681565b3480156103e157600080fd5b5061030d7f000000000000000000000000b46fc5994a60ab2d8c1496d42ea40a6f04eec5d881565b34801561041557600080fd5b5061023f600a5481565b34801561042b57600080fd5b506104346108c2565b005b610434610444366004611bd4565b610952565b34801561045557600080fd5b5061023f600e5481565b34801561046b57600080fd5b5061023f600c5481565b34801561048157600080fd5b5061048a610b38565b60408051928352602083019190915201610249565b3480156104ab57600080fd5b5061023f600f5481565b3480156104c157600080fd5b5061023f6104d0366004611bed565b60066020526000908152604090205481565b3480156104ee57600080fd5b50610434610ba3565b34801561050357600080fd5b5061023f610512366004611c0a565b610bb7565b34801561052357600080fd5b506009546102c990610100900460ff1681565b610434610544366004611bed565b610bcf565b34801561055557600080fd5b50610434610bfb565b34801561056a57600080fd5b506000546001600160a01b031661030d565b34801561058857600080fd5b50610267610e52565b34801561059d57600080fd5b506104346105ac366004611c3a565b610e5f565b3480156105bd57600080fd5b506102c96105cc366004611b67565b610e7a565b3480156105dd57600080fd5b506104346105ec366004611bd4565b610ebe565b610434610ecb565b34801561060557600080fd5b506102c9610614366004611bed565b60086020526000908152604090205460ff1681565b34801561063557600080fd5b5061023f600b5481565b34801561064b57600080fd5b5061023f61065a366004611c57565b6001600160a01b03918216600090815260076020908152604080832093909416825291909152205490565b610434610693366004611bed565b610ee6565b3480156106a457600080fd5b5061023f610f0f565b3480156106b957600080fd5b506104346106c8366004611bed565b610f48565b3480156106d957600080fd5b506009546102c99062010000900460ff1681565b600280546106fa90611c90565b80601f016020809104026020016040519081016040528092919081815260200182805461072690611c90565b80156107735780601f1061074857610100808354040283529160200191610773565b820191906000526020600020905b81548152906001019060200180831161075657829003601f168201915b505050505081565b6000806000807f000000000000000000000000b46fc5994a60ab2d8c1496d42ea40a6f04eec5d86001600160a01b0316630902f1ac6040518163ffffffff1660e01b8152600401606060405180830381865afa1580156107df573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108039190611ce6565b506009549193509150600090610100900460ff166108215781610823565b825b600954909150600090610100900460ff161561083f5782610841565b835b9196919550909350505050565b600061085b338484610fbe565b5060015b92915050565b60006108728433846110e3565b61087d84848461116f565b826001600160a01b0316846001600160a01b0316600080516020611f04833981519152846040516108b091815260200190565b60405180910390a35060019392505050565b337f0000000000000000000000009423ffa556c9b538c8fd29c939dc4335e17248366001600160a01b0316146109305760405162461bcd60e51b815260206004820152600e60248201526d139bdd08185d5d1a1bdc9a5e995960921b60448201526064015b60405180910390fd5b30600090815260066020526040902054801561094f5761094f8161159f565b50565b61095a611635565b600e81905542600d55306323b872dd61097b6000546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152306024820152604481018490526064016020604051808303816000875af11580156109ce573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f29190611d36565b5060405163095ea7b360e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d1660048201526000196024820152309063095ea7b3906044016020604051808303816000875af1158015610a61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a859190611d36565b507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d719343084600080610acd6000546001600160a01b031690565b426040518863ffffffff1660e01b8152600401610aef96959493929190611d53565b60606040518083038185885af1158015610b0d573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610b329190611d8e565b50505050565b600080600080610b4661077b565b90925090506000610b578284611de8565b6001600160701b031690506000600e54846001600160701b03161115610b9557826001600160701b0316600e54610b8e9190611e0e565b9050610b98565b50805b909590945092505050565b610bab611635565b610bb5600061168f565b565b6000818310610bc65781610bc8565b825b9392505050565b610bd7611635565b6001600160a01b03166000908152600860205260409020805460ff19166001179055565b610c036116df565b60095460ff16610c4a5760405162461bcd60e51b815260206004820152601260248201527159656574206d616368696e652062726f6b6560701b6044820152606401610927565b42600f54600d54610c5b9190611e22565b1115610ca15760405162461bcd60e51b81526020600482015260156024820152741659595d0818dbdbdb191bdddb881b9bdd081b595d605a1b6044820152606401610927565b6000610cab61077b565b509050600e54816001600160701b03161115610de5576000600e54826001600160701b0316610cda9190611e35565b9050610d067f000000000000000000000000b46fc5994a60ab2d8c1496d42ea40a6f04eec5d882611738565b7f000000000000000000000000b46fc5994a60ab2d8c1496d42ea40a6f04eec5d86001600160a01b031663fff6cae96040518163ffffffff1660e01b8152600401600060405180830381600087803b158015610d6157600080fd5b505af1158015610d75573d6000803e3d6000fd5b50505050600080610d8461077b565b604080516001600160701b03888116825284811660208301528316818301526060810187905290519294509092507fda1b10991fe729633c589f95f806d673cd1b168d01e2d98f2671cf27fb33a31b919081900360800190a1505050610e2c565b600e54604080516001600160701b038416815260208101929092527f20fcf48730b1f2d3f43ca33a57cd0df64dcaddcf2f4f8a99f41bcdea315e00d2910160405180910390a15b6000610e3661077b565b506001600160701b0316600e55505042600d55610bb560018055565b600380546106fa90611c90565b610e67611635565b6009805460ff1916911515919091179055565b6000610e8733848461116f565b6040518281526001600160a01b038416903390600080516020611f048339815191529060200160405180910390a350600192915050565b610ec6611635565b600f55565b610ed3611635565b6009805462ff0000191662010000179055565b610eee611635565b6001600160a01b03166000908152600860205260409020805460ff19169055565b600080610f1a61077b565b5090506000600e54826001600160701b0316111561085f57600e54610bc8906001600160701b038416611e35565b610f50611635565b6001600160a01b038116610fb55760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610927565b61094f8161168f565b6001600160a01b0383166110205760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610927565b6001600160a01b0382166110815760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610927565b6001600160a01b0383811660008181526007602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038381166000908152600760209081526040808320938616835292905220546000198114610b3257818110156111625760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610927565b610b328484848403610fbe565b6001600160a01b0383166111d35760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610927565b6001600160a01b0382166112355760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610927565b600081116112975760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610927565b60095462010000900460ff16611301576001600160a01b03831660009081526008602052604090205460ff166113015760405162461bcd60e51b815260206004820152600f60248201526e10d85b89dd081d1c985919481e595d608a1b6044820152606401610927565b60095460009060ff16801561132f57506001600160a01b03841660009081526008602052604090205460ff16155b801561135457506001600160a01b03831660009081526008602052604090205460ff16155b15611534577f000000000000000000000000b46fc5994a60ab2d8c1496d42ea40a6f04eec5d86001600160a01b0316846001600160a01b03161480156113cc57507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b0316836001600160a01b031614155b156113ee576064600a54836113e19190611e48565b6113eb9190611e0e565b90505b7f000000000000000000000000b46fc5994a60ab2d8c1496d42ea40a6f04eec5d86001600160a01b0316836001600160a01b031614801561143857506001600160a01b0384163014155b1561145a576064600b548361144d9190611e48565b6114579190611e0e565b90505b80156114b357306000908152600660205260408120805483929061147f908490611e22565b909155505060405181815230906001600160a01b03861690600080516020611f048339815191529060200160405180910390a35b30600090815260066020526040902054801580159081906114d7575060105460ff16155b801561151457507f000000000000000000000000b46fc5994a60ab2d8c1496d42ea40a6f04eec5d86001600160a01b0316856001600160a01b0316145b156115315761153161152c8561051285600c54610bb7565b61159f565b50505b6001600160a01b0384166000908152600660205260408120805484929061155c908490611e35565b9091555061156c90508183611e35565b6001600160a01b03841660009081526006602052604081208054909190611594908490611e22565b909155505050505050565b6010805460ff1916600117905560006115b9600383611e0e565b905060006115c78284611e35565b9050476115d3826117cb565b60006115df8247611e35565b90506115eb8482611a2d565b60408051858152602081018390527fe74b04c1435e286c6b8eba73f0f16a0a2fcc9d21d879598ecacf17db8c497701910160405180910390a150506010805460ff19169055505050565b6000546001600160a01b03163314610bb55760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610927565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6002600154036117315760405162461bcd60e51b815260206004820152601f60248201527f5265656e7472616e637947756172643a207265656e7472616e742063616c6c006044820152606401610927565b6002600155565b6001600160a01b0382166000908152600660205260408120805461dead92849291611764908490611e35565b90915550506001600160a01b03811660009081526006602052604081208054849290611791908490611e22565b92505081905550806001600160a01b0316836001600160a01b0316600080516020611f04833981519152846040516110d691815260200190565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061180057611800611e5f565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561187e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118a29190611e75565b816001815181106118b5576118b5611e5f565b6001600160a01b0390921660209283029190910190910152476118f9307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d85610fbe565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac9479061194e908690600090879030904290600401611e92565b600060405180830381600087803b15801561196857600080fd5b505af115801561197c573d6000803e3d6000fd5b505050506000600382476119909190611e35565b61199a9190611e0e565b6119a49047611e35565b905060007f0000000000000000000000009423ffa556c9b538c8fd29c939dc4335e17248366001600160a01b03168260405160006040518083038185875af1925050503d8060008114611a13576040519150601f19603f3d011682016040523d82523d6000602084013e611a18565b606091505b5050905080611a2657600080fd5b5050505050565b611a58307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610fbe565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d719823085600080611a9f6000546001600160a01b031690565b426040518863ffffffff1660e01b8152600401611ac196959493929190611d53565b60606040518083038185885af1158015611adf573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611a269190611d8e565b600060208083528351808285015260005b81811015611b3157858101830151858201604001528201611b15565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461094f57600080fd5b60008060408385031215611b7a57600080fd5b8235611b8581611b52565b946020939093013593505050565b600080600060608486031215611ba857600080fd5b8335611bb381611b52565b92506020840135611bc381611b52565b929592945050506040919091013590565b600060208284031215611be657600080fd5b5035919050565b600060208284031215611bff57600080fd5b8135610bc881611b52565b60008060408385031215611c1d57600080fd5b50508035926020909101359150565b801515811461094f57600080fd5b600060208284031215611c4c57600080fd5b8135610bc881611c2c565b60008060408385031215611c6a57600080fd5b8235611c7581611b52565b91506020830135611c8581611b52565b809150509250929050565b600181811c90821680611ca457607f821691505b602082108103611cc457634e487b7160e01b600052602260045260246000fd5b50919050565b80516001600160701b0381168114611ce157600080fd5b919050565b600080600060608486031215611cfb57600080fd5b611d0484611cca565b9250611d1260208501611cca565b9150604084015163ffffffff81168114611d2b57600080fd5b809150509250925092565b600060208284031215611d4857600080fd5b8151610bc881611c2c565b6001600160a01b039687168152602081019590955260408501939093526060840191909152909216608082015260a081019190915260c00190565b600080600060608486031215611da357600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001600160701b0380841680611e0257611e02611dbc565b92169190910492915050565b600082611e1d57611e1d611dbc565b500490565b8082018082111561085f5761085f611dd2565b8181038181111561085f5761085f611dd2565b808202811582820484141761085f5761085f611dd2565b634e487b7160e01b600052603260045260246000fd5b600060208284031215611e8757600080fd5b8151610bc881611b52565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ee25784516001600160a01b031683529383019391830191600101611ebd565b50506001600160a01b0396909616606085015250505060800152939250505056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa26469706673582212204b9fe1e8eb15696ee4f6d3a1aea9d494554db5e4441e998435b64de29a6ea2cd64736f6c63430008130033
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.