Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000 nothing
Holders
37
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
5,902.427358068033102132 nothingValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
nothing
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-09-19 */ //SPDX-License-Identifier: MIT pragma solidity 0.8.19; /* ███╗ ██╗ ██████╗ ████████╗██╗ ██╗██╗███╗ ██╗ ██████╗ ████╗ ██║██╔═══██╗╚══██╔══╝██║ ██║██║████╗ ██║██╔════╝ ██╔██╗ ██║██║ ██║ ██║ ███████║██║██╔██╗ ██║██║ ███╗ ██║╚██╗██║██║ ██║ ██║ ██╔══██║██║██║╚██╗██║██║ ██║ ██║ ╚████║╚██████╔╝ ██║ ██║ ██║██║██║ ╚████║╚██████╔╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝ ███████╗████████╗ █████╗ ██╗ ██╗██╗███╗ ██╗ ██████╗ ██╔════╝╚══██╔══╝██╔══██╗██║ ██╔╝██║████╗ ██║██╔════╝ ███████╗ ██║ ███████║█████╔╝ ██║██╔██╗ ██║██║ ███╗ ╚════██║ ██║ ██╔══██║██╔═██╗ ██║██║╚██╗██║██║ ██║ ███████║ ██║ ██║ ██║██║ ██╗██║██║ ╚████║╚██████╔╝ ╚══════╝ ╚═╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝ ███╗ ██╗ ██████╗ ████████╗██╗ ██╗██╗███╗ ██╗ ██████╗ ████╗ ██║██╔═══██╗╚══██╔══╝██║ ██║██║████╗ ██║██╔════╝ ██╔██╗ ██║██║ ██║ ██║ ███████║██║██╔██╗ ██║██║ ███╗ ██║╚██╗██║██║ ██║ ██║ ██╔══██║██║██║╚██╗██║██║ ██║ ██║ ╚████║╚██████╔╝ ██║ ██║ ██║██║██║ ╚████║╚██████╔╝ ╚═╝ ╚═══╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝╚═╝╚═╝ ╚═══╝ ╚═════╝ ███╗ ███╗███████╗██████╗ ██╗██╗ ██╗███╗ ███╗ ████╗ ████║██╔════╝██╔══██╗██║██║ ██║████╗ ████║██╗ ██╔████╔██║█████╗ ██║ ██║██║██║ ██║██╔████╔██║╚═╝ https://medium.com/@nothingtokenerc/-85333c5c937 ██║╚██╔╝██║██╔══╝ ██║ ██║██║██║ ██║██║╚██╔╝██║██╗ ██║ ╚═╝ ██║███████╗██████╔╝██║╚██████╔╝██║ ╚═╝ ██║╚═╝ ╚═╝ ╚═╝╚══════╝╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ██╗ ██╗ ╚██╗██╔╝██╗ ╚███╔╝ ╚═╝ https://x.com/nothingtoken0/status/1704182202433462678?s=46 ██╔██╗ ██╗ ██╔╝ ██╗╚═╝ ╚═╝ ╚═╝ ████████╗███████╗██╗ ███████╗ ██████╗ ██████╗ █████╗ ███╗ ███╗ ╚══██╔══╝██╔════╝██║ ██╔════╝██╔════╝ ██╔══██╗██╔══██╗████╗ ████║██╗ ██║ █████╗ ██║ █████╗ ██║ ███╗██████╔╝███████║██╔████╔██║╚═╝ https://t.me/Tokenothing ██║ ██╔══╝ ██║ ██╔══╝ ██║ ██║██╔══██╗██╔══██║██║╚██╔╝██║██╗ ██║ ███████╗███████╗███████╗╚██████╔╝██║ ██║██║ ██║██║ ╚═╝ ██║╚═╝ ╚═╝ ╚══════╝╚══════╝╚══════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝╚═╝ ╚═╝ */ interface nothingStaking { function stake(address n, uint256 amount) external; function unstake(address n, uint256 amount) external; function totalStaked(address n) external view returns (uint256); function stakedBalanceOf(address n, address account) external view returns (uint256); function claim(address n) external returns (uint256); function addETHReward(address n) external payable; function pause() external; function resume() external; } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval (address indexed owner, address indexed spender, uint256 value); } interface 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); } 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 {} } interface DexFactory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface DexRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns (uint256 amountToken, uint256 amountETH, uint256 liquidity); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } contract nothing is ERC20, Ownable { mapping(address => bool) private excluded; address public marketingWallet = 0x5aa1c9F2E1612bB7B68ed591860FBe745147cB4d; DexRouter public immutable uniswapRouter; address public immutable pairAddress; bool public swapAndLiquifyEnabled = true; bool public isSwapping = false; bool public tradingEnabled = false; uint256 public constant _totalSupply = 1000000 * 1e18; struct taxes { uint256 marketingTax; } taxes public transferTax = taxes(0); taxes public buyTax = taxes(15); taxes public sellTax = taxes(15); uint256 public swapTokensAtAmount = (_totalSupply * 2) / 10000; uint256 public maxWallet = 2; event BuyFeesUpdated(uint256 indexed _trFee); event SellFeesUpdated(uint256 indexed _trFee); event marketingWalletChanged(address indexed _trWallet); event SwapThresholdUpdated(uint256 indexed _newThreshold); event InternalSwapStatusUpdated(bool indexed _status); event Exclude(address indexed _target, bool indexed _status); event MaxWalletChanged(uint256 percentage); constructor() ERC20("nothing", " ") { uniswapRouter = DexRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); pairAddress = DexFactory(uniswapRouter.factory()).createPair( address(this), uniswapRouter.WETH() ); excluded[msg.sender] = true; excluded[address(marketingWallet)] = true; excluded[address(uniswapRouter)] = true; excluded[address(this)] = true; _mint(msg.sender, _totalSupply); } function nothingEnabled() external onlyOwner { require(!tradingEnabled, "Trading is already enabled"); tradingEnabled = true; } function internalSwap() internal { isSwapping = true; uint256 taxAmount = balanceOf(address(this)); if (taxAmount == 0) { return; } swapToETH(balanceOf(address(this))); (bool success, ) = marketingWallet.call{value: address(this).balance}(""); require(success, "Transfer failed."); isSwapping = false; } function swapToETH(uint256 _amount) internal { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapRouter.WETH(); _approve(address(this), address(uniswapRouter), _amount); uniswapRouter.swapExactTokensForETHSupportingFeeOnTransferTokens( _amount, 0, path, address(this), block.timestamp ); } function handleTaxes( address _from, address _to, uint256 _amount ) internal returns (uint256) { if (excluded[_from] || excluded[_to]) { return _amount; } uint256 totalTax = transferTax.marketingTax; if (_to == pairAddress) { totalTax = sellTax.marketingTax; } else if (_from == pairAddress) { totalTax = buyTax.marketingTax; } uint256 tax = 0; if (totalTax > 0) { tax = (_amount * totalTax) / 100; super._transfer(_from, address(this), tax); } return (_amount - tax); } function _transfer( address _from, address _to, uint256 _amount ) internal virtual override { require(_from != address(0), "transfer from address zero"); require(_to != address(0), "transfer to address zero"); require(_amount > 0, "Transfer amount must be greater than zero"); // Calculate the maximum wallet amount based on the total supply and the maximum wallet percentage uint256 maxWalletAmount = _totalSupply * maxWallet / 100; // Check if the transaction is within the maximum wallet limit if (!excluded[_from] && !excluded[_to] && _to != address(0) && _to != address(this) && _to != pairAddress) { require(balanceOf(_to) + _amount <= maxWalletAmount, "Exceeds maximum wallet amount"); } uint256 toTransfer = handleTaxes(_from, _to, _amount); bool canSwap = balanceOf(address(this)) >= swapTokensAtAmount; if (!excluded[_from] && !excluded[_to]) { require(tradingEnabled, "Trading not active"); if (pairAddress == _to && swapAndLiquifyEnabled && canSwap && !isSwapping) { internalSwap(); } } super._transfer(_from, _to, toTransfer); } function disableLimits() external onlyOwner{ maxWallet = 100; transferTax.marketingTax = 0; } function setbuyTax(uint256 _marketingTax) external onlyOwner { buyTax.marketingTax = _marketingTax; require(_marketingTax <= 30, "Can not set buy fees higher than 30%"); emit BuyFeesUpdated(_marketingTax); } function setsellTax(uint256 _marketingTax) external onlyOwner { sellTax.marketingTax = _marketingTax; require(_marketingTax <= 30, "Can not set buy fees higher than 30%"); emit SellFeesUpdated(_marketingTax); } function setSwapTokensAtAmount(uint256 _newAmount) external onlyOwner { require( _newAmount > 0 && _newAmount <= (_totalSupply * 5) / 1000, "Minimum swap amount must be greater than 0 and less than 0.5% of total supply!" ); swapTokensAtAmount = _newAmount; emit SwapThresholdUpdated(swapTokensAtAmount); } function setExcludedAdd( address _address, bool _stat ) external onlyOwner { excluded[_address] = _stat; emit Exclude(_address, _stat); } function checkExcluded(address _address) external view returns (bool) { return excluded[_address]; } function setMaxWallet(uint256 amount) external onlyOwner { maxWallet = amount; emit MaxWalletChanged(amount); } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"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":"uint256","name":"_trFee","type":"uint256"}],"name":"BuyFeesUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_target","type":"address"},{"indexed":true,"internalType":"bool","name":"_status","type":"bool"}],"name":"Exclude","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"bool","name":"_status","type":"bool"}],"name":"InternalSwapStatusUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"percentage","type":"uint256"}],"name":"MaxWalletChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"_trFee","type":"uint256"}],"name":"SellFeesUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"_newThreshold","type":"uint256"}],"name":"SwapThresholdUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"_trWallet","type":"address"}],"name":"marketingWalletChanged","type":"event"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[],"name":"buyTax","outputs":[{"internalType":"uint256","name":"marketingTax","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"checkExcluded","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"disableLimits","outputs":[],"stateMutability":"nonpayable","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":"isSwapping","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"nothingEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pairAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"marketingTax","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_stat","type":"bool"}],"name":"setExcludedAdd","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newAmount","type":"uint256"}],"name":"setSwapTokensAtAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_marketingTax","type":"uint256"}],"name":"setbuyTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_marketingTax","type":"uint256"}],"name":"setsellTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"transferTax","outputs":[{"internalType":"uint256","name":"marketingTax","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapRouter","outputs":[{"internalType":"contract DexRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
600780546001600160b81b03191674015aa1c9f2e1612bb7b68ed591860fbe745147cb4d179055600060c0819052600855600f60e08190526009819055610120604052610100819052600a556127106200006569d3c21bcecceda100000060026200040b565b6200007191906200042b565b600b556002600c553480156200008657600080fd5b50604051806040016040528060078152602001666e6f7468696e6760c81b815250604051806040016040528060018152602001600160fd1b8152508160039081620000d29190620004f2565b506004620000e18282620004f2565b5050506000620000f66200032660201b60201c565b600580546001600160a01b0319166001600160a01b038316908117909155604051919250906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350737a250d5630b4cf539739df2c5dacb4c659f2488d60808190526040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200019a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001c09190620005be565b6001600160a01b031663c9c65396306080516001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000210573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002369190620005be565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801562000284573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002aa9190620005be565b6001600160a01b0390811660a052336000818152600660205260408082208054600160ff199182168117909255600754861684528284208054821683179055608051909516835281832080548616821790553083529120805490931617909155620003209069d3c21bcecceda10000006200032a565b62000606565b3390565b6001600160a01b038216620003855760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b8060026000828254620003999190620005f0565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052601160045260246000fd5b8082028115828204841417620004255762000425620003f5565b92915050565b6000826200044957634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200047957607f821691505b6020821081036200049a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620003f057600081815260208120601f850160051c81016020861015620004c95750805b601f850160051c820191505b81811015620004ea57828155600101620004d5565b505050505050565b81516001600160401b038111156200050e576200050e6200044e565b62000526816200051f845462000464565b84620004a0565b602080601f8311600181146200055e5760008415620005455750858301515b600019600386901b1c1916600185901b178555620004ea565b600085815260208120601f198616915b828110156200058f578886015182559484019460019091019084016200056e565b5085821015620005ae5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215620005d157600080fd5b81516001600160a01b0381168114620005e957600080fd5b9392505050565b80820180821115620004255762000425620003f5565b60805160a051611a546200065d6000396000818161052e01528181610f960152818161110d015281816111e2015261121601526000818161040a0152818161157c0152818161163501526116710152611a546000f3fe6080604052600436106101f25760003560e01c806375f0a8741161010d578063a9059cbb116100a0578063dd62ed3e1161006f578063dd62ed3e146105c8578063e2f45605146105e8578063f8b45b05146105fe578063f928364c14610614578063f98be8ad1461062957600080fd5b8063a9059cbb14610550578063afa4f3b214610570578063b886311514610590578063cc1776d3146105b157600080fd5b80638da5cb5b116100dc5780638da5cb5b146104c957806395d89b41146104e7578063a457c2d7146104fc578063a8b089821461051c57600080fd5b806375f0a874146104445780637a1ddc51146104645780637cb52737146104795780638124f7ac146104b257600080fd5b80634a74bb02116101855780635d0044ca116101545780635d0044ca1461038d57806370a08231146103ad578063715018a6146103e3578063735de9f7146103f857600080fd5b80634a74bb02146103145780634ada218b146103355780634d5b15d4146103565780634f7041a51461037657600080fd5b806323b872dd116101c157806323b872dd1461029a578063313ce567146102ba57806339509351146102d65780633eaaf86b146102f657600080fd5b806306fdde03146101fe578063095ea7b31461022957806312848ffd1461025957806318160ddd1461027b57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610649565b60405161022091906116dd565b60405180910390f35b34801561023557600080fd5b50610249610244366004611743565b6106db565b6040519015158152602001610220565b34801561026557600080fd5b5061027961027436600461176f565b6106f5565b005b34801561028757600080fd5b506002545b604051908152602001610220565b3480156102a657600080fd5b506102496102b53660046117ad565b61077c565b3480156102c657600080fd5b5060405160128152602001610220565b3480156102e257600080fd5b506102496102f1366004611743565b6107a2565b34801561030257600080fd5b5061028c69d3c21bcecceda100000081565b34801561032057600080fd5b5060075461024990600160a01b900460ff1681565b34801561034157600080fd5b5060075461024990600160b01b900460ff1681565b34801561036257600080fd5b506102796103713660046117ee565b6107c4565b34801561038257600080fd5b5060095461028c9081565b34801561039957600080fd5b506102796103a83660046117ee565b610842565b3480156103b957600080fd5b5061028c6103c8366004611807565b6001600160a01b031660009081526020819052604090205490565b3480156103ef57600080fd5b506102796108a7565b34801561040457600080fd5b5061042c7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b039091168152602001610220565b34801561045057600080fd5b5060075461042c906001600160a01b031681565b34801561047057600080fd5b5061027961091b565b34801561048557600080fd5b50610249610494366004611807565b6001600160a01b031660009081526006602052604090205460ff1690565b3480156104be57600080fd5b5060085461028c9081565b3480156104d557600080fd5b506005546001600160a01b031661042c565b3480156104f357600080fd5b506102136109b4565b34801561050857600080fd5b50610249610517366004611743565b6109c3565b34801561052857600080fd5b5061042c7f000000000000000000000000000000000000000000000000000000000000000081565b34801561055c57600080fd5b5061024961056b366004611743565b610a49565b34801561057c57600080fd5b5061027961058b3660046117ee565b610a57565b34801561059c57600080fd5b5060075461024990600160a81b900460ff1681565b3480156105bd57600080fd5b50600a5461028c9081565b3480156105d457600080fd5b5061028c6105e3366004611824565b610b6e565b3480156105f457600080fd5b5061028c600b5481565b34801561060a57600080fd5b5061028c600c5481565b34801561062057600080fd5b50610279610b99565b34801561063557600080fd5b506102796106443660046117ee565b610bcf565b60606003805461065890611852565b80601f016020809104026020016040519081016040528092919081815260200182805461068490611852565b80156106d15780601f106106a6576101008083540402835291602001916106d1565b820191906000526020600020905b8154815290600101906020018083116106b457829003601f168201915b5050505050905090565b6000336106e9818585610c4d565b60019150505b92915050565b6005546001600160a01b031633146107285760405162461bcd60e51b815260040161071f9061188c565b60405180910390fd5b6001600160a01b038216600081815260066020526040808220805460ff191685151590811790915590519092917f3192caa254d3e1ad957995cfc6c8fbb960383bef7c341a220215553e91070df391a35050565b60003361078a858285610d71565b610795858585610deb565b60019150505b9392505050565b6000336106e98185856107b58383610b6e565b6107bf91906118d7565b610c4d565b6005546001600160a01b031633146107ee5760405162461bcd60e51b815260040161071f9061188c565b6009819055601e8111156108145760405162461bcd60e51b815260040161071f906118ea565b60405181907f491005465ab6f82fd10f4b13a1b1e5ca452bc4856b019f63775e33a6b1ad2feb90600090a250565b6005546001600160a01b0316331461086c5760405162461bcd60e51b815260040161071f9061188c565b600c8190556040518181527fd79b8c9aaacc4db9fee532137a1ade40c7238016bff71cb2abc1a3cf8b6cdff69060200160405180910390a150565b6005546001600160a01b031633146108d15760405162461bcd60e51b815260040161071f9061188c565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b031633146109455760405162461bcd60e51b815260040161071f9061188c565b600754600160b01b900460ff161561099f5760405162461bcd60e51b815260206004820152601a60248201527f54726164696e6720697320616c726561647920656e61626c6564000000000000604482015260640161071f565b6007805460ff60b01b1916600160b01b179055565b60606004805461065890611852565b600033816109d18286610b6e565b905083811015610a315760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161071f565b610a3e8286868403610c4d565b506001949350505050565b6000336106e9818585610deb565b6005546001600160a01b03163314610a815760405162461bcd60e51b815260040161071f9061188c565b600081118015610ab257506103e8610aa469d3c21bcecceda1000000600561192e565b610aae9190611945565b8111155b610b3b5760405162461bcd60e51b815260206004820152604e60248201527f4d696e696d756d207377617020616d6f756e74206d757374206265206772656160448201527f746572207468616e203020616e64206c657373207468616e20302e3525206f6660648201526d20746f74616c20737570706c792160901b608482015260a40161071f565b600b81905560405181907f18ff2fc8464635e4f668567019152095047e34d7a2ab4b97661ba4dc7fd0647690600090a250565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6005546001600160a01b03163314610bc35760405162461bcd60e51b815260040161071f9061188c565b6064600c556000600855565b6005546001600160a01b03163314610bf95760405162461bcd60e51b815260040161071f9061188c565b600a819055601e811115610c1f5760405162461bcd60e51b815260040161071f906118ea565b60405181907f16df2c25b3392f376a685a3826b941b25140108d95899d6b1bd983feafbc1c5590600090a250565b6001600160a01b038316610caf5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161071f565b6001600160a01b038216610d105760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161071f565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610d7d8484610b6e565b90506000198114610de55781811015610dd85760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161071f565b610de58484848403610c4d565b50505050565b6001600160a01b038316610e415760405162461bcd60e51b815260206004820152601a60248201527f7472616e736665722066726f6d2061646472657373207a65726f000000000000604482015260640161071f565b6001600160a01b038216610e975760405162461bcd60e51b815260206004820152601860248201527f7472616e7366657220746f2061646472657373207a65726f0000000000000000604482015260640161071f565b60008111610ef95760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161071f565b60006064600c5469d3c21bcecceda1000000610f15919061192e565b610f1f9190611945565b6001600160a01b03851660009081526006602052604090205490915060ff16158015610f6457506001600160a01b03831660009081526006602052604090205460ff16155b8015610f7857506001600160a01b03831615155b8015610f8d57506001600160a01b0383163014155b8015610fcb57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b15611049578082610ff1856001600160a01b031660009081526020819052604090205490565b610ffb91906118d7565b11156110495760405162461bcd60e51b815260206004820152601d60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e74000000604482015260640161071f565b600061105685858561118a565b600b5430600090815260208181526040808320546001600160a01b038b16845260069092529091205492935010159060ff161580156110ae57506001600160a01b03851660009081526006602052604090205460ff16155b1561117757600754600160b01b900460ff166111015760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b604482015260640161071f565b846001600160a01b03167f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031614801561114b5750600754600160a01b900460ff165b80156111545750805b801561116a5750600754600160a81b900460ff16155b1561117757611177611291565b611182868684611381565b505050505050565b6001600160a01b03831660009081526006602052604081205460ff16806111c957506001600160a01b03831660009081526006602052604090205460ff165b156111d557508061079b565b6008546001600160a01b037f00000000000000000000000000000000000000000000000000000000000000008116908516036112145750600a54611252565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03160361125257506009545b6000811561127d576064611266838661192e565b6112709190611945565b905061127d863083611381565b6112878185611967565b9695505050505050565b6007805460ff60a81b1916600160a81b179055306000908152602081905260408120549050806000036112c15750565b306000908152602081905260409020546112da90611525565b6007546040516000916001600160a01b03169047908381818185875af1925050503d8060008114611327576040519150601f19603f3d011682016040523d82523d6000602084013e61132c565b606091505b50509050806113705760405162461bcd60e51b815260206004820152601060248201526f2a3930b739b332b9103330b4b632b21760811b604482015260640161071f565b50506007805460ff60a81b19169055565b6001600160a01b0383166113e55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161071f565b6001600160a01b0382166114475760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161071f565b6001600160a01b038316600090815260208190526040902054818110156114bf5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161071f565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610de5565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061155a5761155a61197a565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115fc9190611990565b8160018151811061160f5761160f61197a565b60200260200101906001600160a01b031690816001600160a01b03168152505061165a307f000000000000000000000000000000000000000000000000000000000000000084610c4d565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac947906116af9085906000908690309042906004016119ad565b600060405180830381600087803b1580156116c957600080fd5b505af1158015611182573d6000803e3d6000fd5b600060208083528351808285015260005b8181101561170a578581018301518582016040015282016116ee565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461174057600080fd5b50565b6000806040838503121561175657600080fd5b82356117618161172b565b946020939093013593505050565b6000806040838503121561178257600080fd5b823561178d8161172b565b9150602083013580151581146117a257600080fd5b809150509250929050565b6000806000606084860312156117c257600080fd5b83356117cd8161172b565b925060208401356117dd8161172b565b929592945050506040919091013590565b60006020828403121561180057600080fd5b5035919050565b60006020828403121561181957600080fd5b813561079b8161172b565b6000806040838503121561183757600080fd5b82356118428161172b565b915060208301356117a28161172b565b600181811c9082168061186657607f821691505b60208210810361188657634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ef576106ef6118c1565b60208082526024908201527f43616e206e6f742073657420627579206665657320686967686572207468616e6040820152632033302560e01b606082015260800190565b80820281158282048414176106ef576106ef6118c1565b60008261196257634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ef576106ef6118c1565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119a257600080fd5b815161079b8161172b565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119fd5784516001600160a01b0316835293830193918301916001016119d8565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212200ac1375bb173fa424fa7658a61d57a178d694597a563c54362f58e73867ad87e64736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101f25760003560e01c806375f0a8741161010d578063a9059cbb116100a0578063dd62ed3e1161006f578063dd62ed3e146105c8578063e2f45605146105e8578063f8b45b05146105fe578063f928364c14610614578063f98be8ad1461062957600080fd5b8063a9059cbb14610550578063afa4f3b214610570578063b886311514610590578063cc1776d3146105b157600080fd5b80638da5cb5b116100dc5780638da5cb5b146104c957806395d89b41146104e7578063a457c2d7146104fc578063a8b089821461051c57600080fd5b806375f0a874146104445780637a1ddc51146104645780637cb52737146104795780638124f7ac146104b257600080fd5b80634a74bb02116101855780635d0044ca116101545780635d0044ca1461038d57806370a08231146103ad578063715018a6146103e3578063735de9f7146103f857600080fd5b80634a74bb02146103145780634ada218b146103355780634d5b15d4146103565780634f7041a51461037657600080fd5b806323b872dd116101c157806323b872dd1461029a578063313ce567146102ba57806339509351146102d65780633eaaf86b146102f657600080fd5b806306fdde03146101fe578063095ea7b31461022957806312848ffd1461025957806318160ddd1461027b57600080fd5b366101f957005b600080fd5b34801561020a57600080fd5b50610213610649565b60405161022091906116dd565b60405180910390f35b34801561023557600080fd5b50610249610244366004611743565b6106db565b6040519015158152602001610220565b34801561026557600080fd5b5061027961027436600461176f565b6106f5565b005b34801561028757600080fd5b506002545b604051908152602001610220565b3480156102a657600080fd5b506102496102b53660046117ad565b61077c565b3480156102c657600080fd5b5060405160128152602001610220565b3480156102e257600080fd5b506102496102f1366004611743565b6107a2565b34801561030257600080fd5b5061028c69d3c21bcecceda100000081565b34801561032057600080fd5b5060075461024990600160a01b900460ff1681565b34801561034157600080fd5b5060075461024990600160b01b900460ff1681565b34801561036257600080fd5b506102796103713660046117ee565b6107c4565b34801561038257600080fd5b5060095461028c9081565b34801561039957600080fd5b506102796103a83660046117ee565b610842565b3480156103b957600080fd5b5061028c6103c8366004611807565b6001600160a01b031660009081526020819052604090205490565b3480156103ef57600080fd5b506102796108a7565b34801561040457600080fd5b5061042c7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b6040516001600160a01b039091168152602001610220565b34801561045057600080fd5b5060075461042c906001600160a01b031681565b34801561047057600080fd5b5061027961091b565b34801561048557600080fd5b50610249610494366004611807565b6001600160a01b031660009081526006602052604090205460ff1690565b3480156104be57600080fd5b5060085461028c9081565b3480156104d557600080fd5b506005546001600160a01b031661042c565b3480156104f357600080fd5b506102136109b4565b34801561050857600080fd5b50610249610517366004611743565b6109c3565b34801561052857600080fd5b5061042c7f000000000000000000000000c194a36c89f579f054fb81fa6e16a77eb52fd2de81565b34801561055c57600080fd5b5061024961056b366004611743565b610a49565b34801561057c57600080fd5b5061027961058b3660046117ee565b610a57565b34801561059c57600080fd5b5060075461024990600160a81b900460ff1681565b3480156105bd57600080fd5b50600a5461028c9081565b3480156105d457600080fd5b5061028c6105e3366004611824565b610b6e565b3480156105f457600080fd5b5061028c600b5481565b34801561060a57600080fd5b5061028c600c5481565b34801561062057600080fd5b50610279610b99565b34801561063557600080fd5b506102796106443660046117ee565b610bcf565b60606003805461065890611852565b80601f016020809104026020016040519081016040528092919081815260200182805461068490611852565b80156106d15780601f106106a6576101008083540402835291602001916106d1565b820191906000526020600020905b8154815290600101906020018083116106b457829003601f168201915b5050505050905090565b6000336106e9818585610c4d565b60019150505b92915050565b6005546001600160a01b031633146107285760405162461bcd60e51b815260040161071f9061188c565b60405180910390fd5b6001600160a01b038216600081815260066020526040808220805460ff191685151590811790915590519092917f3192caa254d3e1ad957995cfc6c8fbb960383bef7c341a220215553e91070df391a35050565b60003361078a858285610d71565b610795858585610deb565b60019150505b9392505050565b6000336106e98185856107b58383610b6e565b6107bf91906118d7565b610c4d565b6005546001600160a01b031633146107ee5760405162461bcd60e51b815260040161071f9061188c565b6009819055601e8111156108145760405162461bcd60e51b815260040161071f906118ea565b60405181907f491005465ab6f82fd10f4b13a1b1e5ca452bc4856b019f63775e33a6b1ad2feb90600090a250565b6005546001600160a01b0316331461086c5760405162461bcd60e51b815260040161071f9061188c565b600c8190556040518181527fd79b8c9aaacc4db9fee532137a1ade40c7238016bff71cb2abc1a3cf8b6cdff69060200160405180910390a150565b6005546001600160a01b031633146108d15760405162461bcd60e51b815260040161071f9061188c565b6005546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600580546001600160a01b0319169055565b6005546001600160a01b031633146109455760405162461bcd60e51b815260040161071f9061188c565b600754600160b01b900460ff161561099f5760405162461bcd60e51b815260206004820152601a60248201527f54726164696e6720697320616c726561647920656e61626c6564000000000000604482015260640161071f565b6007805460ff60b01b1916600160b01b179055565b60606004805461065890611852565b600033816109d18286610b6e565b905083811015610a315760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b606482015260840161071f565b610a3e8286868403610c4d565b506001949350505050565b6000336106e9818585610deb565b6005546001600160a01b03163314610a815760405162461bcd60e51b815260040161071f9061188c565b600081118015610ab257506103e8610aa469d3c21bcecceda1000000600561192e565b610aae9190611945565b8111155b610b3b5760405162461bcd60e51b815260206004820152604e60248201527f4d696e696d756d207377617020616d6f756e74206d757374206265206772656160448201527f746572207468616e203020616e64206c657373207468616e20302e3525206f6660648201526d20746f74616c20737570706c792160901b608482015260a40161071f565b600b81905560405181907f18ff2fc8464635e4f668567019152095047e34d7a2ab4b97661ba4dc7fd0647690600090a250565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6005546001600160a01b03163314610bc35760405162461bcd60e51b815260040161071f9061188c565b6064600c556000600855565b6005546001600160a01b03163314610bf95760405162461bcd60e51b815260040161071f9061188c565b600a819055601e811115610c1f5760405162461bcd60e51b815260040161071f906118ea565b60405181907f16df2c25b3392f376a685a3826b941b25140108d95899d6b1bd983feafbc1c5590600090a250565b6001600160a01b038316610caf5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161071f565b6001600160a01b038216610d105760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161071f565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000610d7d8484610b6e565b90506000198114610de55781811015610dd85760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000604482015260640161071f565b610de58484848403610c4d565b50505050565b6001600160a01b038316610e415760405162461bcd60e51b815260206004820152601a60248201527f7472616e736665722066726f6d2061646472657373207a65726f000000000000604482015260640161071f565b6001600160a01b038216610e975760405162461bcd60e51b815260206004820152601860248201527f7472616e7366657220746f2061646472657373207a65726f0000000000000000604482015260640161071f565b60008111610ef95760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161071f565b60006064600c5469d3c21bcecceda1000000610f15919061192e565b610f1f9190611945565b6001600160a01b03851660009081526006602052604090205490915060ff16158015610f6457506001600160a01b03831660009081526006602052604090205460ff16155b8015610f7857506001600160a01b03831615155b8015610f8d57506001600160a01b0383163014155b8015610fcb57507f000000000000000000000000c194a36c89f579f054fb81fa6e16a77eb52fd2de6001600160a01b0316836001600160a01b031614155b15611049578082610ff1856001600160a01b031660009081526020819052604090205490565b610ffb91906118d7565b11156110495760405162461bcd60e51b815260206004820152601d60248201527f45786365656473206d6178696d756d2077616c6c657420616d6f756e74000000604482015260640161071f565b600061105685858561118a565b600b5430600090815260208181526040808320546001600160a01b038b16845260069092529091205492935010159060ff161580156110ae57506001600160a01b03851660009081526006602052604090205460ff16155b1561117757600754600160b01b900460ff166111015760405162461bcd60e51b815260206004820152601260248201527154726164696e67206e6f742061637469766560701b604482015260640161071f565b846001600160a01b03167f000000000000000000000000c194a36c89f579f054fb81fa6e16a77eb52fd2de6001600160a01b031614801561114b5750600754600160a01b900460ff165b80156111545750805b801561116a5750600754600160a81b900460ff16155b1561117757611177611291565b611182868684611381565b505050505050565b6001600160a01b03831660009081526006602052604081205460ff16806111c957506001600160a01b03831660009081526006602052604090205460ff165b156111d557508061079b565b6008546001600160a01b037f000000000000000000000000c194a36c89f579f054fb81fa6e16a77eb52fd2de8116908516036112145750600a54611252565b7f000000000000000000000000c194a36c89f579f054fb81fa6e16a77eb52fd2de6001600160a01b0316856001600160a01b03160361125257506009545b6000811561127d576064611266838661192e565b6112709190611945565b905061127d863083611381565b6112878185611967565b9695505050505050565b6007805460ff60a81b1916600160a81b179055306000908152602081905260408120549050806000036112c15750565b306000908152602081905260409020546112da90611525565b6007546040516000916001600160a01b03169047908381818185875af1925050503d8060008114611327576040519150601f19603f3d011682016040523d82523d6000602084013e61132c565b606091505b50509050806113705760405162461bcd60e51b815260206004820152601060248201526f2a3930b739b332b9103330b4b632b21760811b604482015260640161071f565b50506007805460ff60a81b19169055565b6001600160a01b0383166113e55760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161071f565b6001600160a01b0382166114475760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161071f565b6001600160a01b038316600090815260208190526040902054818110156114bf5760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b606482015260840161071f565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3610de5565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061155a5761155a61197a565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156115d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115fc9190611990565b8160018151811061160f5761160f61197a565b60200260200101906001600160a01b031690816001600160a01b03168152505061165a307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610c4d565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac947906116af9085906000908690309042906004016119ad565b600060405180830381600087803b1580156116c957600080fd5b505af1158015611182573d6000803e3d6000fd5b600060208083528351808285015260005b8181101561170a578581018301518582016040015282016116ee565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461174057600080fd5b50565b6000806040838503121561175657600080fd5b82356117618161172b565b946020939093013593505050565b6000806040838503121561178257600080fd5b823561178d8161172b565b9150602083013580151581146117a257600080fd5b809150509250929050565b6000806000606084860312156117c257600080fd5b83356117cd8161172b565b925060208401356117dd8161172b565b929592945050506040919091013590565b60006020828403121561180057600080fd5b5035919050565b60006020828403121561181957600080fd5b813561079b8161172b565b6000806040838503121561183757600080fd5b82356118428161172b565b915060208301356117a28161172b565b600181811c9082168061186657607f821691505b60208210810361188657634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b808201808211156106ef576106ef6118c1565b60208082526024908201527f43616e206e6f742073657420627579206665657320686967686572207468616e6040820152632033302560e01b606082015260800190565b80820281158282048414176106ef576106ef6118c1565b60008261196257634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106ef576106ef6118c1565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156119a257600080fd5b815161079b8161172b565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119fd5784516001600160a01b0316835293830193918301916001016119d8565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212200ac1375bb173fa424fa7658a61d57a178d694597a563c54362f58e73867ad87e64736f6c63430008130033
Deployed Bytecode Sourcemap
20331:6046:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8502:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10862:201;;;;;;;;;;-1:-1:-1;10862:201:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;10862:201:0;1023:187:1;25898:183:0;;;;;;;;;;-1:-1:-1;25898:183:0;;;;;:::i;:::-;;:::i;:::-;;9631:108;;;;;;;;;;-1:-1:-1;9719:12:0;;9631:108;;;1782:25:1;;;1770:2;1755:18;9631:108:0;1636:177:1;11643:261:0;;;;;;;;;;-1:-1:-1;11643:261:0;;;;;:::i;:::-;;:::i;9473:93::-;;;;;;;;;;-1:-1:-1;9473:93:0;;9556:2;2421:36:1;;2409:2;2394:18;9473:93:0;2279:184:1;12313:238:0;;;;;;;;;;-1:-1:-1;12313:238:0;;;;;:::i;:::-;;:::i;20730:53::-;;;;;;;;;;;;20769:14;20730:53;;20603:40;;;;;;;;;;-1:-1:-1;20603:40:0;;;;-1:-1:-1;;;20603:40:0;;;;;;20687:34;;;;;;;;;;-1:-1:-1;20687:34:0;;;;-1:-1:-1;;;20687:34:0;;;;;;25021:239;;;;;;;;;;-1:-1:-1;25021:239:0;;;;;:::i;:::-;;:::i;20890:31::-;;;;;;;;;;-1:-1:-1;20890:31:0;;;;;;26211:126;;;;;;;;;;-1:-1:-1;26211:126:0;;;;;:::i;:::-;;:::i;9802:127::-;;;;;;;;;;-1:-1:-1;9802:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;9903:18:0;9876:7;9903:18;;;;;;;;;;;;9802:127;6593:148;;;;;;;;;;;;;:::i;20511:40::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;3086:32:1;;;3068:51;;3056:2;3041:18;20511:40:0;2905:220:1;20429:75:0;;;;;;;;;;-1:-1:-1;20429:75:0;;;;-1:-1:-1;;;;;20429:75:0;;;22009:150;;;;;;;;;;;;;:::i;26089:114::-;;;;;;;;;;-1:-1:-1;26089:114:0;;;;;:::i;:::-;-1:-1:-1;;;;;26177:18:0;26153:4;26177:18;;;:8;:18;;;;;;;;;26089:114;20848:35;;;;;;;;;;-1:-1:-1;20848:35:0;;;;;;6379:79;;;;;;;;;;-1:-1:-1;6444:6:0;;-1:-1:-1;;;;;6444:6:0;6379:79;;8721:104;;;;;;;;;;;;;:::i;13054:436::-;;;;;;;;;;-1:-1:-1;13054:436:0;;;;;:::i;:::-;;:::i;20558:36::-;;;;;;;;;;;;;;;10135:193;;;;;;;;;;-1:-1:-1;10135:193:0;;;;;:::i;:::-;;:::i;25518:372::-;;;;;;;;;;-1:-1:-1;25518:372:0;;;;;:::i;:::-;;:::i;20650:30::-;;;;;;;;;;-1:-1:-1;20650:30:0;;;;-1:-1:-1;;;20650:30:0;;;;;;20928:32;;;;;;;;;;-1:-1:-1;20928:32:0;;;;;;10391:151;;;;;;;;;;-1:-1:-1;10391:151:0;;;;;:::i;:::-;;:::i;20969:62::-;;;;;;;;;;;;;;;;21038:28;;;;;;;;;;;;;;;;24893:118;;;;;;;;;;;;;:::i;25268:242::-;;;;;;;;;;-1:-1:-1;25268:242:0;;;;;:::i;:::-;;:::i;8502:100::-;8556:13;8589:5;8582:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8502:100;:::o;10862:201::-;10945:4;6034:10;11001:32;6034:10;11017:7;11026:6;11001:8;:32::i;:::-;11051:4;11044:11;;;10862:201;;;;;:::o;25898:183::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;26007:18:0;::::1;;::::0;;;:8:::1;:18;::::0;;;;;:26;;-1:-1:-1;;26007:26:0::1;::::0;::::1;;::::0;;::::1;::::0;;;26049:24;;26007:26;;:18;26049:24:::1;::::0;::::1;25898:183:::0;;:::o;11643:261::-;11740:4;6034:10;11798:38;11814:4;6034:10;11829:6;11798:15;:38::i;:::-;11847:27;11857:4;11863:2;11867:6;11847:9;:27::i;:::-;11892:4;11885:11;;;11643:261;;;;;;:::o;12313:238::-;12401:4;6034:10;12457:64;6034:10;12473:7;12510:10;12482:25;6034:10;12473:7;12482:9;:25::i;:::-;:38;;;;:::i;:::-;12457:8;:64::i;25021:239::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;25093:6:::1;:35:::0;;;25164:2:::1;25147:19:::0;::::1;;25139:68;;;;-1:-1:-1::0;;;25139:68:0::1;;;;;;;:::i;:::-;25223:29;::::0;25238:13;;25223:29:::1;::::0;;;::::1;25021:239:::0;:::o;26211:126::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;26275:9:::1;:18:::0;;;26305:24:::1;::::0;1782:25:1;;;26305:24:0::1;::::0;1770:2:1;1755:18;26305:24:0::1;;;;;;;26211:126:::0;:::o;6593:148::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;6684:6:::1;::::0;6663:40:::1;::::0;6700:1:::1;::::0;-1:-1:-1;;;;;6684:6:0::1;::::0;6663:40:::1;::::0;6700:1;;6663:40:::1;6714:6;:19:::0;;-1:-1:-1;;;;;;6714:19:0::1;::::0;;6593:148::o;22009:150::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;22074:14:::1;::::0;-1:-1:-1;;;22074:14:0;::::1;;;22073:15;22065:54;;;::::0;-1:-1:-1;;;22065:54:0;;5346:2:1;22065:54:0::1;::::0;::::1;5328:21:1::0;5385:2;5365:18;;;5358:30;5424:28;5404:18;;;5397:56;5470:18;;22065:54:0::1;5144:350:1::0;22065:54:0::1;22130:14;:21:::0;;-1:-1:-1;;;;22130:21:0::1;-1:-1:-1::0;;;22130:21:0::1;::::0;;22009:150::o;8721:104::-;8777:13;8810:7;8803:14;;;;;:::i;13054:436::-;13147:4;6034:10;13147:4;13230:25;6034:10;13247:7;13230:9;:25::i;:::-;13203:52;;13294:15;13274:16;:35;;13266:85;;;;-1:-1:-1;;;13266:85:0;;5701:2:1;13266:85:0;;;5683:21:1;5740:2;5720:18;;;5713:30;5779:34;5759:18;;;5752:62;-1:-1:-1;;;5830:18:1;;;5823:35;5875:19;;13266:85:0;5499:401:1;13266:85:0;13387:60;13396:5;13403:7;13431:15;13412:16;:34;13387:8;:60::i;:::-;-1:-1:-1;13478:4:0;;13054:436;-1:-1:-1;;;;13054:436:0:o;10135:193::-;10214:4;6034:10;10270:28;6034:10;10287:2;10291:6;10270:9;:28::i;25518:372::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;25634:1:::1;25621:10;:14;:57;;;;-1:-1:-1::0;25674:4:0::1;25654:16;20769:14;25669:1;25654:16;:::i;:::-;25653:25;;;;:::i;:::-;25639:10;:39;;25621:57;25599:185;;;::::0;-1:-1:-1;;;25599:185:0;;6502:2:1;25599:185:0::1;::::0;::::1;6484:21:1::0;6541:2;6521:18;;;6514:30;6580:34;6560:18;;;6553:62;6651:34;6631:18;;;6624:62;-1:-1:-1;;;6702:19:1;;;6695:45;6757:19;;25599:185:0::1;6300:482:1::0;25599:185:0::1;25795:18;:31:::0;;;25842:40:::1;::::0;25816:10;;25842:40:::1;::::0;;;::::1;25518:372:::0;:::o;10391:151::-;-1:-1:-1;;;;;10507:18:0;;;10480:7;10507:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;10391:151::o;24893:118::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;24959:3:::1;24947:9;:15:::0;25000:1:::1;24973:11;:28:::0;24893:118::o;25268:242::-;6506:6;;-1:-1:-1;;;;;6506:6:0;6034:10;6506:22;6498:67;;;;-1:-1:-1;;;6498:67:0;;;;;;;:::i;:::-;25341:7:::1;:36:::0;;;25413:2:::1;25396:19:::0;::::1;;25388:68;;;;-1:-1:-1::0;;;25388:68:0::1;;;;;;;:::i;:::-;25472:30;::::0;25488:13;;25472:30:::1;::::0;;;::::1;25268:242:::0;:::o;17047:346::-;-1:-1:-1;;;;;17149:19:0;;17141:68;;;;-1:-1:-1;;;17141:68:0;;6989:2:1;17141:68:0;;;6971:21:1;7028:2;7008:18;;;7001:30;7067:34;7047:18;;;7040:62;-1:-1:-1;;;7118:18:1;;;7111:34;7162:19;;17141:68:0;6787:400:1;17141:68:0;-1:-1:-1;;;;;17228:21:0;;17220:68;;;;-1:-1:-1;;;17220:68:0;;7394:2:1;17220:68:0;;;7376:21:1;7433:2;7413:18;;;7406:30;7472:34;7452:18;;;7445:62;-1:-1:-1;;;7523:18:1;;;7516:32;7565:19;;17220:68:0;7192:398:1;17220:68:0;-1:-1:-1;;;;;17301:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;17353:32;;1782:25:1;;;17353:32:0;;1755:18:1;17353:32:0;;;;;;;17047:346;;;:::o;17684:419::-;17785:24;17812:25;17822:5;17829:7;17812:9;:25::i;:::-;17785:52;;-1:-1:-1;;17852:16:0;:37;17848:248;;17934:6;17914:16;:26;;17906:68;;;;-1:-1:-1;;;17906:68:0;;7797:2:1;17906:68:0;;;7779:21:1;7836:2;7816:18;;;7809:30;7875:31;7855:18;;;7848:59;7924:18;;17906:68:0;7595:353:1;17906:68:0;18018:51;18027:5;18034:7;18062:6;18043:16;:25;18018:8;:51::i;:::-;17774:329;17684:419;;;:::o;23703:1182::-;-1:-1:-1;;;;;23826:19:0;;23818:58;;;;-1:-1:-1;;;23818:58:0;;8155:2:1;23818:58:0;;;8137:21:1;8194:2;8174:18;;;8167:30;8233:28;8213:18;;;8206:56;8279:18;;23818:58:0;7953:350:1;23818:58:0;-1:-1:-1;;;;;23891:17:0;;23883:54;;;;-1:-1:-1;;;23883:54:0;;8510:2:1;23883:54:0;;;8492:21:1;8549:2;8529:18;;;8522:30;8588:26;8568:18;;;8561:54;8632:18;;23883:54:0;8308:348:1;23883:54:0;23962:1;23952:7;:11;23944:65;;;;-1:-1:-1;;;23944:65:0;;8863:2:1;23944:65:0;;;8845:21:1;8902:2;8882:18;;;8875:30;8941:34;8921:18;;;8914:62;-1:-1:-1;;;8992:18:1;;;8985:39;9041:19;;23944:65:0;8661:405:1;23944:65:0;24122:23;24175:3;24163:9;;20769:14;24148:24;;;;:::i;:::-;:30;;;;:::i;:::-;-1:-1:-1;;;;;24260:15:0;;;;;;:8;:15;;;;;;24122:56;;-1:-1:-1;24260:15:0;;24259:16;:34;;;;-1:-1:-1;;;;;;24280:13:0;;;;;;:8;:13;;;;;;;;24279:14;24259:34;:55;;;;-1:-1:-1;;;;;;24297:17:0;;;;24259:55;:79;;;;-1:-1:-1;;;;;;24318:20:0;;24333:4;24318:20;;24259:79;:101;;;;;24349:11;-1:-1:-1;;;;;24342:18:0;:3;-1:-1:-1;;;;;24342:18:0;;;24259:101;24255:211;;;24409:15;24398:7;24381:14;24391:3;-1:-1:-1;;;;;9903:18:0;9876:7;9903:18;;;;;;;;;;;;9802:127;24381:14;:24;;;;:::i;:::-;:43;;24373:85;;;;-1:-1:-1;;;24373:85:0;;9273:2:1;24373:85:0;;;9255:21:1;9312:2;9292:18;;;9285:30;9351:31;9331:18;;;9324:59;9400:18;;24373:85:0;9071:353:1;24373:85:0;24474:18;24495:32;24507:5;24514:3;24519:7;24495:11;:32::i;:::-;24579:18;;24569:4;24536:12;9903:18;;;;;;;;;;;;-1:-1:-1;;;;;24609:15:0;;;;:8;:15;;;;;;;24474:53;;-1:-1:-1;;24551:46:0;;24609:15;;24608:16;:34;;;;-1:-1:-1;;;;;;24629:13:0;;;;;;:8;:13;;;;;;;;24628:14;24608:34;24604:230;;;24663:14;;-1:-1:-1;;;24663:14:0;;;;24655:45;;;;-1:-1:-1;;;24655:45:0;;9631:2:1;24655:45:0;;;9613:21:1;9670:2;9650:18;;;9643:30;-1:-1:-1;;;9689:18:1;;;9682:48;9747:18;;24655:45:0;9429:342:1;24655:45:0;24730:3;-1:-1:-1;;;;;24715:18:0;:11;-1:-1:-1;;;;;24715:18:0;;:43;;;;-1:-1:-1;24737:21:0;;-1:-1:-1;;;24737:21:0;;;;24715:43;:54;;;;;24762:7;24715:54;:69;;;;-1:-1:-1;24774:10:0;;-1:-1:-1;;;24774:10:0;;;;24773:11;24715:69;24711:116;;;24801:14;:12;:14::i;:::-;24842:39;24858:5;24865:3;24870:10;24842:15;:39::i;:::-;23811:1074;;;23703:1182;;;:::o;23025:670::-;-1:-1:-1;;;;;23167:15:0;;23143:7;23167:15;;;:8;:15;;;;;;;;;:32;;-1:-1:-1;;;;;;23186:13:0;;;;;;:8;:13;;;;;;;;23167:32;23163:79;;;-1:-1:-1;23223:7:0;23216:14;;23163:79;23273:11;:24;-1:-1:-1;;;;;23321:11:0;23314:18;;;;;;23310:171;;-1:-1:-1;23360:7:0;:20;23310:171;;;23411:11;-1:-1:-1;;;;;23402:20:0;:5;-1:-1:-1;;;;;23402:20:0;;23398:83;;-1:-1:-1;23450:6:0;:19;23398:83;23495:11;23525:12;;23521:134;;23583:3;23561:18;23571:8;23561:7;:18;:::i;:::-;23560:26;;;;:::i;:::-;23554:32;;23601:42;23617:5;23632:4;23639:3;23601:15;:42::i;:::-;23673:13;23683:3;23673:7;:13;:::i;:::-;23665:22;23025:670;-1:-1:-1;;;;;;23025:670:0:o;22167:393::-;22211:10;:17;;-1:-1:-1;;;;22211:17:0;-1:-1:-1;;;22211:17:0;;;22277:4;-1:-1:-1;9903:18:0;;;;;;;;;;;22239:44;;22299:9;22312:1;22299:14;22295:53;;22330:7;22167:393::o;22295:53::-;22386:4;9876:7;9903:18;;;;;;;;;;;22358:35;;:9;:35::i;:::-;22422:15;;:54;;22404:12;;-1:-1:-1;;;;;22422:15:0;;22450:21;;22404:12;22422:54;22404:12;22422:54;22450:21;22422:15;:54;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22403:73;;;22495:7;22487:36;;;;-1:-1:-1;;;22487:36:0;;10321:2:1;22487:36:0;;;10303:21:1;10360:2;10340:18;;;10333:30;-1:-1:-1;;;10379:18:1;;;10372:46;10435:18;;22487:36:0;10119:340:1;22487:36:0;-1:-1:-1;;22534:10:0;:18;;-1:-1:-1;;;;22534:18:0;;;22167:393::o;13960:806::-;-1:-1:-1;;;;;14057:18:0;;14049:68;;;;-1:-1:-1;;;14049:68:0;;10666:2:1;14049:68:0;;;10648:21:1;10705:2;10685:18;;;10678:30;10744:34;10724:18;;;10717:62;-1:-1:-1;;;10795:18:1;;;10788:35;10840:19;;14049:68:0;10464:401:1;14049:68:0;-1:-1:-1;;;;;14136:16:0;;14128:64;;;;-1:-1:-1;;;14128:64:0;;11072:2:1;14128:64:0;;;11054:21:1;11111:2;11091:18;;;11084:30;11150:34;11130:18;;;11123:62;-1:-1:-1;;;11201:18:1;;;11194:33;11244:19;;14128:64:0;10870:399:1;14128:64:0;-1:-1:-1;;;;;14278:15:0;;14256:19;14278:15;;;;;;;;;;;14312:21;;;;14304:72;;;;-1:-1:-1;;;14304:72:0;;11476:2:1;14304:72:0;;;11458:21:1;11515:2;11495:18;;;11488:30;11554:34;11534:18;;;11527:62;-1:-1:-1;;;11605:18:1;;;11598:36;11651:19;;14304:72:0;11274:402:1;14304:72:0;-1:-1:-1;;;;;14412:15:0;;;:9;:15;;;;;;;;;;;14430:20;;;14412:38;;14630:13;;;;;;;;;;:23;;;;;;14682:26;;1782:25:1;;;14630:13:0;;14682:26;;1755:18:1;14682:26:0;;;;;;;14721:37;18703:91;22570:447;22650:16;;;22664:1;22650:16;;;;;;;;22626:21;;22650:16;;;;;;;;;;-1:-1:-1;22650:16:0;22626:40;;22695:4;22677;22682:1;22677:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;22677:23:0;;;-1:-1:-1;;;;;22677:23:0;;;;;22721:13;-1:-1:-1;;;;;22721:18:0;;:20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22711:4;22716:1;22711:7;;;;;;;;:::i;:::-;;;;;;:30;-1:-1:-1;;;;;22711:30:0;;;-1:-1:-1;;;;;22711:30:0;;;;;22752:56;22769:4;22784:13;22800:7;22752:8;:56::i;:::-;22819:190;;-1:-1:-1;;;22819:190:0;;-1:-1:-1;;;;;22819:13:0;:64;;;;:190;;22898:7;;22920:1;;22936:4;;22963;;22983:15;;22819:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14:548:1;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1215:416::-;1280:6;1288;1341:2;1329:9;1320:7;1316:23;1312:32;1309:52;;;1357:1;1354;1347:12;1309:52;1396:9;1383:23;1415:31;1440:5;1415:31;:::i;:::-;1465:5;-1:-1:-1;1522:2:1;1507:18;;1494:32;1564:15;;1557:23;1545:36;;1535:64;;1595:1;1592;1585:12;1535:64;1618:7;1608:17;;;1215:416;;;;;:::o;1818:456::-;1895:6;1903;1911;1964:2;1952:9;1943:7;1939:23;1935:32;1932:52;;;1980:1;1977;1970:12;1932:52;2019:9;2006:23;2038:31;2063:5;2038:31;:::i;:::-;2088:5;-1:-1:-1;2145:2:1;2130:18;;2117:32;2158:33;2117:32;2158:33;:::i;:::-;1818:456;;2210:7;;-1:-1:-1;;;2264:2:1;2249:18;;;;2236:32;;1818:456::o;2468:180::-;2527:6;2580:2;2568:9;2559:7;2555:23;2551:32;2548:52;;;2596:1;2593;2586:12;2548:52;-1:-1:-1;2619:23:1;;2468:180;-1:-1:-1;2468:180:1:o;2653:247::-;2712:6;2765:2;2753:9;2744:7;2740:23;2736:32;2733:52;;;2781:1;2778;2771:12;2733:52;2820:9;2807:23;2839:31;2864:5;2839:31;:::i;3338:388::-;3406:6;3414;3467:2;3455:9;3446:7;3442:23;3438:32;3435:52;;;3483:1;3480;3473:12;3435:52;3522:9;3509:23;3541:31;3566:5;3541:31;:::i;:::-;3591:5;-1:-1:-1;3648:2:1;3633:18;;3620:32;3661:33;3620:32;3661:33;:::i;3731:380::-;3810:1;3806:12;;;;3853;;;3874:61;;3928:4;3920:6;3916:17;3906:27;;3874:61;3981:2;3973:6;3970:14;3950:18;3947:38;3944:161;;4027:10;4022:3;4018:20;4015:1;4008:31;4062:4;4059:1;4052:15;4090:4;4087:1;4080:15;3944:161;;3731:380;;;:::o;4116:356::-;4318:2;4300:21;;;4337:18;;;4330:30;4396:34;4391:2;4376:18;;4369:62;4463:2;4448:18;;4116:356::o;4477:127::-;4538:10;4533:3;4529:20;4526:1;4519:31;4569:4;4566:1;4559:15;4593:4;4590:1;4583:15;4609:125;4674:9;;;4695:10;;;4692:36;;;4708:18;;:::i;4739:400::-;4941:2;4923:21;;;4980:2;4960:18;;;4953:30;5019:34;5014:2;4999:18;;4992:62;-1:-1:-1;;;5085:2:1;5070:18;;5063:34;5129:3;5114:19;;4739:400::o;5905:168::-;5978:9;;;6009;;6026:15;;;6020:22;;6006:37;5996:71;;6047:18;;:::i;6078:217::-;6118:1;6144;6134:132;;6188:10;6183:3;6179:20;6176:1;6169:31;6223:4;6220:1;6213:15;6251:4;6248:1;6241:15;6134:132;-1:-1:-1;6280:9:1;;6078:217::o;9776:128::-;9843:9;;;9864:11;;;9861:37;;;9878:18;;:::i;11813:127::-;11874:10;11869:3;11865:20;11862:1;11855:31;11905:4;11902:1;11895:15;11929:4;11926:1;11919:15;11945:251;12015:6;12068:2;12056:9;12047:7;12043:23;12039:32;12036:52;;;12084:1;12081;12074:12;12036:52;12116:9;12110:16;12135:31;12160:5;12135:31;:::i;12201:980::-;12463:4;12511:3;12500:9;12496:19;12542:6;12531:9;12524:25;12568:2;12606:6;12601:2;12590:9;12586:18;12579:34;12649:3;12644:2;12633:9;12629:18;12622:31;12673:6;12708;12702:13;12739:6;12731;12724:22;12777:3;12766:9;12762:19;12755:26;;12816:2;12808:6;12804:15;12790:29;;12837:1;12847:195;12861:6;12858:1;12855:13;12847:195;;;12926:13;;-1:-1:-1;;;;;12922:39:1;12910:52;;13017:15;;;;12982:12;;;;12958:1;12876:9;12847:195;;;-1:-1:-1;;;;;;;13098:32:1;;;;13093:2;13078:18;;13071:60;-1:-1:-1;;;13162:3:1;13147:19;13140:35;13059:3;12201:980;-1:-1:-1;;;12201:980:1:o
Swarm Source
ipfs://0ac1375bb173fa424fa7658a61d57a178d694597a563c54362f58e73867ad87e
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.