Overview
ETH Balance
0 ETH
Eth Value
$0.00More Info
Private Name Tags
ContractCreator
TokenTracker
Latest 25 from a total of 160 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 21106555 | 72 days ago | IN | 0 ETH | 0.00024099 | ||||
Approve | 21038782 | 82 days ago | IN | 0 ETH | 0.00033898 | ||||
Approve | 20702373 | 129 days ago | IN | 0 ETH | 0.00004278 | ||||
Approve | 20701528 | 129 days ago | IN | 0 ETH | 0.00009369 | ||||
Approve | 20684293 | 131 days ago | IN | 0 ETH | 0.00017294 | ||||
Approve | 20684264 | 131 days ago | IN | 0 ETH | 0.0002064 | ||||
Approve | 20680614 | 132 days ago | IN | 0 ETH | 0.00007514 | ||||
Approve | 20680301 | 132 days ago | IN | 0 ETH | 0.00016071 | ||||
Approve | 20680280 | 132 days ago | IN | 0 ETH | 0.00019033 | ||||
Approve | 20680117 | 132 days ago | IN | 0 ETH | 0.00027422 | ||||
Approve | 20679870 | 132 days ago | IN | 0 ETH | 0.00050626 | ||||
Transfer | 20679660 | 132 days ago | IN | 0 ETH | 0.00091393 | ||||
Transfer | 20679654 | 132 days ago | IN | 0 ETH | 0.00112489 | ||||
Approve | 20678753 | 132 days ago | IN | 0 ETH | 0.00043104 | ||||
Approve | 20678751 | 132 days ago | IN | 0 ETH | 0.00044435 | ||||
Approve | 20678743 | 132 days ago | IN | 0 ETH | 0.00048166 | ||||
Approve | 20678732 | 132 days ago | IN | 0 ETH | 0.00050952 | ||||
Approve | 20678725 | 132 days ago | IN | 0 ETH | 0.00047614 | ||||
Approve | 20678712 | 132 days ago | IN | 0 ETH | 0.00046377 | ||||
Approve | 20678438 | 132 days ago | IN | 0 ETH | 0.00061352 | ||||
Approve | 20678437 | 132 days ago | IN | 0 ETH | 0.00038737 | ||||
Approve | 20678437 | 132 days ago | IN | 0 ETH | 0.00060996 | ||||
Approve | 20678431 | 132 days ago | IN | 0 ETH | 0.00036561 | ||||
Approve | 20678426 | 132 days ago | IN | 0 ETH | 0.00038074 | ||||
Approve | 20678421 | 132 days ago | IN | 0 ETH | 0.00080327 |
Latest 25 internal transactions (View All)
Advanced mode:
Parent Transaction Hash | Block |
From
|
To
|
|||
---|---|---|---|---|---|---|
20677907 | 132 days ago | 4 ETH | ||||
20677907 | 132 days ago | 0.00001775 ETH | ||||
20677907 | 132 days ago | 0.00088753 ETH | ||||
20677901 | 132 days ago | 0.002 ETH | ||||
20677901 | 132 days ago | 0.1 ETH | ||||
20677899 | 132 days ago | 0.00314422 ETH | ||||
20677899 | 132 days ago | 0.15721124 ETH | ||||
20677891 | 132 days ago | 0.0007 ETH | ||||
20677891 | 132 days ago | 0.035 ETH | ||||
20677886 | 132 days ago | 0.0030066 ETH | ||||
20677886 | 132 days ago | 0.15033017 ETH | ||||
20677883 | 132 days ago | 0.00289896 ETH | ||||
20677883 | 132 days ago | 0.14494843 ETH | ||||
20677872 | 132 days ago | 0.0012 ETH | ||||
20677872 | 132 days ago | 0.06 ETH | ||||
20677868 | 132 days ago | 0.0008 ETH | ||||
20677868 | 132 days ago | 0.04 ETH | ||||
20677864 | 132 days ago | 0.00262945 ETH | ||||
20677864 | 132 days ago | 0.13147273 ETH | ||||
20677863 | 132 days ago | 0.00262945 ETH | ||||
20677863 | 132 days ago | 0.13147273 ETH | ||||
20677855 | 132 days ago | 0.0006 ETH | ||||
20677855 | 132 days ago | 0.03 ETH | ||||
20677855 | 132 days ago | 0.00251384 ETH | ||||
20677855 | 132 days ago | 0.12569208 ETH |
Loading...
Loading
Contract Source Code Verified (Exact Match)
Contract Name:
MemeCoin
Compiler Version
v0.8.26+commit.8a97fa7a
Contract Source Code (Solidity Multiple files format)
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; import "./IUniswapV2Router.sol"; import "./IUniswapV2Factory.sol"; import "./ERC20.sol"; contract MemeCoin is ERC20 { uint256 public constant TOTAL_SUPPLY = 1000000000 * 10**18; // Total supply tokens = 1bn uint256 public constant TOTAL_BUY_TOKENS = 800000000 * 10**18; // Total tokens to buy = 800mn uint256 public constant LIQUIDITY_TOKENS = 200000000 * 10**18; // Total tokens to for LP = 200mn uint256 public constant BUY_PRICE_DIFFERENCE_PERCENT = 1000; // Difference in buy price as percentage uint256 public constant FEE_PERCENTAGE = 2; // Fee percentage uint256 public constant TARGET_LIQUIDITY = 4 * 10**18; // Target liquidity in ETH, assuming 18 decimals address payable public constant REVENUE_ACCOUNT = payable(0xCDE357ABBdf15Da7CCE4B51CE70a1d0F08DfB782); // Fee collection address IUniswapV2Router public uniswapRouter; address public lpAddress; string public picture; address public admin; bool public listed; uint256 public totalETHBought; // Total ETH paid for tokens buying uint256 public totalTokensBought; // Total tokens bought uint256 private maxWalletAmount; // Total amount of tokens a wallet can hold uint256 public devTax; mapping(address => uint256) public contributions; // Track ETH contributions mapping(address => uint256) public tokens; // Track bought tokens constructor( address _router, address _admin, uint256 _maxWalletAmount, uint256 _devTax, string memory _name, string memory _ticker, string memory _picture ) ERC20(_name, _ticker) { uniswapRouter = IUniswapV2Router(_router); if (_maxWalletAmount == 0) { maxWalletAmount = type(uint256).max;//No Wallet limit } else if(_maxWalletAmount == 1){ maxWalletAmount = (TOTAL_SUPPLY * 5) / 1000;//0.5% Wallet limit } else if(_maxWalletAmount == 2){ maxWalletAmount = TOTAL_SUPPLY * 1 / 100; //1% Wallet limit } require(_maxWalletAmount == 0 || _maxWalletAmount == 1 || _maxWalletAmount == 2,'Invalid Max Wallet Amount'); picture = _picture; admin = _admin; devTax = _devTax; listed = false; totalETHBought = 0; _mint(address(this), TOTAL_SUPPLY); } // Override the _transfer function to enforce max wallet amount per transfer function _transfer(address sender, address recipient, uint256 amount) internal override { uint256 tax; address _factory = uniswapRouter.factory(); address _weth = uniswapRouter.WETH(); address lpToken = IUniswapV2Factory(_factory).getPair(address(this), _weth); if(listed){ updateMaxWalletAmount(lpToken,_weth); if (recipient != admin && recipient != address(lpToken) && recipient != address(0x000000000000000000000000000000000000dEaD)) { if (devTax > 0) { tax = amount * devTax / 100; amount = amount - tax; super._transfer(sender, admin, tax); } require(balanceOf(address(recipient)) + amount <= maxWalletAmount, "Transfer amount exceeds the max wallet amount"); } super._transfer(sender, recipient, amount); }else{ if (recipient != admin && recipient != address(this) && recipient != lpToken) { if (devTax > 0) { tax = amount * devTax / 100; amount = amount - tax; super._transfer(sender, admin, tax); } require(balanceOf(address(recipient)) + amount <= maxWalletAmount, "Transfer amount exceeds the max wallet amount"); } super._transfer(sender, recipient, amount); } } function buyTokens(address buyer,uint256 slippageAmount) external payable { require(!listed, "Liquidity is already added to Uniswap"); require(msg.value > 0, "Send ETH to buy tokens"); uint256 fee = msg.value * FEE_PERCENTAGE / 100; uint256 ethAmount = msg.value - fee; uint256 tokenAmount = calculateTokenAmount(ethAmount); uint256 currentPrice = tokenAmount/ethAmount; uint256 finalprice; if (_getRemainingAmount() == msg.value) { finalprice = currentPrice; if(tokenAmount > (TOTAL_BUY_TOKENS - totalTokensBought)){ tokenAmount = TOTAL_BUY_TOKENS - totalTokensBought; } } totalTokensBought += tokenAmount; contributions[buyer] += ethAmount; if(finalprice == 0){ require(tokenAmount >= slippageAmount, "Slippage Amount Restriction"); } if(devTax > 0 && buyer != admin){ uint256 tax = tokenAmount * devTax / 100; uint256 buyerTokens = tokenAmount - tax; tokens[buyer] += buyerTokens; }else{ tokens[buyer] += tokenAmount; } totalETHBought += ethAmount; _transfer(address(this), buyer, tokenAmount); bool success; (success, ) = REVENUE_ACCOUNT.call{value: fee}(""); require(success, "Transfer failed"); if (address(this).balance >= TARGET_LIQUIDITY && !listed) { _addLiquidity(); _burnRemainingTokens(); } } function sellTokens(address seller,uint256 tokenAmount) external { require(!listed, "Liquidity is already added to Uniswap"); require(tokenAmount > 0, "Amount must be greater than 0"); uint256 ethAmount = calculateEthAmount(seller,tokenAmount); if (balanceOf(address(this)) == tokenAmount) { ethAmount = address(this).balance; contributions[seller] = 0; totalETHBought = 0; } else { contributions[seller] -= ethAmount; totalETHBought -= ethAmount; } uint256 fee = ethAmount * FEE_PERCENTAGE / 100; tokens[seller] -= tokenAmount; totalTokensBought -= tokenAmount; _transfer(seller, address(this), tokenAmount); bool success; (success, ) = seller.call{value: ethAmount - fee}(""); require(success, "Transfer failed"); (success, ) = REVENUE_ACCOUNT.call{value: fee}(""); require(success, "Transfer failed"); } function getRemainingAmount() public view returns (uint256) { require(TARGET_LIQUIDITY > address(this).balance, "Liquidity target exceeded"); return _getRemainingAmount(); } function slippage(uint256 ethAmount,uint256 slippageAllowance) public view returns(uint256) { uint256 fee = ethAmount * FEE_PERCENTAGE / 100; ethAmount = ethAmount - fee; uint256 slippageAmount = calculateTokenAmount(ethAmount); if (devTax > 0) { uint256 tax = slippageAmount * devTax / 100; slippageAmount = slippageAmount - tax; } slippageAllowance = slippageAmount * slippageAllowance / 100; slippageAmount = slippageAmount - slippageAllowance; return slippageAmount; } function calculateTokenAmount(uint256 ethAmount) public view returns (uint256) { require(totalETHBought + ethAmount <= TARGET_LIQUIDITY, "Liquidity target exceeded"); uint256 initialTokenPrice = _initialTokenPrice(); uint256 tokenPrice = initialTokenPrice + ((initialTokenPrice * BUY_PRICE_DIFFERENCE_PERCENT / 100) * (totalETHBought + (ethAmount / 6)) / TARGET_LIQUIDITY); return ethAmount * 10**18 / tokenPrice; } function calculateEthAmount(address user,uint256 tokenAmount) public view returns (uint256) { uint256 userTokens = tokens[user]; require(userTokens >= tokenAmount, "Insufficient user token balance"); return contributions[user] * tokenAmount / userTokens; } function _addLiquidity() internal { listed = true; _approve(address(this), address(uniswapRouter), LIQUIDITY_TOKENS); uniswapRouter.addLiquidityETH{ value: address(this).balance }( address(this), LIQUIDITY_TOKENS, 0, 0, address(this), block.timestamp ); address _factory = uniswapRouter.factory(); address _weth = uniswapRouter.WETH(); //Get LP token address and Burn LP address lpToken = IUniswapV2Factory(_factory).getPair(address(this),_weth); uint256 amount = IERC20(lpToken).balanceOf(address(this)); //Burn LP IERC20(lpToken).transfer(address(0x000000000000000000000000000000000000dEaD),amount); } function _burnRemainingTokens() internal { uint256 amount = IERC20(address(this)).balanceOf(address(this)); //Burn Remaining Tokens IERC20(address(this)).transfer(address(0x000000000000000000000000000000000000dEaD),amount); } function updateMaxWalletAmount(address _lpToken,address _weth) internal { if(maxWalletAmount == type(uint256).max) return; uint256 amount = IERC20(_weth).balanceOf(address(_lpToken)); if (amount >= 6 ether) { maxWalletAmount = type(uint256).max; } } function _getRemainingAmount() internal view returns (uint256) { return (TARGET_LIQUIDITY - totalETHBought) * 100 / (100 - FEE_PERCENTAGE); } // Get initial ETH normalized price per token function _initialTokenPrice() internal pure returns (uint256){ return TARGET_LIQUIDITY * 10**18 / ((TOTAL_BUY_TOKENS * BUY_PRICE_DIFFERENCE_PERCENT) / 375); } }
// 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.9.0) (token/ERC20/ERC20.sol) pragma solidity ^0.8.0; import "./IERC20.sol"; import "./IERC20Metadata.sol"; import "./Context.sol"; /** * @dev Implementation of the {IERC20} interface. * * This implementation is agnostic to the way tokens are created. This means * that a supply mechanism has to be added in a derived contract using {_mint}. * For a generic mechanism see {ERC20PresetMinterPauser}. * * TIP: For a detailed writeup see our guide * https://forum.openzeppelin.com/t/how-to-implement-erc20-supply-mechanisms/226[How * to implement supply mechanisms]. * * The default value of {decimals} is 18. To change this, you should override * this function so it returns a different value. * * We have followed general OpenZeppelin Contracts guidelines: functions revert * instead returning `false` on failure. This behavior is nonetheless * conventional and does not conflict with the expectations of ERC20 * applications. * * Additionally, an {Approval} event is emitted on calls to {transferFrom}. * This allows applications to reconstruct the allowance for all accounts just * by listening to said events. Other implementations of the EIP may not emit * these events, as it isn't required by the specification. * * Finally, the non-standard {decreaseAllowance} and {increaseAllowance} * functions have been added to mitigate the well-known issues around setting * allowances. See {IERC20-approve}. */ contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; /** * @dev Sets the values for {name} and {symbol}. * * All two of these values are immutable: they can only be set once during * construction. */ constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } /** * @dev Returns the name of the token. */ function name() public view virtual override returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view virtual override returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5.05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. This is the default value returned by this function, unless * it's overridden. * * NOTE: This information is only used for _display_ purposes: it in * no way affects any of the arithmetic of the contract, including * {IERC20-balanceOf} and {IERC20-transfer}. */ function decimals() public view virtual override returns (uint8) { return 18; } /** * @dev See {IERC20-totalSupply}. */ function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } /** * @dev See {IERC20-balanceOf}. */ function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } /** * @dev See {IERC20-transfer}. * * Requirements: * * - `to` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address to, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _transfer(owner, to, amount); return true; } /** * @dev See {IERC20-allowance}. */ function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {IERC20-approve}. * * NOTE: If `amount` is the maximum `uint256`, the allowance is not updated on * `transferFrom`. This is semantically equivalent to an infinite approval. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _approve(owner, spender, amount); return true; } /** * @dev See {IERC20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {ERC20}. * * NOTE: Does not update the allowance if the current allowance * is the maximum `uint256`. * * Requirements: * * - `from` and `to` cannot be the zero address. * - `from` must have a balance of at least `amount`. * - the caller must have allowance for ``from``'s tokens of at least * `amount`. */ function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) { address spender = _msgSender(); _spendAllowance(from, spender, amount); _transfer(from, to, amount); return true; } /** * @dev Atomically increases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { address owner = _msgSender(); _approve(owner, spender, allowance(owner, spender) + addedValue); return true; } /** * @dev Atomically decreases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IERC20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. * - `spender` must have allowance for the caller of at least * `subtractedValue`. */ function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { address owner = _msgSender(); uint256 currentAllowance = allowance(owner, spender); require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(owner, spender, currentAllowance - subtractedValue); } return true; } /** * @dev Moves `amount` of tokens from `from` to `to`. * * This internal function is equivalent to {transfer}, and can be used to * e.g. implement automatic token fees, slashing mechanisms, etc. * * Emits a {Transfer} event. * * Requirements: * * - `from` cannot be the zero address. * - `to` cannot be the zero address. * - `from` must have a balance of at least `amount`. */ function _transfer(address from, address to, uint256 amount) internal virtual { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(from, to, amount); uint256 fromBalance = _balances[from]; require(fromBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[from] = fromBalance - amount; // Overflow not possible: the sum of all balances is capped by totalSupply, and the sum is preserved by // decrementing then incrementing. _balances[to] += amount; } emit Transfer(from, to, amount); _afterTokenTransfer(from, to, amount); } /** @dev Creates `amount` tokens and assigns them to `account`, increasing * the total supply. * * Emits a {Transfer} event with `from` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. */ function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; unchecked { // Overflow not possible: balance + amount is at most totalSupply + amount, which is checked above. _balances[account] += amount; } emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } /** * @dev Destroys `amount` tokens from `account`, reducing the * total supply. * * Emits a {Transfer} event with `to` set to the zero address. * * Requirements: * * - `account` cannot be the zero address. * - `account` must have at least `amount` tokens. */ function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; // Overflow not possible: amount <= accountBalance <= totalSupply. _totalSupply -= amount; } emit Transfer(account, address(0), amount); _afterTokenTransfer(account, address(0), amount); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens. * * This internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `owner` cannot be the zero address. * - `spender` cannot be the zero address. */ function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } /** * @dev Updates `owner` s allowance for `spender` based on spent `amount`. * * Does not update the allowance amount in case of infinite allowance. * Revert if not enough allowance is available. * * Might emit an {Approval} event. */ function _spendAllowance(address owner, address spender, uint256 amount) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(owner, spender, currentAllowance - amount); } } } /** * @dev Hook that is called before any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * will be transferred to `to`. * - when `from` is zero, `amount` tokens will be minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens will be burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {} /** * @dev Hook that is called after any transfer of tokens. This includes * minting and burning. * * Calling conditions: * * - when `from` and `to` are both non-zero, `amount` of ``from``'s tokens * has been transferred to `to`. * - when `from` is zero, `amount` tokens have been minted for `to`. * - when `to` is zero, `amount` of ``from``'s tokens have been burned. * - `from` and `to` are never both zero. * * To learn more about hooks, head to xref:ROOT:extending-contracts.adoc#using-hooks[Using Hooks]. */ function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {} }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts (last updated v4.9.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); }
// SPDX-License-Identifier: MIT // OpenZeppelin Contracts v4.4.1 (token/ERC20/extensions/IERC20Metadata.sol) pragma solidity ^0.8.0; import "./IERC20.sol"; /** * @dev Interface for the optional metadata functions from the ERC20 standard. * * _Available since v4.1._ */ interface IERC20Metadata is IERC20 { /** * @dev Returns the name of the token. */ function name() external view returns (string memory); /** * @dev Returns the symbol of the token. */ function symbol() external view returns (string memory); /** * @dev Returns the decimals places of the token. */ function decimals() external view returns (uint8); }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; interface IUniswapV2Factory { 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); }
// SPDX-License-Identifier: MIT pragma solidity ^0.8.0; interface IUniswapV2Router { function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); 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 getAmountsOut(uint256 amountIn, address[] memory path) external view returns (uint256[] memory amounts); function factory() external pure returns (address); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_router","type":"address"},{"internalType":"address","name":"_admin","type":"address"},{"internalType":"uint256","name":"_maxWalletAmount","type":"uint256"},{"internalType":"uint256","name":"_devTax","type":"uint256"},{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_ticker","type":"string"},{"internalType":"string","name":"_picture","type":"string"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"BUY_PRICE_DIFFERENCE_PERCENT","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"FEE_PERCENTAGE","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"LIQUIDITY_TOKENS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"REVENUE_ACCOUNT","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TARGET_LIQUIDITY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOTAL_BUY_TOKENS","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"TOTAL_SUPPLY","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"admin","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"buyer","type":"address"},{"internalType":"uint256","name":"slippageAmount","type":"uint256"}],"name":"buyTokens","outputs":[],"stateMutability":"payable","type":"function"},{"inputs":[{"internalType":"address","name":"user","type":"address"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"}],"name":"calculateEthAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"ethAmount","type":"uint256"}],"name":"calculateTokenAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"contributions","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"devTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getRemainingAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"listed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"lpAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"picture","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"seller","type":"address"},{"internalType":"uint256","name":"tokenAmount","type":"uint256"}],"name":"sellTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"ethAmount","type":"uint256"},{"internalType":"uint256","name":"slippageAllowance","type":"uint256"}],"name":"slippage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"tokens","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalETHBought","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalTokensBought","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapRouter","outputs":[{"internalType":"contract IUniswapV2Router","name":"","type":"address"}],"stateMutability":"view","type":"function"}]
Contract Creation Code
608060405234801561000f575f80fd5b506040516124b43803806124b483398101604081905261002e91610312565b8282600361003c8382610459565b5060046100498282610459565b5050600580546001600160a01b0319166001600160a01b038a16179055505f859003610079575f19600b556100dc565b846001036100ad576103e861009b6b033b2e3c9fd0803ce80000006005610527565b6100a59190610544565b600b556100dc565b846002036100dc5760646100ce6b033b2e3c9fd0803ce80000006001610527565b6100d89190610544565b600b555b8415806100e95750846001145b806100f45750846002145b6101455760405162461bcd60e51b815260206004820152601960248201527f496e76616c6964204d61782057616c6c657420416d6f756e740000000000000060448201526064015b60405180910390fd5b60076101518282610459565b5060088054600c8690556001600160a81b0319166001600160a01b0388161790555f60095561018c306b033b2e3c9fd0803ce8000000610198565b50505050505050610576565b6001600160a01b0382166101ee5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640161013c565b8060025f8282546101ff9190610563565b90915550506001600160a01b0382165f81815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b80516001600160a01b0381168114610270575f80fd5b919050565b634e487b7160e01b5f52604160045260245ffd5b5f82601f830112610298575f80fd5b81516001600160401b038111156102b1576102b1610275565b604051601f8201601f19908116603f011681016001600160401b03811182821017156102df576102df610275565b6040528181528382016020018510156102f6575f80fd5b8160208501602083015e5f918101602001919091529392505050565b5f805f805f805f60e0888a031215610328575f80fd5b6103318861025a565b965061033f6020890161025a565b604089015160608a015160808b015192985090965094506001600160401b03811115610369575f80fd5b6103758a828b01610289565b60a08a015190945090506001600160401b03811115610392575f80fd5b61039e8a828b01610289565b60c08a015190935090506001600160401b038111156103bb575f80fd5b6103c78a828b01610289565b91505092959891949750929550565b600181811c908216806103ea57607f821691505b60208210810361040857634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111561025557805f5260205f20601f840160051c810160208510156104335750805b601f840160051c820191505b81811015610452575f815560010161043f565b5050505050565b81516001600160401b0381111561047257610472610275565b6104868161048084546103d6565b8461040e565b6020601f8211600181146104b8575f83156104a15750848201515b5f19600385901b1c1916600184901b178455610452565b5f84815260208120601f198516915b828110156104e757878501518255602094850194600190920191016104c7565b508482101561050457868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b634e487b7160e01b5f52601160045260245ffd5b808202811582820484141761053e5761053e610513565b92915050565b5f8261055e57634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561053e5761053e610513565b611f31806105835f395ff3fe6080604052600436106101f0575f3560e01c8063735de9f711610108578063b198155d1161009d578063dabaae111161006d578063dabaae1114610578578063dd62ed3e1461058c578063e4860339146105ab578063ee662922146105d6578063f851a440146105f4575f80fd5b8063b198155d14610506578063baa9e53114610525578063c464fe651461053a578063cf602ebc14610559575f80fd5b80639b4dc8cc116100d85780639b4dc8cc1461048a578063a24bcf46146104a9578063a457c2d7146104c8578063a9059cbb146104e7575f80fd5b8063735de9f7146104245780637b1e9cf814610443578063902d55a51461045757806395d89b4114610476575f80fd5b8063313ce567116101895780635c95eb52116101595780635c95eb5214610396578063665c6de9146103b15780636fc50526146103c657806370a08231146103db57806372e1a09a1461040f575f80fd5b8063313ce56714610312578063395093511461032d5780633fccbdff1461034c57806342e94c901461036b575f80fd5b8063095ea7b3116101c4578063095ea7b3146102905780631747a57b146102bf57806318160ddd146102df57806323b872dd146102f3575f80fd5b80620b46f8146101f457806306fdde031461021b5780630752881a1461023c57806308f59fbc14610251575b5f80fd5b3480156101ff575f80fd5b50610208600281565b6040519081526020015b60405180910390f35b348015610226575f80fd5b5061022f610613565b6040516102129190611bd8565b61024f61024a366004611c24565b6106a3565b005b34801561025c575f80fd5b5061027873cde357abbdf15da7cce4b51ce70a1d0f08dfb78281565b6040516001600160a01b039091168152602001610212565b34801561029b575f80fd5b506102af6102aa366004611c24565b6109d6565b6040519015158152602001610212565b3480156102ca575f80fd5b506008546102af90600160a01b900460ff1681565b3480156102ea575f80fd5b50600254610208565b3480156102fe575f80fd5b506102af61030d366004611c4e565b6109ef565b34801561031d575f80fd5b5060405160128152602001610212565b348015610338575f80fd5b506102af610347366004611c24565b610a12565b348015610357575f80fd5b50610208610366366004611c24565b610a33565b348015610376575f80fd5b50610208610385366004611c8c565b600d6020525f908152604090205481565b3480156103a1575f80fd5b50610208673782dace9d90000081565b3480156103bc575f80fd5b50610208600c5481565b3480156103d1575f80fd5b506102086103e881565b3480156103e6575f80fd5b506102086103f5366004611c8c565b6001600160a01b03165f9081526020819052604090205490565b34801561041a575f80fd5b5061020860095481565b34801561042f575f80fd5b50600554610278906001600160a01b031681565b34801561044e575f80fd5b5061022f610ad2565b348015610462575f80fd5b506102086b033b2e3c9fd0803ce800000081565b348015610481575f80fd5b5061022f610b5e565b348015610495575f80fd5b50600654610278906001600160a01b031681565b3480156104b4575f80fd5b506102086104c3366004611cae565b610b6d565b3480156104d3575f80fd5b506102af6104e2366004611c24565b610c47565b3480156104f2575f80fd5b506102af610501366004611c24565b610cc1565b348015610511575f80fd5b506102086b0295be96e64066972000000081565b348015610530575f80fd5b50610208600a5481565b348015610545575f80fd5b5061024f610554366004611c24565b610cce565b348015610564575f80fd5b50610208610573366004611cc5565b610f37565b348015610583575f80fd5b50610208610fc9565b348015610597575f80fd5b506102086105a6366004611ce5565b61102a565b3480156105b6575f80fd5b506102086105c5366004611c8c565b600e6020525f908152604090205481565b3480156105e1575f80fd5b506102086aa56fa5b99019a5c800000081565b3480156105ff575f80fd5b50600854610278906001600160a01b031681565b60606003805461062290611d1c565b80601f016020809104026020016040519081016040528092919081815260200182805461064e90611d1c565b80156106995780601f1061067057610100808354040283529160200191610699565b820191905f5260205f20905b81548152906001019060200180831161067c57829003601f168201915b5050505050905090565b600854600160a01b900460ff16156106d65760405162461bcd60e51b81526004016106cd90611d54565b60405180910390fd5b5f341161071e5760405162461bcd60e51b815260206004820152601660248201527553656e642045544820746f2062757920746f6b656e7360501b60448201526064016106cd565b5f606461072c600234611dad565b6107369190611dc4565b90505f6107438234611de3565b90505f61074f82610b6d565b90505f61075c8383611dc4565b90505f34610768611054565b036107ac5750600a548190610789906b0295be96e640669720000000611de3565b8311156107ac57600a546107a9906b0295be96e640669720000000611de3565b92505b82600a5f8282546107bd9190611df6565b90915550506001600160a01b0387165f908152600d6020526040812080548692906107e9908490611df6565b90915550505f81900361084657858310156108465760405162461bcd60e51b815260206004820152601b60248201527f536c69707061676520416d6f756e74205265737472696374696f6e000000000060448201526064016106cd565b5f600c5411801561086557506008546001600160a01b03888116911614155b156108cb575f6064600c548561087b9190611dad565b6108859190611dc4565b90505f6108928286611de3565b6001600160a01b038a165f908152600e60205260408120805492935083929091906108be908490611df6565b909155506108f892505050565b6001600160a01b0387165f908152600e6020526040812080548592906108f2908490611df6565b90915550505b8360095f8282546109099190611df6565b9091555061091a905030888561108b565b6040515f9073cde357abbdf15da7cce4b51ce70a1d0f08dfb7829087908381818185875af1925050503d805f811461096d576040519150601f19603f3d011682016040523d82523d5f602084013e610972565b606091505b505080915050806109955760405162461bcd60e51b81526004016106cd90611e09565b673782dace9d90000047101580156109b75750600854600160a01b900460ff16155b156109cc576109c46113ea565b6109cc6116f9565b5050505050505050565b5f336109e38185856117c6565b60019150505b92915050565b5f336109fc8582856118e9565b610a0785858561108b565b506001949350505050565b5f336109e3818585610a24838361102a565b610a2e9190611df6565b6117c6565b6001600160a01b0382165f908152600e602052604081205482811015610a9b5760405162461bcd60e51b815260206004820152601f60248201527f496e73756666696369656e74207573657220746f6b656e2062616c616e63650060448201526064016106cd565b6001600160a01b0384165f908152600d60205260409020548190610ac0908590611dad565b610aca9190611dc4565b949350505050565b60078054610adf90611d1c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0b90611d1c565b8015610b565780601f10610b2d57610100808354040283529160200191610b56565b820191905f5260205f20905b815481529060010190602001808311610b3957829003601f168201915b505050505081565b60606004805461062290611d1c565b5f673782dace9d90000082600954610b859190611df6565b1115610bcf5760405162461bcd60e51b8152602060048201526019602482015278131a5c5d5a591a5d1e481d185c99d95d08195e18d959591959603a1b60448201526064016106cd565b5f610bd8611961565b90505f673782dace9d900000610bef600686611dc4565b600954610bfc9190611df6565b6064610c0a6103e886611dad565b610c149190611dc4565b610c1e9190611dad565b610c289190611dc4565b610c329083611df6565b905080610ac085670de0b6b3a7640000611dad565b5f3381610c54828661102a565b905083811015610cb45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016106cd565b610a0782868684036117c6565b5f336109e381858561108b565b600854600160a01b900460ff1615610cf85760405162461bcd60e51b81526004016106cd90611d54565b5f8111610d475760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e203000000060448201526064016106cd565b5f610d528383610a33565b305f90815260208190526040902054909150829003610d8f57506001600160a01b0382165f908152600d6020526040812081905560095547610dd4565b6001600160a01b0383165f908152600d602052604081208054839290610db6908490611de3565b925050819055508060095f828254610dce9190611de3565b90915550505b5f6064610de2600284611dad565b610dec9190611dc4565b6001600160a01b0385165f908152600e6020526040812080549293508592909190610e18908490611de3565b9250508190555082600a5f828254610e309190611de3565b90915550610e41905084308561108b565b5f6001600160a01b038516610e568385611de3565b6040515f81818185875af1925050503d805f8114610e8f576040519150601f19603f3d011682016040523d82523d5f602084013e610e94565b606091505b50508091505080610eb75760405162461bcd60e51b81526004016106cd90611e09565b60405173cde357abbdf15da7cce4b51ce70a1d0f08dfb7829083905f81818185875af1925050503d805f8114610f08576040519150601f19603f3d011682016040523d82523d5f602084013e610f0d565b606091505b50508091505080610f305760405162461bcd60e51b81526004016106cd90611e09565b5050505050565b5f806064610f46600286611dad565b610f509190611dc4565b9050610f5c8185611de3565b93505f610f6885610b6d565b600c5490915015610f9e575f6064600c5483610f849190611dad565b610f8e9190611dc4565b9050610f9a8183611de3565b9150505b6064610faa8583611dad565b610fb49190611dc4565b9350610fc08482611de3565b95945050505050565b5f47673782dace9d9000001161101d5760405162461bcd60e51b8152602060048201526019602482015278131a5c5d5a591a5d1e481d185c99d95d08195e18d959591959603a1b60448201526064016106cd565b611025611054565b905090565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b5f61106160026064611de3565b60095461107690673782dace9d900000611de3565b611081906064611dad565b6110259190611dc4565b5f8060055f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111019190611e32565b90505f60055f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111789190611e32565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa1580156111c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111eb9190611e32565b600854909150600160a01b900460ff16156112f95761120a81836119a1565b6008546001600160a01b0387811691161480159061123a5750806001600160a01b0316866001600160a01b031614155b801561125157506001600160a01b03861661dead14155b156112e957600c541561129f576064600c548661126e9190611dad565b6112789190611dc4565b93506112848486611de3565b60085490955061129f9088906001600160a01b031686611a36565b600b54856112c1886001600160a01b03165f9081526020819052604090205490565b6112cb9190611df6565b11156112e95760405162461bcd60e51b81526004016106cd90611e4d565b6112f4878787611a36565b6113e1565b6008546001600160a01b0387811691161480159061132057506001600160a01b0386163014155b801561133e5750806001600160a01b0316866001600160a01b031614155b156113d657600c541561138c576064600c548661135b9190611dad565b6113659190611dc4565b93506113718486611de3565b60085490955061138c9088906001600160a01b031686611a36565b600b54856113ae886001600160a01b03165f9081526020819052604090205490565b6113b89190611df6565b11156113d65760405162461bcd60e51b81526004016106cd90611e4d565b6113e1878787611a36565b50505050505050565b6008805460ff60a01b1916600160a01b1790556005546114209030906001600160a01b03166aa56fa5b99019a5c80000006117c6565b60055460405163f305d71960e01b815230600482018190526aa56fa5b99019a5c800000060248301525f60448301819052606483015260848201524260a48201526001600160a01b039091169063f305d71990479060c40160606040518083038185885af1158015611494573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906114b99190611e9a565b5050505f60055f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561150d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115319190611e32565b90505f60055f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611584573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115a89190611e32565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa1580156115f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061161b9190611e32565b6040516370a0823160e01b81523060048201529091505f906001600160a01b038316906370a0823190602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190611ec5565b60405163a9059cbb60e01b815261dead6004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303815f875af11580156116d5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f309190611edc565b6040516370a0823160e01b815230600482018190525f916370a0823190602401602060405180830381865afa158015611734573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117589190611ec5565b60405163a9059cbb60e01b815261dead600482015260248101829052909150309063a9059cbb906044016020604051808303815f875af115801561179e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117c29190611edc565b5050565b6001600160a01b0383166118285760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106cd565b6001600160a01b0382166118895760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106cd565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6118f4848461102a565b90505f19811461195b578181101561194e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106cd565b61195b84848484036117c6565b50505050565b5f61017761197d6103e86b0295be96e640669720000000611dad565b6119879190611dc4565b611081673782dace9d900000670de0b6b3a7640000611dad565b5f19600b54036119af575050565b6040516370a0823160e01b81526001600160a01b0383811660048301525f91908316906370a0823190602401602060405180830381865afa1580156119f6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a1a9190611ec5565b90506753444835ec5800008110611a31575f19600b555b505050565b6001600160a01b038316611a9a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106cd565b6001600160a01b038216611afc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106cd565b6001600160a01b0383165f9081526020819052604090205481811015611b735760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016106cd565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361195b565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114611c21575f80fd5b50565b5f8060408385031215611c35575f80fd5b8235611c4081611c0d565b946020939093013593505050565b5f805f60608486031215611c60575f80fd5b8335611c6b81611c0d565b92506020840135611c7b81611c0d565b929592945050506040919091013590565b5f60208284031215611c9c575f80fd5b8135611ca781611c0d565b9392505050565b5f60208284031215611cbe575f80fd5b5035919050565b5f8060408385031215611cd6575f80fd5b50508035926020909101359150565b5f8060408385031215611cf6575f80fd5b8235611d0181611c0d565b91506020830135611d1181611c0d565b809150509250929050565b600181811c90821680611d3057607f821691505b602082108103611d4e57634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f4c697175696469747920697320616c726561647920616464656420746f20556e604082015264069737761760dc1b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176109e9576109e9611d99565b5f82611dde57634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156109e9576109e9611d99565b808201808211156109e9576109e9611d99565b6020808252600f908201526e151c985b9cd9995c8819985a5b1959608a1b604082015260600190565b5f60208284031215611e42575f80fd5b8151611ca781611c0d565b6020808252602d908201527f5472616e7366657220616d6f756e74206578636565647320746865206d61782060408201526c1dd85b1b195d08185b5bdd5b9d609a1b606082015260800190565b5f805f60608486031215611eac575f80fd5b5050815160208301516040909301519094929350919050565b5f60208284031215611ed5575f80fd5b5051919050565b5f60208284031215611eec575f80fd5b81518015158114611ca7575f80fdfea2646970667358221220e404faaa8933bf117889d60deebde9d232ae8347977056af830c216249634cf464736f6c634300081a00330000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000002ac43aef3fbedcee7910da41db6b3f2568d08e500000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000000164f72646572206f6620746865205768697465204f776c0000000000000000000000000000000000000000000000000000000000000000000000000000000000034f574c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005368747470733a2f2f62632e62756c6c612e66756e2f75706c6f6164732f313732353435353836323237382d31626238363235392d626664352d343866322d396333662d3334303833343538383438382e6a706700000000000000000000000000
Deployed Bytecode
0x6080604052600436106101f0575f3560e01c8063735de9f711610108578063b198155d1161009d578063dabaae111161006d578063dabaae1114610578578063dd62ed3e1461058c578063e4860339146105ab578063ee662922146105d6578063f851a440146105f4575f80fd5b8063b198155d14610506578063baa9e53114610525578063c464fe651461053a578063cf602ebc14610559575f80fd5b80639b4dc8cc116100d85780639b4dc8cc1461048a578063a24bcf46146104a9578063a457c2d7146104c8578063a9059cbb146104e7575f80fd5b8063735de9f7146104245780637b1e9cf814610443578063902d55a51461045757806395d89b4114610476575f80fd5b8063313ce567116101895780635c95eb52116101595780635c95eb5214610396578063665c6de9146103b15780636fc50526146103c657806370a08231146103db57806372e1a09a1461040f575f80fd5b8063313ce56714610312578063395093511461032d5780633fccbdff1461034c57806342e94c901461036b575f80fd5b8063095ea7b3116101c4578063095ea7b3146102905780631747a57b146102bf57806318160ddd146102df57806323b872dd146102f3575f80fd5b80620b46f8146101f457806306fdde031461021b5780630752881a1461023c57806308f59fbc14610251575b5f80fd5b3480156101ff575f80fd5b50610208600281565b6040519081526020015b60405180910390f35b348015610226575f80fd5b5061022f610613565b6040516102129190611bd8565b61024f61024a366004611c24565b6106a3565b005b34801561025c575f80fd5b5061027873cde357abbdf15da7cce4b51ce70a1d0f08dfb78281565b6040516001600160a01b039091168152602001610212565b34801561029b575f80fd5b506102af6102aa366004611c24565b6109d6565b6040519015158152602001610212565b3480156102ca575f80fd5b506008546102af90600160a01b900460ff1681565b3480156102ea575f80fd5b50600254610208565b3480156102fe575f80fd5b506102af61030d366004611c4e565b6109ef565b34801561031d575f80fd5b5060405160128152602001610212565b348015610338575f80fd5b506102af610347366004611c24565b610a12565b348015610357575f80fd5b50610208610366366004611c24565b610a33565b348015610376575f80fd5b50610208610385366004611c8c565b600d6020525f908152604090205481565b3480156103a1575f80fd5b50610208673782dace9d90000081565b3480156103bc575f80fd5b50610208600c5481565b3480156103d1575f80fd5b506102086103e881565b3480156103e6575f80fd5b506102086103f5366004611c8c565b6001600160a01b03165f9081526020819052604090205490565b34801561041a575f80fd5b5061020860095481565b34801561042f575f80fd5b50600554610278906001600160a01b031681565b34801561044e575f80fd5b5061022f610ad2565b348015610462575f80fd5b506102086b033b2e3c9fd0803ce800000081565b348015610481575f80fd5b5061022f610b5e565b348015610495575f80fd5b50600654610278906001600160a01b031681565b3480156104b4575f80fd5b506102086104c3366004611cae565b610b6d565b3480156104d3575f80fd5b506102af6104e2366004611c24565b610c47565b3480156104f2575f80fd5b506102af610501366004611c24565b610cc1565b348015610511575f80fd5b506102086b0295be96e64066972000000081565b348015610530575f80fd5b50610208600a5481565b348015610545575f80fd5b5061024f610554366004611c24565b610cce565b348015610564575f80fd5b50610208610573366004611cc5565b610f37565b348015610583575f80fd5b50610208610fc9565b348015610597575f80fd5b506102086105a6366004611ce5565b61102a565b3480156105b6575f80fd5b506102086105c5366004611c8c565b600e6020525f908152604090205481565b3480156105e1575f80fd5b506102086aa56fa5b99019a5c800000081565b3480156105ff575f80fd5b50600854610278906001600160a01b031681565b60606003805461062290611d1c565b80601f016020809104026020016040519081016040528092919081815260200182805461064e90611d1c565b80156106995780601f1061067057610100808354040283529160200191610699565b820191905f5260205f20905b81548152906001019060200180831161067c57829003601f168201915b5050505050905090565b600854600160a01b900460ff16156106d65760405162461bcd60e51b81526004016106cd90611d54565b60405180910390fd5b5f341161071e5760405162461bcd60e51b815260206004820152601660248201527553656e642045544820746f2062757920746f6b656e7360501b60448201526064016106cd565b5f606461072c600234611dad565b6107369190611dc4565b90505f6107438234611de3565b90505f61074f82610b6d565b90505f61075c8383611dc4565b90505f34610768611054565b036107ac5750600a548190610789906b0295be96e640669720000000611de3565b8311156107ac57600a546107a9906b0295be96e640669720000000611de3565b92505b82600a5f8282546107bd9190611df6565b90915550506001600160a01b0387165f908152600d6020526040812080548692906107e9908490611df6565b90915550505f81900361084657858310156108465760405162461bcd60e51b815260206004820152601b60248201527f536c69707061676520416d6f756e74205265737472696374696f6e000000000060448201526064016106cd565b5f600c5411801561086557506008546001600160a01b03888116911614155b156108cb575f6064600c548561087b9190611dad565b6108859190611dc4565b90505f6108928286611de3565b6001600160a01b038a165f908152600e60205260408120805492935083929091906108be908490611df6565b909155506108f892505050565b6001600160a01b0387165f908152600e6020526040812080548592906108f2908490611df6565b90915550505b8360095f8282546109099190611df6565b9091555061091a905030888561108b565b6040515f9073cde357abbdf15da7cce4b51ce70a1d0f08dfb7829087908381818185875af1925050503d805f811461096d576040519150601f19603f3d011682016040523d82523d5f602084013e610972565b606091505b505080915050806109955760405162461bcd60e51b81526004016106cd90611e09565b673782dace9d90000047101580156109b75750600854600160a01b900460ff16155b156109cc576109c46113ea565b6109cc6116f9565b5050505050505050565b5f336109e38185856117c6565b60019150505b92915050565b5f336109fc8582856118e9565b610a0785858561108b565b506001949350505050565b5f336109e3818585610a24838361102a565b610a2e9190611df6565b6117c6565b6001600160a01b0382165f908152600e602052604081205482811015610a9b5760405162461bcd60e51b815260206004820152601f60248201527f496e73756666696369656e74207573657220746f6b656e2062616c616e63650060448201526064016106cd565b6001600160a01b0384165f908152600d60205260409020548190610ac0908590611dad565b610aca9190611dc4565b949350505050565b60078054610adf90611d1c565b80601f0160208091040260200160405190810160405280929190818152602001828054610b0b90611d1c565b8015610b565780601f10610b2d57610100808354040283529160200191610b56565b820191905f5260205f20905b815481529060010190602001808311610b3957829003601f168201915b505050505081565b60606004805461062290611d1c565b5f673782dace9d90000082600954610b859190611df6565b1115610bcf5760405162461bcd60e51b8152602060048201526019602482015278131a5c5d5a591a5d1e481d185c99d95d08195e18d959591959603a1b60448201526064016106cd565b5f610bd8611961565b90505f673782dace9d900000610bef600686611dc4565b600954610bfc9190611df6565b6064610c0a6103e886611dad565b610c149190611dc4565b610c1e9190611dad565b610c289190611dc4565b610c329083611df6565b905080610ac085670de0b6b3a7640000611dad565b5f3381610c54828661102a565b905083811015610cb45760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016106cd565b610a0782868684036117c6565b5f336109e381858561108b565b600854600160a01b900460ff1615610cf85760405162461bcd60e51b81526004016106cd90611d54565b5f8111610d475760405162461bcd60e51b815260206004820152601d60248201527f416d6f756e74206d7573742062652067726561746572207468616e203000000060448201526064016106cd565b5f610d528383610a33565b305f90815260208190526040902054909150829003610d8f57506001600160a01b0382165f908152600d6020526040812081905560095547610dd4565b6001600160a01b0383165f908152600d602052604081208054839290610db6908490611de3565b925050819055508060095f828254610dce9190611de3565b90915550505b5f6064610de2600284611dad565b610dec9190611dc4565b6001600160a01b0385165f908152600e6020526040812080549293508592909190610e18908490611de3565b9250508190555082600a5f828254610e309190611de3565b90915550610e41905084308561108b565b5f6001600160a01b038516610e568385611de3565b6040515f81818185875af1925050503d805f8114610e8f576040519150601f19603f3d011682016040523d82523d5f602084013e610e94565b606091505b50508091505080610eb75760405162461bcd60e51b81526004016106cd90611e09565b60405173cde357abbdf15da7cce4b51ce70a1d0f08dfb7829083905f81818185875af1925050503d805f8114610f08576040519150601f19603f3d011682016040523d82523d5f602084013e610f0d565b606091505b50508091505080610f305760405162461bcd60e51b81526004016106cd90611e09565b5050505050565b5f806064610f46600286611dad565b610f509190611dc4565b9050610f5c8185611de3565b93505f610f6885610b6d565b600c5490915015610f9e575f6064600c5483610f849190611dad565b610f8e9190611dc4565b9050610f9a8183611de3565b9150505b6064610faa8583611dad565b610fb49190611dc4565b9350610fc08482611de3565b95945050505050565b5f47673782dace9d9000001161101d5760405162461bcd60e51b8152602060048201526019602482015278131a5c5d5a591a5d1e481d185c99d95d08195e18d959591959603a1b60448201526064016106cd565b611025611054565b905090565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b5f61106160026064611de3565b60095461107690673782dace9d900000611de3565b611081906064611dad565b6110259190611dc4565b5f8060055f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111019190611e32565b90505f60055f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111789190611e32565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa1580156111c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111eb9190611e32565b600854909150600160a01b900460ff16156112f95761120a81836119a1565b6008546001600160a01b0387811691161480159061123a5750806001600160a01b0316866001600160a01b031614155b801561125157506001600160a01b03861661dead14155b156112e957600c541561129f576064600c548661126e9190611dad565b6112789190611dc4565b93506112848486611de3565b60085490955061129f9088906001600160a01b031686611a36565b600b54856112c1886001600160a01b03165f9081526020819052604090205490565b6112cb9190611df6565b11156112e95760405162461bcd60e51b81526004016106cd90611e4d565b6112f4878787611a36565b6113e1565b6008546001600160a01b0387811691161480159061132057506001600160a01b0386163014155b801561133e5750806001600160a01b0316866001600160a01b031614155b156113d657600c541561138c576064600c548661135b9190611dad565b6113659190611dc4565b93506113718486611de3565b60085490955061138c9088906001600160a01b031686611a36565b600b54856113ae886001600160a01b03165f9081526020819052604090205490565b6113b89190611df6565b11156113d65760405162461bcd60e51b81526004016106cd90611e4d565b6113e1878787611a36565b50505050505050565b6008805460ff60a01b1916600160a01b1790556005546114209030906001600160a01b03166aa56fa5b99019a5c80000006117c6565b60055460405163f305d71960e01b815230600482018190526aa56fa5b99019a5c800000060248301525f60448301819052606483015260848201524260a48201526001600160a01b039091169063f305d71990479060c40160606040518083038185885af1158015611494573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906114b99190611e9a565b5050505f60055f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561150d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115319190611e32565b90505f60055f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611584573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115a89190611e32565b60405163e6a4390560e01b81523060048201526001600160a01b0380831660248301529192505f9184169063e6a4390590604401602060405180830381865afa1580156115f7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061161b9190611e32565b6040516370a0823160e01b81523060048201529091505f906001600160a01b038316906370a0823190602401602060405180830381865afa158015611662573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116869190611ec5565b60405163a9059cbb60e01b815261dead6004820152602481018290529091506001600160a01b0383169063a9059cbb906044016020604051808303815f875af11580156116d5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f309190611edc565b6040516370a0823160e01b815230600482018190525f916370a0823190602401602060405180830381865afa158015611734573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117589190611ec5565b60405163a9059cbb60e01b815261dead600482015260248101829052909150309063a9059cbb906044016020604051808303815f875af115801561179e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117c29190611edc565b5050565b6001600160a01b0383166118285760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016106cd565b6001600160a01b0382166118895760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016106cd565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6118f4848461102a565b90505f19811461195b578181101561194e5760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016106cd565b61195b84848484036117c6565b50505050565b5f61017761197d6103e86b0295be96e640669720000000611dad565b6119879190611dc4565b611081673782dace9d900000670de0b6b3a7640000611dad565b5f19600b54036119af575050565b6040516370a0823160e01b81526001600160a01b0383811660048301525f91908316906370a0823190602401602060405180830381865afa1580156119f6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a1a9190611ec5565b90506753444835ec5800008110611a31575f19600b555b505050565b6001600160a01b038316611a9a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016106cd565b6001600160a01b038216611afc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016106cd565b6001600160a01b0383165f9081526020819052604090205481811015611b735760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016106cd565b6001600160a01b038481165f81815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a361195b565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b0381168114611c21575f80fd5b50565b5f8060408385031215611c35575f80fd5b8235611c4081611c0d565b946020939093013593505050565b5f805f60608486031215611c60575f80fd5b8335611c6b81611c0d565b92506020840135611c7b81611c0d565b929592945050506040919091013590565b5f60208284031215611c9c575f80fd5b8135611ca781611c0d565b9392505050565b5f60208284031215611cbe575f80fd5b5035919050565b5f8060408385031215611cd6575f80fd5b50508035926020909101359150565b5f8060408385031215611cf6575f80fd5b8235611d0181611c0d565b91506020830135611d1181611c0d565b809150509250929050565b600181811c90821680611d3057607f821691505b602082108103611d4e57634e487b7160e01b5f52602260045260245ffd5b50919050565b60208082526025908201527f4c697175696469747920697320616c726561647920616464656420746f20556e604082015264069737761760dc1b606082015260800190565b634e487b7160e01b5f52601160045260245ffd5b80820281158282048414176109e9576109e9611d99565b5f82611dde57634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156109e9576109e9611d99565b808201808211156109e9576109e9611d99565b6020808252600f908201526e151c985b9cd9995c8819985a5b1959608a1b604082015260600190565b5f60208284031215611e42575f80fd5b8151611ca781611c0d565b6020808252602d908201527f5472616e7366657220616d6f756e74206578636565647320746865206d61782060408201526c1dd85b1b195d08185b5bdd5b9d609a1b606082015260800190565b5f805f60608486031215611eac575f80fd5b5050815160208301516040909301519094929350919050565b5f60208284031215611ed5575f80fd5b5051919050565b5f60208284031215611eec575f80fd5b81518015158114611ca7575f80fdfea2646970667358221220e404faaa8933bf117889d60deebde9d232ae8347977056af830c216249634cf464736f6c634300081a0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d0000000000000000000000002ac43aef3fbedcee7910da41db6b3f2568d08e500000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000120000000000000000000000000000000000000000000000000000000000000016000000000000000000000000000000000000000000000000000000000000000164f72646572206f6620746865205768697465204f776c0000000000000000000000000000000000000000000000000000000000000000000000000000000000034f574c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000005368747470733a2f2f62632e62756c6c612e66756e2f75706c6f6164732f313732353435353836323237382d31626238363235392d626664352d343866322d396333662d3334303833343538383438382e6a706700000000000000000000000000
-----Decoded View---------------
Arg [0] : _router (address): 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D
Arg [1] : _admin (address): 0x2aC43aef3FBeDcee7910DA41Db6b3F2568d08e50
Arg [2] : _maxWalletAmount (uint256): 2
Arg [3] : _devTax (uint256): 2
Arg [4] : _name (string): Order of the White Owl
Arg [5] : _ticker (string): OWL
Arg [6] : _picture (string): https://bc.bulla.fun/uploads/1725455862278-1bb86259-bfd5-48f2-9c3f-340834588488.jpg
-----Encoded View---------------
15 Constructor Arguments found :
Arg [0] : 0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d
Arg [1] : 0000000000000000000000002ac43aef3fbedcee7910da41db6b3f2568d08e50
Arg [2] : 0000000000000000000000000000000000000000000000000000000000000002
Arg [3] : 0000000000000000000000000000000000000000000000000000000000000002
Arg [4] : 00000000000000000000000000000000000000000000000000000000000000e0
Arg [5] : 0000000000000000000000000000000000000000000000000000000000000120
Arg [6] : 0000000000000000000000000000000000000000000000000000000000000160
Arg [7] : 0000000000000000000000000000000000000000000000000000000000000016
Arg [8] : 4f72646572206f6620746865205768697465204f776c00000000000000000000
Arg [9] : 0000000000000000000000000000000000000000000000000000000000000003
Arg [10] : 4f574c0000000000000000000000000000000000000000000000000000000000
Arg [11] : 0000000000000000000000000000000000000000000000000000000000000053
Arg [12] : 68747470733a2f2f62632e62756c6c612e66756e2f75706c6f6164732f313732
Arg [13] : 353435353836323237382d31626238363235392d626664352d343866322d3963
Arg [14] : 33662d3334303833343538383438382e6a706700000000000000000000000000
Deployed Bytecode Sourcemap
147:9667:6:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;578:42;;;;;;;;;;;;619:1;578:42;;;;;160:25:7;;;148:2;133:18;578:42:6;;;;;;;;2198:110:1;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;3963:1546:6:-;;;;;;:::i;:::-;;:::i;:::-;;752:101;;;;;;;;;;;;810:42;752:101;;;;;-1:-1:-1;;;;;1307:32:7;;;1289:51;;1277:2;1262:18;752:101:6;1127:219:7;4568:201:1;;;;;;;;;;-1:-1:-1;4568:201:1;;;;;:::i;:::-;;:::i;:::-;;;1516:14:7;;1509:22;1491:41;;1479:2;1464:18;4568:201:1;1351:187:7;1012:18:6;;;;;;;;;;-1:-1:-1;1012:18:6;;;;-1:-1:-1;;;1012:18:6;;;;;;3337:108:1;;;;;;;;;;-1:-1:-1;3425:12:1;;3337:108;;5349:261;;;;;;;;;;-1:-1:-1;5349:261:1;;;;;:::i;:::-;;:::i;3179:93::-;;;;;;;;;;-1:-1:-1;3179:93:1;;3262:2;2198:36:7;;2186:2;2171:18;3179:93:1;2056:184:7;6019:238:1;;;;;;;;;;-1:-1:-1;6019:238:1;;;;;:::i;:::-;;:::i;7757:285:6:-;;;;;;;;;;-1:-1:-1;7757:285:6;;;;;:::i;:::-;;:::i;1277:48::-;;;;;;;;;;-1:-1:-1;1277:48:6;;;;;:::i;:::-;;;;;;;;;;;;;;644:53;;;;;;;;;;;;687:10;644:53;;1249:21;;;;;;;;;;;;;;;;472:59;;;;;;;;;;;;527:4;472:59;;3508:127:1;;;;;;;;;;-1:-1:-1;3508:127:1;;;;;:::i;:::-;-1:-1:-1;;;;;3609:18:1;3582:7;3609:18;;;;;;;;;;;;3508:127;1036:29:6;;;;;;;;;;;;;;;;886:37;;;;;;;;;;-1:-1:-1;886:37:6;;;;-1:-1:-1;;;;;886:37:6;;;959:21;;;;;;;;;;;;;:::i;180:58::-;;;;;;;;;;;;219:19;180:58;;2427:104:1;;;;;;;;;;;;;:::i;929:24:6:-;;;;;;;;;;-1:-1:-1;929:24:6;;;;-1:-1:-1;;;;;929:24:6;;;7299:452;;;;;;;;;;-1:-1:-1;7299:452:6;;;;;:::i;:::-;;:::i;6760:436:1:-;;;;;;;;;;-1:-1:-1;6760:436:1;;;;;:::i;:::-;;:::i;3841:193::-;;;;;;;;;;-1:-1:-1;3841:193:1;;;;;:::i;:::-;;:::i;273:61:6:-;;;;;;;;;;;;316:18;273:61;;1107:32;;;;;;;;;;;;;;;;5515:1005;;;;;;;;;;-1:-1:-1;5515:1005:6;;;;;:::i;:::-;;:::i;6727:566::-;;;;;;;;;;-1:-1:-1;6727:566:6;;;;;:::i;:::-;;:::i;6526:194::-;;;;;;;;;;;;;:::i;4097:151:1:-;;;;;;;;;;-1:-1:-1;4097:151:1;;;;;:::i;:::-;;:::i;1358:41:6:-;;;;;;;;;;-1:-1:-1;1358:41:6;;;;;:::i;:::-;;;;;;;;;;;;;;371:61;;;;;;;;;;;;414:18;371:61;;986:20;;;;;;;;;;-1:-1:-1;986:20:6;;;;-1:-1:-1;;;;;986:20:6;;;2198:110:1;2252:13;2295:5;2288:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2198:110;:::o;3963:1546:6:-;4056:6;;-1:-1:-1;;;4056:6:6;;;;4055:7;4047:57;;;;-1:-1:-1;;;4047:57:6;;;;;;;:::i;:::-;;;;;;;;;4134:1;4122:9;:13;4114:48;;;;-1:-1:-1;;;4114:48:6;;4905:2:7;4114:48:6;;;4887:21:7;4944:2;4924:18;;;4917:30;-1:-1:-1;;;4963:18:7;;;4956:52;5025:18;;4114:48:6;4703:346:7;4114:48:6;4173:11;4216:3;4187:26;619:1;4187:9;:26;:::i;:::-;:32;;;;:::i;:::-;4173:46;-1:-1:-1;4229:17:6;4249:15;4173:46;4249:9;:15;:::i;:::-;4229:35;;4275:19;4297:31;4318:9;4297:20;:31::i;:::-;4275:53;-1:-1:-1;4338:20:6;4361:21;4373:9;4275:53;4361:21;:::i;:::-;4338:44;;4393:18;4451:9;4426:21;:19;:21::i;:::-;:34;4422:248;;-1:-1:-1;4558:17:6;;4490:12;;4539:36;;316:18;4539:36;:::i;:::-;4524:11;:52;4521:139;;;4628:17;;4609:36;;316:18;4609:36;:::i;:::-;4595:50;;4521:139;4701:11;4680:17;;:32;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;;;4723:20:6;;;;;;:13;:20;;;;;:33;;4747:9;;4723:20;:33;;4747:9;;4723:33;:::i;:::-;;;;-1:-1:-1;;4784:1:6;4770:15;;;4767:113;;4823:14;4808:11;:29;;4800:69;;;;-1:-1:-1;;;4800:69:6;;6046:2:7;4800:69:6;;;6028:21:7;6085:2;6065:18;;;6058:30;6124:29;6104:18;;;6097:57;6171:18;;4800:69:6;5844:351:7;4800:69:6;4902:1;4893:6;;:10;:28;;;;-1:-1:-1;4916:5:6;;-1:-1:-1;;;;;4907:14:6;;;4916:5;;4907:14;;4893:28;4890:249;;;4936:11;4973:3;4964:6;;4950:11;:20;;;;:::i;:::-;:26;;;;:::i;:::-;4936:40;-1:-1:-1;4990:19:6;5012:17;4936:40;5012:11;:17;:::i;:::-;-1:-1:-1;;;;;5043:13:6;;;;;;:6;:13;;;;;:28;;4990:39;;-1:-1:-1;4990:39:6;;5043:13;;;:28;;4990:39;;5043:28;:::i;:::-;;;;-1:-1:-1;4890:249:6;;-1:-1:-1;;;4890:249:6;;-1:-1:-1;;;;;5100:13:6;;;;;;:6;:13;;;;;:28;;5117:11;;5100:13;:28;;5117:11;;5100:28;:::i;:::-;;;;-1:-1:-1;;4890:249:6;5167:9;5149:14;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;5187:44:6;;-1:-1:-1;5205:4:6;5212:5;5219:11;5187:9;:44::i;:::-;5277:36;;5241:12;;810:42;;5305:3;;5241:12;5277:36;5241:12;5277:36;5305:3;810:42;5277:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5263:50;;;;;5331:7;5323:35;;;;-1:-1:-1;;;5323:35:6;;;;;;;:::i;:::-;687:10;5373:21;:41;;:52;;;;-1:-1:-1;5419:6:6;;-1:-1:-1;;;5419:6:6;;;;5418:7;5373:52;5369:134;;;5441:15;:13;:15::i;:::-;5470:22;:20;:22::i;:::-;4037:1472;;;;;;3963:1546;;:::o;4568:201:1:-;4651:4;736:10:0;4707:32:1;736:10:0;4723:7:1;4732:6;4707:8;:32::i;:::-;4757:4;4750:11;;;4568:201;;;;;:::o;5349:261::-;5446:4;736:10:0;5504:38:1;5520:4;736:10:0;5535:6:1;5504:15;:38::i;:::-;5553:27;5563:4;5569:2;5573:6;5553:9;:27::i;:::-;-1:-1:-1;5598:4:1;;5349:261;-1:-1:-1;;;;5349:261:1:o;6019:238::-;6107:4;736:10:0;6163:64:1;736:10:0;6179:7:1;6216:10;6188:25;736:10:0;6179:7:1;6188:9;:25::i;:::-;:38;;;;:::i;:::-;6163:8;:64::i;7757:285:6:-;-1:-1:-1;;;;;7880:12:6;;7840:7;7880:12;;;:6;:12;;;;;;7910:25;;;;7902:69;;;;-1:-1:-1;;;7902:69:6;;6956:2:7;7902:69:6;;;6938:21:7;6995:2;6975:18;;;6968:30;7034:33;7014:18;;;7007:61;7085:18;;7902:69:6;6754:355:7;7902:69:6;-1:-1:-1;;;;;7989:19:6;;;;;;:13;:19;;;;;;8025:10;;7989:33;;8011:11;;7989:33;:::i;:::-;:46;;;;:::i;:::-;7982:53;7757:285;-1:-1:-1;;;;7757:285:6:o;959:21::-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;2427:104:1:-;2483:13;2516:7;2509:14;;;;;:::i;7299:452:6:-;7369:7;687:10;7413:9;7396:14;;:26;;;;:::i;:::-;:46;;7388:84;;;;-1:-1:-1;;;7388:84:6;;7316:2:7;7388:84:6;;;7298:21:7;7355:2;7335:18;;;7328:30;-1:-1:-1;;;7374:18:7;;;7367:55;7439:18;;7388:84:6;7114:349:7;7388:84:6;7483:25;7511:20;:18;:20::i;:::-;7483:48;-1:-1:-1;7541:18:6;687:10;7661:13;7673:1;7661:9;:13;:::i;:::-;7643:14;;:32;;;;:::i;:::-;7635:3;7584:48;527:4;7584:17;:48;:::i;:::-;:54;;;;:::i;:::-;7583:93;;;;:::i;:::-;:112;;;;:::i;:::-;7562:134;;:17;:134;:::i;:::-;7541:155;-1:-1:-1;7541:155:6;7713:18;:9;7725:6;7713:18;:::i;6760:436:1:-;6853:4;736:10:0;6853:4:1;6936:25;736:10:0;6953:7:1;6936:9;:25::i;:::-;6909:52;;7000:15;6980:16;:35;;6972:85;;;;-1:-1:-1;;;6972:85:1;;7670:2:7;6972:85:1;;;7652:21:7;7709:2;7689:18;;;7682:30;7748:34;7728:18;;;7721:62;-1:-1:-1;;;7799:18:7;;;7792:35;7844:19;;6972:85:1;7468:401:7;6972:85:1;7093:60;7102:5;7109:7;7137:15;7118:16;:34;7093:8;:60::i;3841:193::-;3920:4;736:10:0;3976:28:1;736:10:0;3993:2:1;3997:6;3976:9;:28::i;5515:1005:6:-;5599:6;;-1:-1:-1;;;5599:6:6;;;;5598:7;5590:57;;;;-1:-1:-1;;;5590:57:6;;;;;;;:::i;:::-;5679:1;5665:11;:15;5657:57;;;;-1:-1:-1;;;5657:57:6;;8076:2:7;5657:57:6;;;8058:21:7;8115:2;8095:18;;;8088:30;8154:31;8134:18;;;8127:59;8203:18;;5657:57:6;7874:353:7;5657:57:6;5725:17;5745:38;5764:6;5771:11;5745:18;:38::i;:::-;5816:4;3582:7:1;3609:18;;;;;;;;;;;5725:58:6;;-1:-1:-1;5826:11:6;;5798:39;5794:280;;-1:-1:-1;;;;;;5900:21:6;;5924:1;5900:21;;;:13;:21;;;;;:25;;;5939:14;:18;5865:21;5794:280;;;-1:-1:-1;;;;;5988:21:6;;;;;;:13;:21;;;;;:34;;6013:9;;5988:21;:34;;6013:9;;5988:34;:::i;:::-;;;;;;;;6054:9;6036:14;;:27;;;;;;;:::i;:::-;;;;-1:-1:-1;;5794:280:6;6084:11;6127:3;6098:26;619:1;6098:9;:26;:::i;:::-;:32;;;;:::i;:::-;-1:-1:-1;;;;;6141:14:6;;;;;;:6;:14;;;;;:29;;6084:46;;-1:-1:-1;6159:11:6;;6141:14;;;:29;;6159:11;;6141:29;:::i;:::-;;;;;;;;6201:11;6180:17;;:32;;;;;;;:::i;:::-;;;;-1:-1:-1;6232:45:6;;-1:-1:-1;6242:6:6;6258:4;6265:11;6232:9;:45::i;:::-;6287:12;-1:-1:-1;;;;;6323:11:6;;6342:15;6354:3;6342:9;:15;:::i;:::-;6323:39;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6309:53;;;;;6380:7;6372:35;;;;-1:-1:-1;;;6372:35:6;;;;;;;:::i;:::-;6431:36;;810:42;;6459:3;;6431:36;;;;6459:3;810:42;6431:36;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6417:50;;;;;6485:7;6477:35;;;;-1:-1:-1;;;6477:35:6;;;;;;;:::i;:::-;5580:940;;;5515:1005;;:::o;6727:566::-;6810:7;;6872:3;6843:26;619:1;6843:9;:26;:::i;:::-;:32;;;;:::i;:::-;6829:46;-1:-1:-1;6897:15:6;6829:46;6897:9;:15;:::i;:::-;6885:27;;6923:22;6948:31;6969:9;6948:20;:31::i;:::-;6994:6;;6923:56;;-1:-1:-1;6994:10:6;6990:135;;7020:11;7060:3;7051:6;;7034:14;:23;;;;:::i;:::-;:29;;;;:::i;:::-;7020:43;-1:-1:-1;7094:20:6;7020:43;7094:14;:20;:::i;:::-;7077:37;;7006:119;6990:135;7191:3;7154:34;7171:17;7154:14;:34;:::i;:::-;:40;;;;:::i;:::-;7134:60;-1:-1:-1;7221:34:6;7134:60;7221:14;:34;:::i;:::-;7204:51;6727:566;-1:-1:-1;;;;;6727:566:6:o;6526:194::-;6577:7;6623:21;687:10;6604:40;6596:78;;;;-1:-1:-1;;;6596:78:6;;7316:2:7;6596:78:6;;;7298:21:7;7355:2;7335:18;;;7328:30;-1:-1:-1;;;7374:18:7;;;7367:55;7439:18;;6596:78:6;7114:349:7;6596:78:6;6692:21;:19;:21::i;:::-;6685:28;;6526:194;:::o;4097:151:1:-;-1:-1:-1;;;;;4213:18:1;;;4186:7;4213:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4097:151::o;9418:158:6:-;9472:7;9548:20;619:1;9548:3;:20;:::i;:::-;9523:14;;9504:33;;687:10;9504:33;:::i;:::-;9503:41;;9541:3;9503:41;:::i;:::-;:66;;;;:::i;2453:1504::-;2555:11;2580:16;2599:13;;;;;;;;;-1:-1:-1;;;;;2599:13:6;-1:-1:-1;;;;;2599:21:6;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2580:42;;2636:13;2652;;;;;;;;;-1:-1:-1;;;;;2652:13:6;-1:-1:-1;;;;;2652:18:6;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2704:57;;-1:-1:-1;;;2704:57:6;;2748:4;2704:57;;;8662:51:7;-1:-1:-1;;;;;8749:32:7;;;8729:18;;;8722:60;2636:36:6;;-1:-1:-1;2686:15:6;;2704:35;;;;;8635:18:7;;2704:57:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;2774:6;;2686:75;;-1:-1:-1;;;;2774:6:6;;;;2771:1180;;;2795:36;2817:7;2825:5;2795:21;:36::i;:::-;2862:5;;-1:-1:-1;;;;;2849:18:6;;;2862:5;;2849:18;;;;:51;;;2892:7;-1:-1:-1;;;;;2871:29:6;:9;-1:-1:-1;;;;;2871:29:6;;;2849:51;:119;;;;-1:-1:-1;;;;;;2904:64:6;;2925:42;2904:64;;2849:119;2845:486;;;2992:6;;:10;2988:196;;3054:3;3045:6;;3036;:15;;;;:::i;:::-;:21;;;;:::i;:::-;3030:27;-1:-1:-1;3092:12:6;3030:27;3092:6;:12;:::i;:::-;3154:5;;3083:21;;-1:-1:-1;3130:35:6;;3146:6;;-1:-1:-1;;;;;3154:5:6;3161:3;3130:15;:35::i;:::-;3251:15;;3241:6;3209:29;3227:9;-1:-1:-1;;;;;3609:18:1;3582:7;3609:18;;;;;;;;;;;;3508:127;3209:29:6;:38;;;;:::i;:::-;:57;;3201:115;;;;-1:-1:-1;;;3201:115:6;;;;;;;:::i;:::-;3349:42;3365:6;3373:9;3384:6;3349:15;:42::i;:::-;2771:1180;;;3463:5;;-1:-1:-1;;;;;3450:18:6;;;3463:5;;3450:18;;;;:48;;-1:-1:-1;;;;;;3472:26:6;;3493:4;3472:26;;3450:48;:72;;;;;3515:7;-1:-1:-1;;;;;3502:20:6;:9;-1:-1:-1;;;;;3502:20:6;;;3450:72;3446:439;;;3546:6;;:10;3542:196;;3608:3;3599:6;;3590;:15;;;;:::i;:::-;:21;;;;:::i;:::-;3584:27;-1:-1:-1;3646:12:6;3584:27;3646:6;:12;:::i;:::-;3708:5;;3637:21;;-1:-1:-1;3684:35:6;;3700:6;;-1:-1:-1;;;;;3708:5:6;3715:3;3684:15;:35::i;:::-;3805:15;;3795:6;3763:29;3781:9;-1:-1:-1;;;;;3609:18:1;3582:7;3609:18;;;;;;;;;;;;3508:127;3763:29:6;:38;;;;:::i;:::-;:57;;3755:115;;;;-1:-1:-1;;;3755:115:6;;;;;;;:::i;:::-;3898:42;3914:6;3922:9;3933:6;3898:15;:42::i;:::-;2541:1416;;;;2453:1504;;;:::o;8053:773::-;8098:6;:13;;-1:-1:-1;;;;8098:13:6;-1:-1:-1;;;8098:13:6;;;8153;;8121:65;;8138:4;;-1:-1:-1;;;;;8153:13:6;414:18;8121:8;:65::i;:::-;8196:13;;:214;;-1:-1:-1;;;8196:214:6;;8279:4;8196:214;;;9510:51:7;;;414:18:6;9577::7;;;9570:34;8196:13:6;9620:18:7;;;9613:34;;;9663:18;;;9656:34;9706:19;;;9699:61;8385:15:6;9776:19:7;;;9769:35;-1:-1:-1;;;;;8196:13:6;;;;:29;;8234:21;;9482:19:7;;8196:214:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;8421:16;8440:13;;;;;;;;;-1:-1:-1;;;;;8440:13:6;-1:-1:-1;;;;;8440:21:6;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8421:42;;8474:13;8490;;;;;;;;;-1:-1:-1;;;;;8490:13:6;-1:-1:-1;;;;;8490:18:6;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8582:56;;-1:-1:-1;;;8582:56:6;;8626:4;8582:56;;;8662:51:7;-1:-1:-1;;;;;8749:32:7;;;8729:18;;;8722:60;8474:36:6;;-1:-1:-1;8564:15:6;;8582:35;;;;;8635:18:7;;8582:56:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8666:40;;-1:-1:-1;;;8666:40:6;;8700:4;8666:40;;;1289:51:7;8564:74:6;;-1:-1:-1;8649:14:6;;-1:-1:-1;;;;;8666:25:6;;;;;1262:18:7;;8666:40:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8735:84;;-1:-1:-1;;;8735:84:6;;8768:42;8735:84;;;10685:51:7;10752:18;;;10745:34;;;8649:57:6;;-1:-1:-1;;;;;;8735:24:6;;;;;10658:18:7;;8735:84:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;8837:264::-;8915:46;;-1:-1:-1;;;8915:46:6;;8930:4;8915:46;;;1289:51:7;;;8898:14:6;;8915:31;;1262:18:7;;8915:46:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9004:90;;-1:-1:-1;;;9004:90:6;;9043:42;9004:90;;;10685:51:7;10752:18;;;10745:34;;;8898:63:6;;-1:-1:-1;9019:4:6;;9004:30;;10658:18:7;;9004:90:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;8879:222;8837:264::o;10753:346:1:-;-1:-1:-1;;;;;10855:19:1;;10847:68;;;;-1:-1:-1;;;10847:68:1;;11274:2:7;10847:68:1;;;11256:21:7;11313:2;11293:18;;;11286:30;11352:34;11332:18;;;11325:62;-1:-1:-1;;;11403:18:7;;;11396:34;11447:19;;10847:68:1;11072:400:7;10847:68:1;-1:-1:-1;;;;;10934:21:1;;10926:68;;;;-1:-1:-1;;;10926:68:1;;11679:2:7;10926:68:1;;;11661:21:7;11718:2;11698:18;;;11691:30;11757:34;11737:18;;;11730:62;-1:-1:-1;;;11808:18:7;;;11801:32;11850:19;;10926:68:1;11477:398:7;10926:68:1;-1:-1:-1;;;;;11007:18:1;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;11059:32;;160:25:7;;;11059:32:1;;133:18:7;11059:32:1;;;;;;;10753:346;;;:::o;11390:419::-;11491:24;11518:25;11528:5;11535:7;11518:9;:25::i;:::-;11491:52;;-1:-1:-1;;11558:16:1;:37;11554:248;;11640:6;11620:16;:26;;11612:68;;;;-1:-1:-1;;;11612:68:1;;12082:2:7;11612:68:1;;;12064:21:7;12121:2;12101:18;;;12094:30;12160:31;12140:18;;;12133:59;12209:18;;11612:68:1;11880:353:7;11612:68:1;11724:51;11733:5;11740:7;11768:6;11749:16;:25;11724:8;:51::i;:::-;11480:329;11390:419;;;:::o;9633:178:6:-;9686:7;9794:3;9743:47;527:4;316:18;9743:47;:::i;:::-;9742:55;;;;:::i;:::-;9713:25;687:10;9732:6;9713:25;:::i;9108:299::-;-1:-1:-1;;9193:15:6;;:36;9190:48;;9108:299;;:::o;9190:48::-;9265:42;;-1:-1:-1;;;9265:42:6;;-1:-1:-1;;;;;1307:32:7;;;9265:42:6;;;1289:51:7;9248:14:6;;9265:23;;;;;;1262:18:7;;9265:42:6;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9248:59;;9332:7;9322:6;:17;9318:83;;-1:-1:-1;;9355:15:6;:35;9318:83;9180:227;9108:299;;:::o;7666:806:1:-;-1:-1:-1;;;;;7763:18:1;;7755:68;;;;-1:-1:-1;;;7755:68:1;;12440:2:7;7755:68:1;;;12422:21:7;12479:2;12459:18;;;12452:30;12518:34;12498:18;;;12491:62;-1:-1:-1;;;12569:18:7;;;12562:35;12614:19;;7755:68:1;12238:401:7;7755:68:1;-1:-1:-1;;;;;7842:16:1;;7834:64;;;;-1:-1:-1;;;7834:64:1;;12846:2:7;7834:64:1;;;12828:21:7;12885:2;12865:18;;;12858:30;12924:34;12904:18;;;12897:62;-1:-1:-1;;;12975:18:7;;;12968:33;13018:19;;7834:64:1;12644:399:7;7834:64:1;-1:-1:-1;;;;;7984:15:1;;7962:19;7984:15;;;;;;;;;;;8018:21;;;;8010:72;;;;-1:-1:-1;;;8010:72:1;;13250:2:7;8010:72:1;;;13232:21:7;13289:2;13269:18;;;13262:30;13328:34;13308:18;;;13301:62;-1:-1:-1;;;13379:18:7;;;13372:36;13425:19;;8010:72:1;13048:402:7;8010:72:1;-1:-1:-1;;;;;8118:15:1;;;:9;:15;;;;;;;;;;;8136:20;;;8118:38;;8336:13;;;;;;;;;;:23;;;;;;8388:26;;160:25:7;;;8336:13:1;;8388:26;;133:18:7;8388:26:1;;;;;;;8427:37;9108:299:6;196:418:7;345:2;334:9;327:21;308:4;377:6;371:13;420:6;415:2;404:9;400:18;393:34;479:6;474:2;466:6;462:15;457:2;446:9;442:18;436:50;535:1;530:2;521:6;510:9;506:22;502:31;495:42;605:2;598;594:7;589:2;581:6;577:15;573:29;562:9;558:45;554:54;546:62;;;196:418;;;;:::o;619:131::-;-1:-1:-1;;;;;694:31:7;;684:42;;674:70;;740:1;737;730:12;674:70;619:131;:::o;755:367::-;823:6;831;884:2;872:9;863:7;859:23;855:32;852:52;;;900:1;897;890:12;852:52;939:9;926:23;958:31;983:5;958:31;:::i;:::-;1008:5;1086:2;1071:18;;;;1058:32;;-1:-1:-1;;;755:367:7:o;1543:508::-;1620:6;1628;1636;1689:2;1677:9;1668:7;1664:23;1660:32;1657:52;;;1705:1;1702;1695:12;1657:52;1744:9;1731:23;1763:31;1788:5;1763:31;:::i;:::-;1813:5;-1:-1:-1;1870:2:7;1855:18;;1842:32;1883:33;1842:32;1883:33;:::i;:::-;1543:508;;1935:7;;-1:-1:-1;;;2015:2:7;2000:18;;;;1987:32;;1543:508::o;2245:247::-;2304:6;2357:2;2345:9;2336:7;2332:23;2328:32;2325:52;;;2373:1;2370;2363:12;2325:52;2412:9;2399:23;2431:31;2456:5;2431:31;:::i;:::-;2481:5;2245:247;-1:-1:-1;;;2245:247:7:o;2937:226::-;2996:6;3049:2;3037:9;3028:7;3024:23;3020:32;3017:52;;;3065:1;3062;3055:12;3017:52;-1:-1:-1;3110:23:7;;2937:226;-1:-1:-1;2937:226:7:o;3168:346::-;3236:6;3244;3297:2;3285:9;3276:7;3272:23;3268:32;3265:52;;;3313:1;3310;3303:12;3265:52;-1:-1:-1;;3358:23:7;;;3478:2;3463:18;;;3450:32;;-1:-1:-1;3168:346:7:o;3519:388::-;3587:6;3595;3648:2;3636:9;3627:7;3623:23;3619:32;3616:52;;;3664:1;3661;3654:12;3616:52;3703:9;3690:23;3722:31;3747:5;3722:31;:::i;:::-;3772:5;-1:-1:-1;3829:2:7;3814:18;;3801:32;3842:33;3801:32;3842:33;:::i;:::-;3894:7;3884:17;;;3519:388;;;;;:::o;3912:380::-;3991:1;3987:12;;;;4034;;;4055:61;;4109:4;4101:6;4097:17;4087:27;;4055:61;4162:2;4154:6;4151:14;4131:18;4128:38;4125:161;;4208:10;4203:3;4199:20;4196:1;4189:31;4243:4;4240:1;4233:15;4271:4;4268:1;4261:15;4125:161;;3912:380;;;:::o;4297:401::-;4499:2;4481:21;;;4538:2;4518:18;;;4511:30;4577:34;4572:2;4557:18;;4550:62;-1:-1:-1;;;4643:2:7;4628:18;;4621:35;4688:3;4673:19;;4297:401::o;5054:127::-;5115:10;5110:3;5106:20;5103:1;5096:31;5146:4;5143:1;5136:15;5170:4;5167:1;5160:15;5186:168;5259:9;;;5290;;5307:15;;;5301:22;;5287:37;5277:71;;5328:18;;:::i;5359:217::-;5399:1;5425;5415:132;;5469:10;5464:3;5460:20;5457:1;5450:31;5504:4;5501:1;5494:15;5532:4;5529:1;5522:15;5415:132;-1:-1:-1;5561:9:7;;5359:217::o;5581:128::-;5648:9;;;5669:11;;;5666:37;;;5683:18;;:::i;5714:125::-;5779:9;;;5800:10;;;5797:36;;;5813:18;;:::i;6410:339::-;6612:2;6594:21;;;6651:2;6631:18;;;6624:30;-1:-1:-1;;;6685:2:7;6670:18;;6663:45;6740:2;6725:18;;6410:339::o;8232:251::-;8302:6;8355:2;8343:9;8334:7;8330:23;8326:32;8323:52;;;8371:1;8368;8361:12;8323:52;8403:9;8397:16;8422:31;8447:5;8422:31;:::i;8793:409::-;8995:2;8977:21;;;9034:2;9014:18;;;9007:30;9073:34;9068:2;9053:18;;9046:62;-1:-1:-1;;;9139:2:7;9124:18;;9117:43;9192:3;9177:19;;8793:409::o;9815:456::-;9903:6;9911;9919;9972:2;9960:9;9951:7;9947:23;9943:32;9940:52;;;9988:1;9985;9978:12;9940:52;-1:-1:-1;;10033:16:7;;10139:2;10124:18;;10118:25;10235:2;10220:18;;;10214:25;10033:16;;10118:25;;-1:-1:-1;10214:25:7;9815:456;-1:-1:-1;9815:456:7:o;10276:230::-;10346:6;10399:2;10387:9;10378:7;10374:23;10370:32;10367:52;;;10415:1;10412;10405:12;10367:52;-1:-1:-1;10460:16:7;;10276:230;-1:-1:-1;10276:230:7:o;10790:277::-;10857:6;10910:2;10898:9;10889:7;10885:23;10881:32;10878:52;;;10926:1;10923;10916:12;10878:52;10958:9;10952:16;11011:5;11004:13;10997:21;10990:5;10987:32;10977:60;;11033:1;11030;11023:12
Swarm Source
ipfs://e404faaa8933bf117889d60deebde9d232ae8347977056af830c216249634cf4
Loading...
Loading
Loading...
Loading
Multichain Portfolio | 30 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
BASE | 100.00% | $3,230.6 | 0.0000000000110494 | <$0.000001 |
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.