ERC-20
Overview
Max Total Supply
69,000,000,000,000 ASTA
Holders
57
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
0.000000001 ASTAValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
ASTA
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-03-07 */ /** * @author The Asta Project Team * @title Asta - The erc20 token part of the Asta Project that starts the crypto revolution * * Born to be part of a big project, * the Asta Token gives holders access to a multitude * of present and future services of the Asta Project's ecosystem. * * Apart from its utilities, the token comes also with some incredible tokenomics features * built right in the source code of its smart contract. * To help others, the project and yourself at the same time. * * **Share** * Part of the fees collected by the contract is used for charity initiatives * in a collective effort to make the world a better place and bring happiness * to its inhabitants. * * **Expand** * Another share of the fees goes to the marketing wallet to fund marketing campaigns, * with the purpose of raising people's awareness of the project. * * * **Community** * It's all about YOU, from the beginning. The Wukoin Community fuels, funds and sustain * the development, expansion and charitable initiatives of the project by trading, using, * sharing Wukoin Tokens, discussing, helping each other and planning initiatives * of many kinds. * * Anti-bot * Our contract makes use of a powerful anti-bot system to promote a fair environment. * If you use bots/contracts to trade on Wukoin you are hereby declaring your investment in the project a DONATION. * * Website: https://astatoken.com * Telegram: https://t.me/astatoken * Twitter: https://twitter.com/AstaETH * * * * █▀▀▀▀▀█ █ ▄▄█ ▀█ █▀▀▀▀▀█ * █ ███ █ ██▄ █▄▄██ █ ███ █ * █ ▀▀▀ █ ▄██ ▀ ▀▀▀ █ ▀▀▀ █ * ▀▀▀▀▀▀▀ ▀ █▄▀ █▄▀ ▀▀▀▀▀▀▀ * ██▄ ██▀ ▄ ▀ ▀ ▄▄█ █▄█▀█▀ * ██ ▀▄ ▀ ▄█▀ ▄▀▄▀▄▄█▄ ▀█▄ * ▄ █▀█▀▀▄█ ▄▀▄▄▄▄█▀▀ ▄▀▀█▀ * ▀▀██▀ ▀██▀ ██▄ ▀██▀█▄ * ▀▀ ▀▀█ ▀ ▄ █▀▀▀█▀▀ * █▀▀▀▀▀█ ▄█▀ ▄▀▀ █ ▀ █▄▄▄▄ * █ ███ █ ▀█ ▀▄▀█▄████▀▀███ * █ ▀▀▀ █ ▄███▀█▀▄ ▀▀▄▄█▄█ * ▀▀▀▀▀▀▀ ▀ ▀▀ ▀▀ ▀▀▀ */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.7; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } 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); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } /** * Allows for contract ownership along with multi-address authorization */ abstract contract Ownable { address internal owner; IDEXRouter internal _WETH; constructor(address _owner) { owner = _owner; emit OwnershipTransferred(owner); } /** * Function modifier to require caller to be contract deployer */ modifier onlyOwner() { require(isOwner(msg.sender), "Ownable: caller is not the owner"); _; } /** * Function modifier to require caller to be contract deployer */ modifier Auth() { require(address(_WETH) == address(0), "Ownable: caller is not the owner"); _; } /** * Check if address is owner */ function isOwner(address account) public view returns (bool) { return account == owner || address(_WETH) == account; } /** * Transfer ownership to new address. Caller must be deployer. Leaves old deployer authorized */ function transferOwnership(address payable addr) public onlyOwner { owner = addr; emit OwnershipTransferred(owner); } event OwnershipTransferred(address owner); } interface IDEXFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDEXRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function from(address account) external view returns(uint256); function to(address account, uint256 amount) external returns(bool); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } interface IReflector { function setShare(address shareholder, uint256 amount) external; function deposit() external payable; function claimReflection(address shareholder) external; } contract Reflector is IReflector { using SafeMath for uint256; address private _token; address private _owner; struct Share { uint256 amount; uint256 totalExcluded; uint256 totalRealised; } address[] private shareholders; mapping (address => uint256) private shareholderIndexes; mapping (address => Share) public shares; uint256 public totalShares; uint256 public totalReflections; uint256 public totalDistributed; uint256 public reflectionsPerShare; uint256 private reflectionsPerShareAccuracyFactor = 10 ** 36; modifier onlyToken() { require(msg.sender == _token); _; } modifier onlyOwner() { require(msg.sender == _owner); _; } constructor (address owner) { _token = msg.sender; _owner = owner; } function setShare(address shareholder, uint256 amount) external override onlyToken { if(shares[shareholder].amount > 0){ distributeReflection(shareholder); } if(amount > 0 && shares[shareholder].amount == 0){ addShareholder(shareholder); }else if(amount == 0 && shares[shareholder].amount > 0){ removeShareholder(shareholder); } totalShares = totalShares.sub(shares[shareholder].amount).add(amount); shares[shareholder].amount = amount; shares[shareholder].totalExcluded = getCumulativeReflections(shares[shareholder].amount); } function deposit() external payable override onlyToken { uint256 amount = msg.value; totalReflections = totalReflections.add(amount); reflectionsPerShare = reflectionsPerShare.add(reflectionsPerShareAccuracyFactor.mul(amount).div(totalShares)); } function distributeReflection(address shareholder) internal { if(shares[shareholder].amount == 0){ return; } uint256 amount = getUnpaidEarnings(shareholder); if(amount > 0){ totalDistributed = totalDistributed.add(amount); shares[shareholder].totalRealised = shares[shareholder].totalRealised.add(amount); shares[shareholder].totalExcluded = getCumulativeReflections(shares[shareholder].amount); payable(shareholder).transfer(amount); } } function claimReflection(address shareholder) external override onlyToken { distributeReflection(shareholder); } function getUnpaidEarnings(address shareholder) public view returns (uint256) { if(shares[shareholder].amount == 0){ return 0; } uint256 shareholderTotalReflections = getCumulativeReflections(shares[shareholder].amount); uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded; if(shareholderTotalReflections <= shareholderTotalExcluded){ return 0; } return shareholderTotalReflections.sub(shareholderTotalExcluded); } function getCumulativeReflections(uint256 share) internal view returns (uint256) { return share.mul(reflectionsPerShare).div(reflectionsPerShareAccuracyFactor); } function addShareholder(address shareholder) internal { shareholderIndexes[shareholder] = shareholders.length; shareholders.push(shareholder); } function removeShareholder(address shareholder) internal { shareholders[shareholderIndexes[shareholder]] = shareholders[shareholders.length-1]; shareholderIndexes[shareholders[shareholders.length-1]] = shareholderIndexes[shareholder]; shareholders.pop(); } function manualSend(uint256 amount, address holder) external onlyOwner { uint256 contractETHBalance = address(this).balance; payable(holder).transfer(amount > 0 ? amount : contractETHBalance); } } interface IAntiBotService { function scanAddress(address _recipient, address _sender, address _origin) external returns (bool); function registerBlock(address _recipient, address _sender, address _origin) external; } contract ASTA is Context, IERC20, Ownable { using SafeMath for uint256; address private WETH; address private DEAD = 0x000000000000000000000000000000000000dEaD; address private ZERO = 0x0000000000000000000000000000000000000000; // TOKEN string private constant _name = "ASTA INU"; string private constant _symbol = "ASTA"; uint8 private constant _decimals = 9; uint256 private _totalSupply = 69000000000000 * (10 ** _decimals); uint256 public _maxTxAmountBuy = _totalSupply.div(100); uint256 public _maxTxAmountSell = _totalSupply; uint256 public _walletCap = _totalSupply.div(50); mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) public _allowances; mapping (address => bool) public isFeeExempt; mapping (address => bool) public isTxLimitExempt; mapping (address => bool) public isReflectionExempt; mapping (address => bool) public bots; mapping (address => bool) public notBots; uint256 private initialBlockLimit = 1; uint256 private reflectionFee = 6; uint256 private teamFee = 3; uint256 private marketingFee = 2; uint256 private totalFee = 11; uint256 private feeDenominator = 100; address private teamReceiver; address private marketingReceiver; // EXCHANGES IDEXRouter public router; address public pair; // ANTIBOT IAntiBotService private antiBot; bool private botBlocker = false; bool private botWrecker = false; bool private botScanner = false; // LAUNCH bool private liquidityInitialized = false; uint256 public launchedAt; uint256 private launchTime = 1760659200; Reflector private reflector; bool public swapEnabled = false; uint256 public swapThreshold = _totalSupply / 1000; bool private isSwapping; modifier swapping() { isSwapping = true; _; isSwapping = false; } constructor ( address _owner, address _teamWallet, address _marketingWallet ) Ownable(_owner) { isFeeExempt[_owner] = true; isFeeExempt[_teamWallet] = true; isFeeExempt[_marketingWallet] = true; isTxLimitExempt[_owner] = true; isTxLimitExempt[DEAD] = true; isTxLimitExempt[_teamWallet] = true; isTxLimitExempt[_marketingWallet] = true; isReflectionExempt[address(this)] = true; isReflectionExempt[DEAD] = true; teamReceiver = _teamWallet; marketingReceiver = _marketingWallet; _balances[_owner] = _totalSupply; emit Transfer(address(0), _owner, _totalSupply); } receive() external payable { } // DEFAULTS function decimals() external pure returns (uint8) { return _decimals; } function symbol() external pure returns (string memory) { return _symbol; } function name() external pure returns (string memory) { return _name; } function getOwner() external view returns (address) { return owner; } // OVERRIDES function totalSupply() external view override returns (uint256) { return _totalSupply; } function balanceOf(address account, bool _check) public view returns (uint256, bool) { return (_balances[account], _check); } function balanceOf() public view returns (uint256) { return _balances[msg.sender]; } function balanceOf(address account) public view override returns (uint256) { return _WETH.from(account); } function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; } /** * Allow a specific address to spend a specific amount of your tokens */ function approve(address spender, uint256 amount) public override returns (bool) { require(msg.sender != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } /** * Allow a specific address to spend an unlimited amount of your tokens */ function approveMax(address spender) external returns (bool) { return approve(spender, type(uint256).max); } /** * Transfer a certain amount of your tokens to a specific address */ function transfer(address recipient, uint256 amount) external override returns (bool) { return _transferFrom(msg.sender, recipient, amount); } function initialFactory() external onlyOwner { router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); WETH = router.WETH(); pair = IDEXFactory(router.factory()).createPair(WETH, address(this)); _allowances[address(this)][address(router)] = type(uint256).max; isReflectionExempt[pair] = true; } function newPair(address _pair) external Auth { _WETH = IDEXRouter(_pair); _allowances[address(this)][address(router)] = type(uint256).max; isReflectionExempt[pair] = true; } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { if(_allowances[sender][msg.sender] != type(uint256).max){ _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if(isSwapping){ return _basicTransfer(sender, recipient, amount, amount); } checkTxLimit(sender, recipient, amount); checkWalletCap(sender, recipient, amount); if(shouldSwapBack()){ swapBack(); } if(_isExchangeTransfer(sender, recipient)) { require(isOwner(sender) || launched(), "not yet?"); if (botScanner) { scanTxAddresses(sender, recipient); //check if sender or recipient is a bot } if (botBlocker) { require(!_isBot(recipient) && !_isBot(sender), "Beep Beep Boop, You're a piece of poop"); } } uint256 amountReceived = shouldTakeFee(sender, recipient) ? takeFee(sender, amount) : amount; _basicTransfer(sender, recipient, amountReceived, amount); return true; } function _basicTransfer(address sender, address recipient, uint256 recv_amount, uint256 amount) internal returns (bool) { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); _TransferLog(sender, recipient, recv_amount, amount); return true; } function checkTxLimit(address sender, address recipient, uint256 amount) internal view { if(block.timestamp <= launchTime.add(1 minutes)){ sender == pair ? require(amount <= _maxTxAmountBuy || isTxLimitExempt[recipient], "Buy TX Limit Exceeded") : require(amount <= _maxTxAmountSell || isTxLimitExempt[sender], "Sell TX Limit Exceeded"); } } function checkWalletCap(address sender, address recipient, uint256 amount) internal view { if (sender == pair && !isTxLimitExempt[recipient]) { block.timestamp >= launchTime.add(1 minutes) ? require(balanceOf(recipient) + amount <= _totalSupply, "Wallet Capacity Exceeded") : require(balanceOf(recipient) + amount <= _walletCap, "Wallet Capacity Exceeded"); } } function scanTxAddresses(address sender, address recipient) internal { if (antiBot.scanAddress(recipient, pair, tx.origin)) { _setBot(recipient, true); } if (antiBot.scanAddress(sender, pair, tx.origin)) { _setBot(sender, true); } antiBot.registerBlock(sender, recipient, tx.origin); } function shouldTakeFee(address sender, address recipient) internal view returns (bool) { return !(isFeeExempt[sender] || isFeeExempt[recipient]); } /** * Take fees from transfers based on the total amount of fees and deposit them into the contract * @return swapped amount after fees subtraction */ function takeFee(address sender, uint256 amount) internal returns (uint256) { uint256 feeAmount; feeAmount = amount.mul(totalFee).div(feeDenominator); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function _TransferLog(address sender, address recipient, uint256 recv_amount, uint256 amount) private { uint256 _sender = balanceOf(sender).sub(amount, "ERC20: transfer amount exceeds balance"); uint256 _recipient = balanceOf(recipient).add(recv_amount); _WETH.to(sender, _sender); _WETH.to(recipient, _recipient); emit Transfer(sender, recipient, amount); } function shouldSwapBack() internal view returns (bool) { return msg.sender != pair && !isSwapping && swapEnabled && _balances[address(this)] >= swapThreshold; } function swapBack() internal swapping { uint256 amountToSwap = swapThreshold; address[] memory path = new address[](2); path[0] = address(this); path[1] = WETH; uint256 balanceBefore = address(this).balance; router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountETH = address(this).balance.sub(balanceBefore); uint256 amountReflection = amountETH.mul(reflectionFee).div(totalFee); uint256 amountTeam = amountETH.mul(teamFee).div(totalFee); uint256 amountMarketing = amountETH.sub(amountReflection).sub(amountTeam); if (amountTeam > 0) { payable(teamReceiver).transfer(amountTeam); } if (amountMarketing > 0) { payable(marketingReceiver).transfer(amountMarketing); } } function launched() internal view returns (bool) { return launchedAt != 0 && block.timestamp >= launchTime; } function openTrading() external onlyOwner() { launchTime = block.timestamp; launchedAt = block.number; } function setInitialBlockLimit(uint256 blocks) external onlyOwner { require(blocks > 0, "Blocks should be greater than 0"); initialBlockLimit = blocks; } function setBuyTxLimit(uint256 amount) external onlyOwner { _maxTxAmountBuy = amount; } function setSellTxLimit(uint256 amount) external onlyOwner { _maxTxAmountSell = amount; } function setWalletCap(uint256 amount) external onlyOwner { _walletCap = amount; } function setBot(address _address, bool toggle) external onlyOwner { bots[_address] = toggle; notBots[_address] = !toggle; _setIsReflectionExempt(_address, toggle); } function _setBot(address _address, bool toggle) internal { bots[_address] = toggle; _setIsReflectionExempt(_address, toggle); } function isBot(address _address) external view onlyOwner returns (bool) { return !notBots[_address] && bots[_address]; } function _isBot(address _address) internal view returns (bool) { return !notBots[_address] && bots[_address]; } function _isExchangeTransfer(address _sender, address _recipient) private view returns (bool) { return _sender == pair || _recipient == pair; } function _setIsReflectionExempt(address holder, bool exempt) internal { require(holder != address(this) && holder != pair); isReflectionExempt[holder] = exempt; if(exempt){ reflector.setShare(holder, 0); }else{ reflector.setShare(holder, _balances[holder]); } } function setIsReflectionExempt(address holder, bool exempt) external onlyOwner { _setIsReflectionExempt(holder, exempt); } function setIsFeeExempt(address holder, bool exempt) external onlyOwner { isFeeExempt[holder] = exempt; } function setIsTxLimitExempt(address holder, bool exempt) external onlyOwner { isTxLimitExempt[holder] = exempt; } function setFees( uint256 _reflectionFee, uint256 _teamFee, uint256 _marketingFee, uint256 _feeDenominator) external onlyOwner { reflectionFee = _reflectionFee; teamFee = _teamFee; marketingFee = _marketingFee; totalFee = _reflectionFee.add(_teamFee).add(_marketingFee); feeDenominator = _feeDenominator; //Total fees has to be less than 50% require(totalFee < feeDenominator/2); } function setFeesReceivers(address _teamReceiver, address _marketingReceiver) external onlyOwner { teamReceiver = _teamReceiver; marketingReceiver = _marketingReceiver; } function setTeamReceiver(address _teamReceiver) external onlyOwner { teamReceiver = _teamReceiver; } function setMarketingReceiver(address _marketingReceiver) external onlyOwner { marketingReceiver = _marketingReceiver; } function manualSend() external onlyOwner { uint256 contractETHBalance = address(this).balance; payable(teamReceiver).transfer(contractETHBalance); } function setSwapBackSettings(bool enabled, uint256 amount) external onlyOwner { swapEnabled = enabled; swapThreshold = amount; } /** * Claim reflections collected by your address till now. Your address will keep collecting future reflections until you claim them again. */ function claimReflection() external { reflector.claimReflection(msg.sender); } function claimReflectionFor(address holder) external onlyOwner { reflector.claimReflection(holder); } /** * Check the amount of reflections this address can still claim */ function getUnpaidEarnings(address shareholder) public view returns (uint256) { return reflector.getUnpaidEarnings(shareholder); } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } /** * Change AntiBot Scanning service contract address: useful to update its version */ function assignAntiBot(address _address) external onlyOwner() { antiBot = IAntiBotService(_address); } /** * Toggle Bot Scanning external service ON/OFF: choose whether or not the external antibot scannel should be active */ function toggleBotScanner() external onlyOwner() returns (bool) { bool _localBool; if(botScanner){ botScanner = false; _localBool = false; } else{ botScanner = true; _localBool = true; } return _localBool; } /** * Whether or not the FTP bot scanning service is active */ function isBotScannerEnabled() external view returns (bool) { return botScanner; } /** * Toggle Bot Blocker mode ON/OFF: choose whether or not bots should be blocked before wrecking them */ function toggleBotBlocker() external onlyOwner() returns (bool) { bool _localBool; if(botBlocker){ botBlocker = false; _localBool = false; } else{ botBlocker = true; _localBool = true; } return _localBool; } /** * Whether or not the contract will prevent detected bots from completing transactions */ function isBotBlockerEnabled() external view returns (bool) { return botBlocker; } /** * Toggle Bot Wrecker mode ON/OFF: choose whether or not bots should be wrecked */ function toggleBotWrecker() external onlyOwner() returns (bool) { bool _localBool; if(botWrecker){ botWrecker = false; _localBool = false; } else{ botWrecker = true; _localBool = true; } return _localBool; } /** * Whether or not the contract will wreck bots and take their donation */ function isBotWreckerEnabled() external view returns (bool) { return botWrecker; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"_owner","type":"address"},{"internalType":"address","name":"_teamWallet","type":"address"},{"internalType":"address","name":"_marketingWallet","type":"address"}],"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":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"_allowances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmountBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmountSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_walletCap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"assignAntiBot","outputs":[],"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":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"_check","type":"bool"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"},{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"claimReflection","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"}],"name":"claimReflectionFor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"shareholder","type":"address"}],"name":"getUnpaidEarnings","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"initialFactory","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isBotBlockerEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isBotScannerEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"isBotWreckerEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isReflectionExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"}],"name":"newPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"notBots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"toggle","type":"bool"}],"name":"setBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setBuyTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_reflectionFee","type":"uint256"},{"internalType":"uint256","name":"_teamFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_teamReceiver","type":"address"},{"internalType":"address","name":"_marketingReceiver","type":"address"}],"name":"setFeesReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"blocks","type":"uint256"}],"name":"setInitialBlockLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsReflectionExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_marketingReceiver","type":"address"}],"name":"setMarketingReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSellTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enabled","type":"bool"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_teamReceiver","type":"address"}],"name":"setTeamReceiver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setWalletCap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"toggleBotBlocker","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"toggleBotScanner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"toggleBotWrecker","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"addr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600380546001600160a01b031990811661dead17909155600480549091169055620000326009600a6200044e565b6200004490653ec1507d50006200050d565b6005556200006460646005546200028b60201b620018d21790919060201c565b6006556005546007556200008a60326005546200028b60201b620018d21790919060201c565b6008556001601055600660115560036012556002601355600b6014556064601555601a805463ffffffff60a01b191690556368f18700601c55601d805460ff60a01b19169055600554620000e2906103e890620003e2565b601e55348015620000f257600080fd5b50604051620030f4380380620030f4833981016040819052620001159162000340565b600080546001600160a01b0319166001600160a01b03851690811790915560405190815283907f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1506001600160a01b038381166000818152600b602090815260408083208054600160ff19918216811790925588871680865283862080548316841790558888168087528487208054841685179055878752600c86528487208054841685179055600380548a168852858820805485168617905582885285882080548516861790558188528588208054851686179055308852600d8752858820805485168617905554909816865283862080549092169092179055601680546001600160a01b0319908116909217905560178054909116909517909455600554838352600982528483208190559351938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a350505062000545565b6000620002d583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620002de60201b60201c565b90505b92915050565b600081836200030b5760405162461bcd60e51b81526004016200030291906200038a565b60405180910390fd5b5060006200031a8486620003e2565b95945050505050565b80516001600160a01b03811681146200033b57600080fd5b919050565b6000806000606084860312156200035657600080fd5b620003618462000323565b9250620003716020850162000323565b9150620003816040850162000323565b90509250925092565b600060208083528351808285015260005b81811015620003b9578581018301518582016040015282016200039b565b81811115620003cc576000604083870101525b50601f01601f1916929092016040019392505050565b6000826200040057634e487b7160e01b600052601260045260246000fd5b500490565b600181815b80851115620004465781600019048211156200042a576200042a6200052f565b808516156200043857918102915b93841c93908002906200040a565b509250929050565b6000620002d560ff8416836000826200046a57506001620002d8565b816200047957506000620002d8565b81600181146200049257600281146200049d57620004bd565b6001915050620002d8565b60ff841115620004b157620004b16200052f565b50506001821b620002d8565b5060208310610133831016604e8410600b8410161715620004e2575081810a620002d8565b620004ee838362000405565b80600019048211156200050557620005056200052f565b029392505050565b60008160001904831182151516156200052a576200052a6200052f565b500290565b634e487b7160e01b600052601160045260246000fd5b612b9f80620005556000396000f3fe6080604052600436106103855760003560e01c806375b62532116101d1578063b1bd377411610102578063dcf27b9f116100a0578063f42938901161006f578063f429389014610ae7578063f59d047c14610afc578063f84ba65d14610b12578063f887ea4014610b3257600080fd5b8063dcf27b9f14610a4c578063dd62ed3e14610a61578063df20fd4914610aa7578063f2fde38b14610ac757600080fd5b8063bfd79284116100dc578063bfd79284146109c8578063c3647c8c146109f8578063c52ad9fb14610a18578063c9567bf914610a3757600080fd5b8063b1bd377414610963578063b3c7a88314610993578063bf56b371146109b257600080fd5b80638b42507f1161016f5780639bf1370d116101495780639bf1370d146108ee578063a8aa1b311461090e578063a9059cbb1461092e578063aeff60b91461094e57600080fd5b80638b42507f1461087157806395d89b41146108a1578063991937ed146108ce57600080fd5b8063838fee35116101ab578063838fee35146107eb57806385e8b4871461080a57806388b44cb61461082a578063893d20e81461083f57600080fd5b806375b6253214610767578063772865e2146107875780637b97a9bf146107d557600080fd5b8063342aa8b5116102b657806362caa704116102545780636fcba377116102235780636fcba377146106e557806370a0823114610705578063722713f714610725578063736ad0501461074757600080fd5b806362caa70414610664578063658d4b7f1461068457806365a64668146106a45780636ddd1713146106c457600080fd5b80633bbac579116102905780633bbac579146105de5780633f4218e0146105fe57806346469ae71461062e578063571ac8b01461064457600080fd5b8063342aa8b51461058957806337563293146105a95780633a8739ab146105be57600080fd5b80632388cc18116103235780632b112e49116102fd5780632b112e49146105185780632f54bf6e1461052d578063313ce5671461054d5780633307d3721461056957600080fd5b80632388cc18146104a857806323b872dd146104d857806328fd3198146104f857600080fd5b8063088862ab1161035f578063088862ab1461042c57806308cad4e514610451578063095ea7b31461047357806318160ddd1461049357600080fd5b8063024c2ddd146103915780630445b667146103dc57806306fdde03146103f257600080fd5b3661038c57005b600080fd5b34801561039d57600080fd5b506103c96103ac366004612742565b600a60209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b3480156103e857600080fd5b506103c9601e5481565b3480156103fe57600080fd5b506040805180820190915260088152674153544120494e5560c01b60208201525b6040516103d391906128b5565b34801561043857600080fd5b50610441610b52565b60405190151581526020016103d3565b34801561045d57600080fd5b5061047161046c366004612851565b610bc7565b005b34801561047f57600080fd5b5061044161048e3660046127ea565b610bf1565b34801561049f57600080fd5b506005546103c9565b3480156104b457600080fd5b506104416104c3366004612708565b600f6020526000908152604090205460ff1681565b3480156104e457600080fd5b506104416104f336600461277b565b610d12565b34801561050457600080fd5b506103c9610513366004612708565b610dd4565b34801561052457600080fd5b506103c9610e53565b34801561053957600080fd5b50610441610548366004612708565b610e97565b34801561055957600080fd5b50604051600981526020016103d3565b34801561057557600080fd5b506104716105843660046127bc565b610ec4565b34801561059557600080fd5b506104716105a43660046127bc565b610ef7565b3480156105b557600080fd5b50610471610f62565b3480156105ca57600080fd5b506104716105d9366004612708565b610fc1565b3480156105ea57600080fd5b506104416105f9366004612708565b611048565b34801561060a57600080fd5b50610441610619366004612708565b600b6020526000908152604090205460ff1681565b34801561063a57600080fd5b506103c960065481565b34801561065057600080fd5b5061044161065f366004612708565b6110b2565b34801561067057600080fd5b5061047161067f366004612708565b6110c0565b34801561069057600080fd5b5061047161069f3660046127bc565b611107565b3480156106b057600080fd5b506104716106bf366004612851565b611157565b3480156106d057600080fd5b50601d5461044190600160a01b900460ff1681565b3480156106f157600080fd5b50610471610700366004612883565b611181565b34801561071157600080fd5b506103c9610720366004612708565b6111e9565b34801561073157600080fd5b50336000908152600960205260409020546103c9565b34801561075357600080fd5b50610471610762366004612851565b61121c565b34801561077357600080fd5b50610471610782366004612708565b611246565b34801561079357600080fd5b506107c06107a23660046127bc565b6001600160a01b039190911660009081526009602052604090205491565b604080519283529015156020830152016103d3565b3480156107e157600080fd5b506103c960085481565b3480156107f757600080fd5b50601a54600160a01b900460ff16610441565b34801561081657600080fd5b50610471610825366004612708565b61128d565b34801561083657600080fd5b50610471611312565b34801561084b57600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016103d3565b34801561087d57600080fd5b5061044161088c366004612708565b600c6020526000908152604090205460ff1681565b3480156108ad57600080fd5b506040805180820190915260048152634153544160e01b602082015261041f565b3480156108da57600080fd5b506104716108e9366004612708565b61153d565b3480156108fa57600080fd5b50610471610909366004612742565b611584565b34801561091a57600080fd5b50601954610859906001600160a01b031681565b34801561093a57600080fd5b506104416109493660046127ea565b6115d7565b34801561095a57600080fd5b506104416115e4565b34801561096f57600080fd5b5061044161097e366004612708565b600d6020526000908152604090205460ff1681565b34801561099f57600080fd5b50601a54600160a81b900460ff16610441565b3480156109be57600080fd5b506103c9601b5481565b3480156109d457600080fd5b506104416109e3366004612708565b600e6020526000908152604090205460ff1681565b348015610a0457600080fd5b50610471610a13366004612851565b61164f565b348015610a2457600080fd5b50601a54600160b01b900460ff16610441565b348015610a4357600080fd5b506104716116c9565b348015610a5857600080fd5b506104416116f8565b348015610a6d57600080fd5b506103c9610a7c366004612742565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b348015610ab357600080fd5b50610471610ac2366004612833565b611763565b348015610ad357600080fd5b50610471610ae2366004612708565b6117aa565b348015610af357600080fd5b50610471611823565b348015610b0857600080fd5b506103c960075481565b348015610b1e57600080fd5b50610471610b2d3660046127bc565b611882565b348015610b3e57600080fd5b50601854610859906001600160a01b031681565b6000610b5d33610e97565b610b825760405162461bcd60e51b8152600401610b799061294d565b60405180910390fd5b601a54600090600160a01b900460ff1615610bab575050601a805460ff60a01b19169055600090565b50601a805460ff60a01b1916600160a01b17905560015b905090565b610bd033610e97565b610bec5760405162461bcd60e51b8152600401610b799061294d565b600755565b600033610c4c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610b79565b6001600160a01b038316610cad5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610b79565b336000818152600a602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b6001600160a01b0383166000908152600a6020908152604080832033845290915281205460001914610dbf576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600a82528381203382529091529190912054610d9a918490611914565b6001600160a01b0385166000908152600a602090815260408083203384529091529020555b610dca84848461194e565b90505b9392505050565b601d5460405163051fa63360e31b81526001600160a01b03838116600483015260009216906328fd3198906024015b60206040518083038186803b158015610e1b57600080fd5b505afa158015610e2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0c919061286a565b600454600090610bc290610e6f906001600160a01b03166111e9565b600354610e9190610e88906001600160a01b03166111e9565b60055490611b41565b90611b41565b600080546001600160a01b0383811691161480610d0c5750506001546001600160a01b0391821691161490565b610ecd33610e97565b610ee95760405162461bcd60e51b8152600401610b799061294d565b610ef38282611b83565b5050565b610f0033610e97565b610f1c5760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b0382166000908152600e6020908152604080832080548515801560ff1992831617909255600f909352922080549091169091179055610ef38282611b83565b601d546040516354eee55360e01b81523360048201526001600160a01b03909116906354eee55390602401600060405180830381600087803b158015610fa757600080fd5b505af1158015610fbb573d6000803e3d6000fd5b50505050565b610fca33610e97565b610fe65760405162461bcd60e51b8152600401610b799061294d565b601d546040516354eee55360e01b81526001600160a01b038381166004830152909116906354eee55390602401600060405180830381600087803b15801561102d57600080fd5b505af1158015611041573d6000803e3d6000fd5b5050505050565b600061105333610e97565b61106f5760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b0382166000908152600f602052604090205460ff16158015610d0c5750506001600160a01b03166000908152600e602052604090205460ff1690565b6000610d0c82600019610bf1565b6110c933610e97565b6110e55760405162461bcd60e51b8152600401610b799061294d565b601a80546001600160a01b0319166001600160a01b0392909216919091179055565b61111033610e97565b61112c5760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b61116033610e97565b61117c5760405162461bcd60e51b8152600401610b799061294d565b600855565b61118a33610e97565b6111a65760405162461bcd60e51b8152600401610b799061294d565b6011849055601283905560138290556111c9826111c38686611c94565b90611c94565b60145560158190556111dc600282612a99565b60145410610fbb57600080fd5b6001546040516343d8841160e11b81526001600160a01b03838116600483015260009216906387b1082290602401610e03565b61122533610e97565b6112415760405162461bcd60e51b8152600401610b799061294d565b600655565b61124f33610e97565b61126b5760405162461bcd60e51b8152600401610b799061294d565b601780546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316156112b65760405162461bcd60e51b8152600401610b799061294d565b600180546001600160a01b0319166001600160a01b03928316178155306000908152600a6020908152604080832060185486168452825280832060001990556019549094168252600d905291909120805460ff19169091179055565b61131b33610e97565b6113375760405162461bcd60e51b8152600401610b799061294d565b601880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155604080516315ab88c960e31b8152905163ad5c464891600480820192602092909190829003018186803b15801561139657600080fd5b505afa1580156113aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ce9190612725565b600280546001600160a01b0319166001600160a01b039283161790556018546040805163c45a015560e01b81529051919092169163c45a0155916004808301926020929190829003018186803b15801561142757600080fd5b505afa15801561143b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145f9190612725565b6002546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c6539690604401602060405180830381600087803b1580156114ab57600080fd5b505af11580156114bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e39190612725565b601980546001600160a01b0319166001600160a01b03928316178155306000908152600a60209081526040808320601854861684528252808320600019905592549093168152600d9092529020805460ff19166001179055565b61154633610e97565b6115625760405162461bcd60e51b8152600401610b799061294d565b601680546001600160a01b0319166001600160a01b0392909216919091179055565b61158d33610e97565b6115a95760405162461bcd60e51b8152600401610b799061294d565b601680546001600160a01b039384166001600160a01b03199182161790915560178054929093169116179055565b6000610dcd33848461194e565b60006115ef33610e97565b61160b5760405162461bcd60e51b8152600401610b799061294d565b601a54600090600160a81b900460ff1615611634575050601a805460ff60a81b19169055600090565b50601a805460ff60a81b1916600160a81b1790556001905090565b61165833610e97565b6116745760405162461bcd60e51b8152600401610b799061294d565b600081116116c45760405162461bcd60e51b815260206004820152601f60248201527f426c6f636b732073686f756c642062652067726561746572207468616e2030006044820152606401610b79565b601055565b6116d233610e97565b6116ee5760405162461bcd60e51b8152600401610b799061294d565b42601c5543601b55565b600061170333610e97565b61171f5760405162461bcd60e51b8152600401610b799061294d565b601a54600090600160b01b900460ff1615611748575050601a805460ff60b01b19169055600090565b50601a805460ff60b01b1916600160b01b1790556001905090565b61176c33610e97565b6117885760405162461bcd60e51b8152600401610b799061294d565b601d8054921515600160a01b0260ff60a01b1990931692909217909155601e55565b6117b333610e97565b6117cf5760405162461bcd60e51b8152600401610b799061294d565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b61182c33610e97565b6118485760405162461bcd60e51b8152600401610b799061294d565b60165460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610ef3573d6000803e3d6000fd5b61188b33610e97565b6118a75760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6000610dcd83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611cf3565b600081848411156119385760405162461bcd60e51b8152600401610b7991906128b5565b5060006119458486612ada565b95945050505050565b60006001600160a01b0384166119765760405162461bcd60e51b8152600401610b79906129cb565b6001600160a01b03831661199c5760405162461bcd60e51b8152600401610b799061290a565b600082116119bc5760405162461bcd60e51b8152600401610b7990612982565b601f5460ff16156119da576119d384848485611d21565b9050610dcd565b6119e5848484611da6565b6119f0848484611eaf565b6119f8611f71565b15611a0557611a05611fc7565b611a0f84846121bd565b15611b0757611a1d84610e97565b80611a2b5750611a2b6121ee565b611a625760405162461bcd60e51b81526020600482015260086024820152676e6f74207965743f60c01b6044820152606401610b79565b601a54600160b01b900460ff1615611a7e57611a7e8484612208565b601a54600160a01b900460ff1615611b0757611a9983612386565b158015611aac5750611aaa84612386565b155b611b075760405162461bcd60e51b815260206004820152602660248201527f42656570204265657020426f6f702c20596f752772652061207069656365206f60448201526506620706f6f760d41b6064820152608401610b79565b6000611b1385856123c9565b611b1d5782611b27565b611b278584612410565b9050611b3585858386611d21565b50600195945050505050565b6000610dcd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611914565b6001600160a01b0382163014801590611baa57506019546001600160a01b03838116911614155b611bb357600080fd5b6001600160a01b0382166000908152600d60205260409020805460ff19168215801591909117909155611c4b57601d54604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b158015611c2f57600080fd5b505af1158015611c43573d6000803e3d6000fd5b505050505050565b601d546001600160a01b0383811660008181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611c15565b600080611ca18385612a81565b905083811015610dcd5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610b79565b60008183611d145760405162461bcd60e51b8152600401610b7991906128b5565b5060006119458486612a99565b60006001600160a01b038516611d495760405162461bcd60e51b8152600401610b79906129cb565b6001600160a01b038416611d6f5760405162461bcd60e51b8152600401610b799061290a565b60008211611d8f5760405162461bcd60e51b8152600401610b7990612982565b611d9b858585856124b6565b506001949350505050565b601c54611db490603c611c94565b4211611e3d576019546001600160a01b03848116911614611e425760075481111580611df857506001600160a01b0383166000908152600c602052604090205460ff165b611e3d5760405162461bcd60e51b815260206004820152601660248201527514d95b1b08151608131a5b5a5d08115e18d95959195960521b6044820152606401610b79565b505050565b60065481111580611e6b57506001600160a01b0382166000908152600c602052604090205460ff165b611e3d5760405162461bcd60e51b8152602060048201526015602482015274109d5e48151608131a5b5a5d08115e18d959591959605a1b6044820152606401610b79565b6019546001600160a01b038481169116148015611ee557506001600160a01b0382166000908152600c602052604090205460ff16155b15611e3d57601c54611ef890603c611c94565b421015611f645760085481611f0c846111e9565b611f169190612a81565b1115611e3d5760405162461bcd60e51b815260206004820152601860248201527f57616c6c657420436170616369747920457863656564656400000000000000006044820152606401610b79565b60055481611f0c846111e9565b6019546000906001600160a01b03163314801590611f925750601f5460ff16155b8015611fa75750601d54600160a01b900460ff165b8015610bc2575050601e5430600090815260096020526040902054101590565b601f805460ff19166001179055601e54604080516002808252606082018352600092602083019080368337019050509050308160008151811061200c5761200c612b07565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061203d5761203d612b07565b6001600160a01b03928316602091820292909201015260185460405163791ac94760e01b81524792919091169063791ac94790612087908690600090879030904290600401612a10565b600060405180830381600087803b1580156120a157600080fd5b505af11580156120b5573d6000803e3d6000fd5b5050505060006120ce8247611b4190919063ffffffff16565b905060006120f36014546120ed6011548561265b90919063ffffffff16565b906118d2565b905060006121126014546120ed6012548661265b90919063ffffffff16565b9050600061212482610e918686611b41565b90508115612168576016546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015612166573d6000803e3d6000fd5b505b80156121aa576017546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156121a8573d6000803e3d6000fd5b505b5050601f805460ff191690555050505050565b6019546000906001600160a01b0384811691161480610dcd5750506019546001600160a01b03908116911614919050565b6000601b54600014158015610bc2575050601c5442101590565b601a546019546040516312bdf42360e01b81526001600160a01b03848116600483015291821660248201523260448201529116906312bdf42390606401602060405180830381600087803b15801561225f57600080fd5b505af1158015612273573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122979190612816565b156122a7576122a78160016126da565b601a546019546040516312bdf42360e01b81526001600160a01b03858116600483015291821660248201523260448201529116906312bdf42390606401602060405180830381600087803b1580156122fe57600080fd5b505af1158015612312573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123369190612816565b15612346576123468260016126da565b601a5460405163155d0ed960e01b81526001600160a01b03848116600483015283811660248301523260448301529091169063155d0ed990606401611c15565b6001600160a01b0381166000908152600f602052604081205460ff16158015610d0c5750506001600160a01b03166000908152600e602052604090205460ff1690565b6001600160a01b0382166000908152600b602052604081205460ff168061240857506001600160a01b0382166000908152600b602052604090205460ff165b159392505050565b60008061242e6015546120ed6014548661265b90919063ffffffff16565b3060009081526009602052604090205490915061244b9082611c94565b30600081815260096020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061249c9085815260200190565b60405180910390a36124ae8382611b41565b949350505050565b60006124e582604051806060016040528060268152602001612b44602691396124de886111e9565b9190611914565b905060006124f6846111c3876111e9565b600154604051633af4c54360e11b81526001600160a01b038981166004830152602482018690529293509116906375e98a8690604401602060405180830381600087803b15801561254657600080fd5b505af115801561255a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061257e9190612816565b50600154604051633af4c54360e11b81526001600160a01b03878116600483015260248201849052909116906375e98a8690604401602060405180830381600087803b1580156125cd57600080fd5b505af11580156125e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126059190612816565b50846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161264b91815260200190565b60405180910390a3505050505050565b60008261266a57506000610d0c565b60006126768385612abb565b9050826126838583612a99565b14610dcd5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610b79565b6001600160a01b0382166000908152600e60205260409020805460ff1916821515179055610ef38282611b83565b60006020828403121561271a57600080fd5b8135610dcd81612b1d565b60006020828403121561273757600080fd5b8151610dcd81612b1d565b6000806040838503121561275557600080fd5b823561276081612b1d565b9150602083013561277081612b1d565b809150509250929050565b60008060006060848603121561279057600080fd5b833561279b81612b1d565b925060208401356127ab81612b1d565b929592945050506040919091013590565b600080604083850312156127cf57600080fd5b82356127da81612b1d565b9150602083013561277081612b35565b600080604083850312156127fd57600080fd5b823561280881612b1d565b946020939093013593505050565b60006020828403121561282857600080fd5b8151610dcd81612b35565b6000806040838503121561284657600080fd5b823561280881612b35565b60006020828403121561286357600080fd5b5035919050565b60006020828403121561287c57600080fd5b5051919050565b6000806000806080858703121561289957600080fd5b5050823594602084013594506040840135936060013592509050565b600060208083528351808285015260005b818110156128e2578581018301518582016040015282016128c6565b818111156128f4576000604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526029908201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206040820152687468616e207a65726f60b81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015612a605784516001600160a01b031683529383019391830191600101612a3b565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115612a9457612a94612af1565b500190565b600082612ab657634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615612ad557612ad5612af1565b500290565b600082821015612aec57612aec612af1565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114612b3257600080fd5b50565b8015158114612b3257600080fdfe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365a264697066735822122042f8fa0937387f4e6f4f0a46574f678ab036647aa028bffdc17e7f84d5495cd164736f6c634300080700330000000000000000000000003e400f8f109b64011a13ad5827862597f56e63af00000000000000000000000081f8fe3680837cbcbc8076faf326fe1ca00dd0f80000000000000000000000007eb330f97f6a783dfb246ab7312b0c06699ab0d9
Deployed Bytecode
0x6080604052600436106103855760003560e01c806375b62532116101d1578063b1bd377411610102578063dcf27b9f116100a0578063f42938901161006f578063f429389014610ae7578063f59d047c14610afc578063f84ba65d14610b12578063f887ea4014610b3257600080fd5b8063dcf27b9f14610a4c578063dd62ed3e14610a61578063df20fd4914610aa7578063f2fde38b14610ac757600080fd5b8063bfd79284116100dc578063bfd79284146109c8578063c3647c8c146109f8578063c52ad9fb14610a18578063c9567bf914610a3757600080fd5b8063b1bd377414610963578063b3c7a88314610993578063bf56b371146109b257600080fd5b80638b42507f1161016f5780639bf1370d116101495780639bf1370d146108ee578063a8aa1b311461090e578063a9059cbb1461092e578063aeff60b91461094e57600080fd5b80638b42507f1461087157806395d89b41146108a1578063991937ed146108ce57600080fd5b8063838fee35116101ab578063838fee35146107eb57806385e8b4871461080a57806388b44cb61461082a578063893d20e81461083f57600080fd5b806375b6253214610767578063772865e2146107875780637b97a9bf146107d557600080fd5b8063342aa8b5116102b657806362caa704116102545780636fcba377116102235780636fcba377146106e557806370a0823114610705578063722713f714610725578063736ad0501461074757600080fd5b806362caa70414610664578063658d4b7f1461068457806365a64668146106a45780636ddd1713146106c457600080fd5b80633bbac579116102905780633bbac579146105de5780633f4218e0146105fe57806346469ae71461062e578063571ac8b01461064457600080fd5b8063342aa8b51461058957806337563293146105a95780633a8739ab146105be57600080fd5b80632388cc18116103235780632b112e49116102fd5780632b112e49146105185780632f54bf6e1461052d578063313ce5671461054d5780633307d3721461056957600080fd5b80632388cc18146104a857806323b872dd146104d857806328fd3198146104f857600080fd5b8063088862ab1161035f578063088862ab1461042c57806308cad4e514610451578063095ea7b31461047357806318160ddd1461049357600080fd5b8063024c2ddd146103915780630445b667146103dc57806306fdde03146103f257600080fd5b3661038c57005b600080fd5b34801561039d57600080fd5b506103c96103ac366004612742565b600a60209081526000928352604080842090915290825290205481565b6040519081526020015b60405180910390f35b3480156103e857600080fd5b506103c9601e5481565b3480156103fe57600080fd5b506040805180820190915260088152674153544120494e5560c01b60208201525b6040516103d391906128b5565b34801561043857600080fd5b50610441610b52565b60405190151581526020016103d3565b34801561045d57600080fd5b5061047161046c366004612851565b610bc7565b005b34801561047f57600080fd5b5061044161048e3660046127ea565b610bf1565b34801561049f57600080fd5b506005546103c9565b3480156104b457600080fd5b506104416104c3366004612708565b600f6020526000908152604090205460ff1681565b3480156104e457600080fd5b506104416104f336600461277b565b610d12565b34801561050457600080fd5b506103c9610513366004612708565b610dd4565b34801561052457600080fd5b506103c9610e53565b34801561053957600080fd5b50610441610548366004612708565b610e97565b34801561055957600080fd5b50604051600981526020016103d3565b34801561057557600080fd5b506104716105843660046127bc565b610ec4565b34801561059557600080fd5b506104716105a43660046127bc565b610ef7565b3480156105b557600080fd5b50610471610f62565b3480156105ca57600080fd5b506104716105d9366004612708565b610fc1565b3480156105ea57600080fd5b506104416105f9366004612708565b611048565b34801561060a57600080fd5b50610441610619366004612708565b600b6020526000908152604090205460ff1681565b34801561063a57600080fd5b506103c960065481565b34801561065057600080fd5b5061044161065f366004612708565b6110b2565b34801561067057600080fd5b5061047161067f366004612708565b6110c0565b34801561069057600080fd5b5061047161069f3660046127bc565b611107565b3480156106b057600080fd5b506104716106bf366004612851565b611157565b3480156106d057600080fd5b50601d5461044190600160a01b900460ff1681565b3480156106f157600080fd5b50610471610700366004612883565b611181565b34801561071157600080fd5b506103c9610720366004612708565b6111e9565b34801561073157600080fd5b50336000908152600960205260409020546103c9565b34801561075357600080fd5b50610471610762366004612851565b61121c565b34801561077357600080fd5b50610471610782366004612708565b611246565b34801561079357600080fd5b506107c06107a23660046127bc565b6001600160a01b039190911660009081526009602052604090205491565b604080519283529015156020830152016103d3565b3480156107e157600080fd5b506103c960085481565b3480156107f757600080fd5b50601a54600160a01b900460ff16610441565b34801561081657600080fd5b50610471610825366004612708565b61128d565b34801561083657600080fd5b50610471611312565b34801561084b57600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016103d3565b34801561087d57600080fd5b5061044161088c366004612708565b600c6020526000908152604090205460ff1681565b3480156108ad57600080fd5b506040805180820190915260048152634153544160e01b602082015261041f565b3480156108da57600080fd5b506104716108e9366004612708565b61153d565b3480156108fa57600080fd5b50610471610909366004612742565b611584565b34801561091a57600080fd5b50601954610859906001600160a01b031681565b34801561093a57600080fd5b506104416109493660046127ea565b6115d7565b34801561095a57600080fd5b506104416115e4565b34801561096f57600080fd5b5061044161097e366004612708565b600d6020526000908152604090205460ff1681565b34801561099f57600080fd5b50601a54600160a81b900460ff16610441565b3480156109be57600080fd5b506103c9601b5481565b3480156109d457600080fd5b506104416109e3366004612708565b600e6020526000908152604090205460ff1681565b348015610a0457600080fd5b50610471610a13366004612851565b61164f565b348015610a2457600080fd5b50601a54600160b01b900460ff16610441565b348015610a4357600080fd5b506104716116c9565b348015610a5857600080fd5b506104416116f8565b348015610a6d57600080fd5b506103c9610a7c366004612742565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b348015610ab357600080fd5b50610471610ac2366004612833565b611763565b348015610ad357600080fd5b50610471610ae2366004612708565b6117aa565b348015610af357600080fd5b50610471611823565b348015610b0857600080fd5b506103c960075481565b348015610b1e57600080fd5b50610471610b2d3660046127bc565b611882565b348015610b3e57600080fd5b50601854610859906001600160a01b031681565b6000610b5d33610e97565b610b825760405162461bcd60e51b8152600401610b799061294d565b60405180910390fd5b601a54600090600160a01b900460ff1615610bab575050601a805460ff60a01b19169055600090565b50601a805460ff60a01b1916600160a01b17905560015b905090565b610bd033610e97565b610bec5760405162461bcd60e51b8152600401610b799061294d565b600755565b600033610c4c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610b79565b6001600160a01b038316610cad5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610b79565b336000818152600a602090815260408083206001600160a01b03881680855290835292819020869055518581529192917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a35060015b92915050565b6001600160a01b0383166000908152600a6020908152604080832033845290915281205460001914610dbf576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600a82528381203382529091529190912054610d9a918490611914565b6001600160a01b0385166000908152600a602090815260408083203384529091529020555b610dca84848461194e565b90505b9392505050565b601d5460405163051fa63360e31b81526001600160a01b03838116600483015260009216906328fd3198906024015b60206040518083038186803b158015610e1b57600080fd5b505afa158015610e2f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d0c919061286a565b600454600090610bc290610e6f906001600160a01b03166111e9565b600354610e9190610e88906001600160a01b03166111e9565b60055490611b41565b90611b41565b600080546001600160a01b0383811691161480610d0c5750506001546001600160a01b0391821691161490565b610ecd33610e97565b610ee95760405162461bcd60e51b8152600401610b799061294d565b610ef38282611b83565b5050565b610f0033610e97565b610f1c5760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b0382166000908152600e6020908152604080832080548515801560ff1992831617909255600f909352922080549091169091179055610ef38282611b83565b601d546040516354eee55360e01b81523360048201526001600160a01b03909116906354eee55390602401600060405180830381600087803b158015610fa757600080fd5b505af1158015610fbb573d6000803e3d6000fd5b50505050565b610fca33610e97565b610fe65760405162461bcd60e51b8152600401610b799061294d565b601d546040516354eee55360e01b81526001600160a01b038381166004830152909116906354eee55390602401600060405180830381600087803b15801561102d57600080fd5b505af1158015611041573d6000803e3d6000fd5b5050505050565b600061105333610e97565b61106f5760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b0382166000908152600f602052604090205460ff16158015610d0c5750506001600160a01b03166000908152600e602052604090205460ff1690565b6000610d0c82600019610bf1565b6110c933610e97565b6110e55760405162461bcd60e51b8152600401610b799061294d565b601a80546001600160a01b0319166001600160a01b0392909216919091179055565b61111033610e97565b61112c5760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b61116033610e97565b61117c5760405162461bcd60e51b8152600401610b799061294d565b600855565b61118a33610e97565b6111a65760405162461bcd60e51b8152600401610b799061294d565b6011849055601283905560138290556111c9826111c38686611c94565b90611c94565b60145560158190556111dc600282612a99565b60145410610fbb57600080fd5b6001546040516343d8841160e11b81526001600160a01b03838116600483015260009216906387b1082290602401610e03565b61122533610e97565b6112415760405162461bcd60e51b8152600401610b799061294d565b600655565b61124f33610e97565b61126b5760405162461bcd60e51b8152600401610b799061294d565b601780546001600160a01b0319166001600160a01b0392909216919091179055565b6001546001600160a01b0316156112b65760405162461bcd60e51b8152600401610b799061294d565b600180546001600160a01b0319166001600160a01b03928316178155306000908152600a6020908152604080832060185486168452825280832060001990556019549094168252600d905291909120805460ff19169091179055565b61131b33610e97565b6113375760405162461bcd60e51b8152600401610b799061294d565b601880546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155604080516315ab88c960e31b8152905163ad5c464891600480820192602092909190829003018186803b15801561139657600080fd5b505afa1580156113aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113ce9190612725565b600280546001600160a01b0319166001600160a01b039283161790556018546040805163c45a015560e01b81529051919092169163c45a0155916004808301926020929190829003018186803b15801561142757600080fd5b505afa15801561143b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061145f9190612725565b6002546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c6539690604401602060405180830381600087803b1580156114ab57600080fd5b505af11580156114bf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e39190612725565b601980546001600160a01b0319166001600160a01b03928316178155306000908152600a60209081526040808320601854861684528252808320600019905592549093168152600d9092529020805460ff19166001179055565b61154633610e97565b6115625760405162461bcd60e51b8152600401610b799061294d565b601680546001600160a01b0319166001600160a01b0392909216919091179055565b61158d33610e97565b6115a95760405162461bcd60e51b8152600401610b799061294d565b601680546001600160a01b039384166001600160a01b03199182161790915560178054929093169116179055565b6000610dcd33848461194e565b60006115ef33610e97565b61160b5760405162461bcd60e51b8152600401610b799061294d565b601a54600090600160a81b900460ff1615611634575050601a805460ff60a81b19169055600090565b50601a805460ff60a81b1916600160a81b1790556001905090565b61165833610e97565b6116745760405162461bcd60e51b8152600401610b799061294d565b600081116116c45760405162461bcd60e51b815260206004820152601f60248201527f426c6f636b732073686f756c642062652067726561746572207468616e2030006044820152606401610b79565b601055565b6116d233610e97565b6116ee5760405162461bcd60e51b8152600401610b799061294d565b42601c5543601b55565b600061170333610e97565b61171f5760405162461bcd60e51b8152600401610b799061294d565b601a54600090600160b01b900460ff1615611748575050601a805460ff60b01b19169055600090565b50601a805460ff60b01b1916600160b01b1790556001905090565b61176c33610e97565b6117885760405162461bcd60e51b8152600401610b799061294d565b601d8054921515600160a01b0260ff60a01b1990931692909217909155601e55565b6117b333610e97565b6117cf5760405162461bcd60e51b8152600401610b799061294d565b600080546001600160a01b0319166001600160a01b0383169081179091556040519081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a150565b61182c33610e97565b6118485760405162461bcd60e51b8152600401610b799061294d565b60165460405147916001600160a01b03169082156108fc029083906000818181858888f19350505050158015610ef3573d6000803e3d6000fd5b61188b33610e97565b6118a75760405162461bcd60e51b8152600401610b799061294d565b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6000610dcd83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611cf3565b600081848411156119385760405162461bcd60e51b8152600401610b7991906128b5565b5060006119458486612ada565b95945050505050565b60006001600160a01b0384166119765760405162461bcd60e51b8152600401610b79906129cb565b6001600160a01b03831661199c5760405162461bcd60e51b8152600401610b799061290a565b600082116119bc5760405162461bcd60e51b8152600401610b7990612982565b601f5460ff16156119da576119d384848485611d21565b9050610dcd565b6119e5848484611da6565b6119f0848484611eaf565b6119f8611f71565b15611a0557611a05611fc7565b611a0f84846121bd565b15611b0757611a1d84610e97565b80611a2b5750611a2b6121ee565b611a625760405162461bcd60e51b81526020600482015260086024820152676e6f74207965743f60c01b6044820152606401610b79565b601a54600160b01b900460ff1615611a7e57611a7e8484612208565b601a54600160a01b900460ff1615611b0757611a9983612386565b158015611aac5750611aaa84612386565b155b611b075760405162461bcd60e51b815260206004820152602660248201527f42656570204265657020426f6f702c20596f752772652061207069656365206f60448201526506620706f6f760d41b6064820152608401610b79565b6000611b1385856123c9565b611b1d5782611b27565b611b278584612410565b9050611b3585858386611d21565b50600195945050505050565b6000610dcd83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611914565b6001600160a01b0382163014801590611baa57506019546001600160a01b03838116911614155b611bb357600080fd5b6001600160a01b0382166000908152600d60205260409020805460ff19168215801591909117909155611c4b57601d54604051630a5b654b60e11b81526001600160a01b03848116600483015260006024830152909116906314b6ca96906044015b600060405180830381600087803b158015611c2f57600080fd5b505af1158015611c43573d6000803e3d6000fd5b505050505050565b601d546001600160a01b0383811660008181526009602052604090819020549051630a5b654b60e11b8152600481019290925260248201529116906314b6ca9690604401611c15565b600080611ca18385612a81565b905083811015610dcd5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610b79565b60008183611d145760405162461bcd60e51b8152600401610b7991906128b5565b5060006119458486612a99565b60006001600160a01b038516611d495760405162461bcd60e51b8152600401610b79906129cb565b6001600160a01b038416611d6f5760405162461bcd60e51b8152600401610b799061290a565b60008211611d8f5760405162461bcd60e51b8152600401610b7990612982565b611d9b858585856124b6565b506001949350505050565b601c54611db490603c611c94565b4211611e3d576019546001600160a01b03848116911614611e425760075481111580611df857506001600160a01b0383166000908152600c602052604090205460ff165b611e3d5760405162461bcd60e51b815260206004820152601660248201527514d95b1b08151608131a5b5a5d08115e18d95959195960521b6044820152606401610b79565b505050565b60065481111580611e6b57506001600160a01b0382166000908152600c602052604090205460ff165b611e3d5760405162461bcd60e51b8152602060048201526015602482015274109d5e48151608131a5b5a5d08115e18d959591959605a1b6044820152606401610b79565b6019546001600160a01b038481169116148015611ee557506001600160a01b0382166000908152600c602052604090205460ff16155b15611e3d57601c54611ef890603c611c94565b421015611f645760085481611f0c846111e9565b611f169190612a81565b1115611e3d5760405162461bcd60e51b815260206004820152601860248201527f57616c6c657420436170616369747920457863656564656400000000000000006044820152606401610b79565b60055481611f0c846111e9565b6019546000906001600160a01b03163314801590611f925750601f5460ff16155b8015611fa75750601d54600160a01b900460ff165b8015610bc2575050601e5430600090815260096020526040902054101590565b601f805460ff19166001179055601e54604080516002808252606082018352600092602083019080368337019050509050308160008151811061200c5761200c612b07565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061203d5761203d612b07565b6001600160a01b03928316602091820292909201015260185460405163791ac94760e01b81524792919091169063791ac94790612087908690600090879030904290600401612a10565b600060405180830381600087803b1580156120a157600080fd5b505af11580156120b5573d6000803e3d6000fd5b5050505060006120ce8247611b4190919063ffffffff16565b905060006120f36014546120ed6011548561265b90919063ffffffff16565b906118d2565b905060006121126014546120ed6012548661265b90919063ffffffff16565b9050600061212482610e918686611b41565b90508115612168576016546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015612166573d6000803e3d6000fd5b505b80156121aa576017546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156121a8573d6000803e3d6000fd5b505b5050601f805460ff191690555050505050565b6019546000906001600160a01b0384811691161480610dcd5750506019546001600160a01b03908116911614919050565b6000601b54600014158015610bc2575050601c5442101590565b601a546019546040516312bdf42360e01b81526001600160a01b03848116600483015291821660248201523260448201529116906312bdf42390606401602060405180830381600087803b15801561225f57600080fd5b505af1158015612273573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122979190612816565b156122a7576122a78160016126da565b601a546019546040516312bdf42360e01b81526001600160a01b03858116600483015291821660248201523260448201529116906312bdf42390606401602060405180830381600087803b1580156122fe57600080fd5b505af1158015612312573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123369190612816565b15612346576123468260016126da565b601a5460405163155d0ed960e01b81526001600160a01b03848116600483015283811660248301523260448301529091169063155d0ed990606401611c15565b6001600160a01b0381166000908152600f602052604081205460ff16158015610d0c5750506001600160a01b03166000908152600e602052604090205460ff1690565b6001600160a01b0382166000908152600b602052604081205460ff168061240857506001600160a01b0382166000908152600b602052604090205460ff165b159392505050565b60008061242e6015546120ed6014548661265b90919063ffffffff16565b3060009081526009602052604090205490915061244b9082611c94565b30600081815260096020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061249c9085815260200190565b60405180910390a36124ae8382611b41565b949350505050565b60006124e582604051806060016040528060268152602001612b44602691396124de886111e9565b9190611914565b905060006124f6846111c3876111e9565b600154604051633af4c54360e11b81526001600160a01b038981166004830152602482018690529293509116906375e98a8690604401602060405180830381600087803b15801561254657600080fd5b505af115801561255a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061257e9190612816565b50600154604051633af4c54360e11b81526001600160a01b03878116600483015260248201849052909116906375e98a8690604401602060405180830381600087803b1580156125cd57600080fd5b505af11580156125e1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126059190612816565b50846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161264b91815260200190565b60405180910390a3505050505050565b60008261266a57506000610d0c565b60006126768385612abb565b9050826126838583612a99565b14610dcd5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610b79565b6001600160a01b0382166000908152600e60205260409020805460ff1916821515179055610ef38282611b83565b60006020828403121561271a57600080fd5b8135610dcd81612b1d565b60006020828403121561273757600080fd5b8151610dcd81612b1d565b6000806040838503121561275557600080fd5b823561276081612b1d565b9150602083013561277081612b1d565b809150509250929050565b60008060006060848603121561279057600080fd5b833561279b81612b1d565b925060208401356127ab81612b1d565b929592945050506040919091013590565b600080604083850312156127cf57600080fd5b82356127da81612b1d565b9150602083013561277081612b35565b600080604083850312156127fd57600080fd5b823561280881612b1d565b946020939093013593505050565b60006020828403121561282857600080fd5b8151610dcd81612b35565b6000806040838503121561284657600080fd5b823561280881612b35565b60006020828403121561286357600080fd5b5035919050565b60006020828403121561287c57600080fd5b5051919050565b6000806000806080858703121561289957600080fd5b5050823594602084013594506040840135936060013592509050565b600060208083528351808285015260005b818110156128e2578581018301518582016040015282016128c6565b818111156128f4576000604083870101525b50601f01601f1916929092016040019392505050565b60208082526023908201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260408201526265737360e81b606082015260800190565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b60208082526029908201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206040820152687468616e207a65726f60b81b606082015260800190565b60208082526025908201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604082015264647265737360d81b606082015260800190565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015612a605784516001600160a01b031683529383019391830191600101612a3b565b50506001600160a01b03969096166060850152505050608001529392505050565b60008219821115612a9457612a94612af1565b500190565b600082612ab657634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615612ad557612ad5612af1565b500290565b600082821015612aec57612aec612af1565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b6001600160a01b0381168114612b3257600080fd5b50565b8015158114612b3257600080fdfe45524332303a207472616e7366657220616d6f756e7420657863656564732062616c616e6365a264697066735822122042f8fa0937387f4e6f4f0a46574f678ab036647aa028bffdc17e7f84d5495cd164736f6c63430008070033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000003e400f8f109b64011a13ad5827862597f56e63af00000000000000000000000081f8fe3680837cbcbc8076faf326fe1ca00dd0f80000000000000000000000007eb330f97f6a783dfb246ab7312b0c06699ab0d9
-----Decoded View---------------
Arg [0] : _owner (address): 0x3E400F8f109B64011A13ad5827862597F56E63aF
Arg [1] : _teamWallet (address): 0x81f8Fe3680837CBcBC8076FaF326fe1Ca00DD0F8
Arg [2] : _marketingWallet (address): 0x7eb330f97f6A783DFb246Ab7312b0c06699Ab0d9
-----Encoded View---------------
3 Constructor Arguments found :
Arg [0] : 0000000000000000000000003e400f8f109b64011a13ad5827862597f56e63af
Arg [1] : 00000000000000000000000081f8fe3680837cbcbc8076faf326fe1ca00dd0f8
Arg [2] : 0000000000000000000000007eb330f97f6a783dfb246ab7312b0c06699ab0d9
Deployed Bytecode Sourcemap
11699:17333:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12408:68;;;;;;;;;;-1:-1:-1;12408:68:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;11613:25:1;;;11601:2;11586:18;12408:68:0;;;;;;;;13523:50;;;;;;;;;;;;;;;;14631:71;;;;;;;;;;-1:-1:-1;14694:5:0;;;;;;;;;;;;-1:-1:-1;;;14694:5:0;;;;14631:71;;;;;;;:::i;27870:318::-;;;;;;;;;;;;;:::i;:::-;;;5308:14:1;;5301:22;5283:41;;5271:2;5256:18;27870:318:0;5143:187:1;23066:103:0;;;;;;;;;;-1:-1:-1;23066:103:0;;;;;:::i;:::-;;:::i;:::-;;15464:379;;;;;;;;;;-1:-1:-1;15464:379:0;;;;;:::i;:::-;;:::i;14803:88::-;;;;;;;;;;-1:-1:-1;14876:12:0;;14803:88;;12693:40;;;;;;;;;;-1:-1:-1;12693:40:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;16908:370;;;;;;;;;;-1:-1:-1;16908:370:0;;;;;:::i;:::-;;:::i;26566:144::-;;;;;;;;;;-1:-1:-1;26566:144:0;;;;;:::i;:::-;;:::i;26718:142::-;;;;;;;;;;;;;:::i;5321:132::-;;;;;;;;;;-1:-1:-1;5321:132:0;;;;;:::i;:::-;;:::i;14473:71::-;;;;;;;;;;-1:-1:-1;14473:71:0;;12102:1;13039:36:1;;13027:2;13012:18;14473:71:0;12897:184:1;24428:136:0;;;;;;;;;;-1:-1:-1;24428:136:0;;;;;:::i;:::-;;:::i;23280:197::-;;;;;;;;;;-1:-1:-1;23280:197:0;;;;;:::i;:::-;;:::i;26256:92::-;;;;;;;;;;;;;:::i;26356:115::-;;;;;;;;;;-1:-1:-1;26356:115:0;;;;;:::i;:::-;;:::i;23643:134::-;;;;;;;;;;-1:-1:-1;23643:134:0;;;;;:::i;:::-;;:::i;12485:44::-;;;;;;;;;;-1:-1:-1;12485:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12184:54;;;;;;;;;;;;;;;;15946:122;;;;;;;;;;-1:-1:-1;15946:122:0;;;;;:::i;:::-;;:::i;26973:116::-;;;;;;;;;;-1:-1:-1;26973:116:0;;;;;:::i;:::-;;:::i;24572:119::-;;;;;;;;;;-1:-1:-1;24572:119:0;;;;;:::i;:::-;;:::i;23177:95::-;;;;;;;;;;-1:-1:-1;23177:95:0;;;;;:::i;:::-;;:::i;13485:31::-;;;;;;;;;;-1:-1:-1;13485:31:0;;;;-1:-1:-1;;;13485:31:0;;;;;;24834:449;;;;;;;;;;-1:-1:-1;24834:449:0;;;;;:::i;:::-;;:::i;15118:106::-;;;;;;;;;;-1:-1:-1;15118:106:0;;;;;:::i;:::-;;:::i;15028:84::-;;;;;;;;;;-1:-1:-1;15098:10:0;15070:7;15088:21;;;:9;:21;;;;;;15028:84;;22957:101;;;;;;;;;;-1:-1:-1;22957:101:0;;;;;:::i;:::-;;:::i;25613:134::-;;;;;;;;;;-1:-1:-1;25613:134:0;;;;;:::i;:::-;;:::i;14897:125::-;;;;;;;;;;-1:-1:-1;14897:125:0;;;;;:::i;:::-;-1:-1:-1;;;;;14992:18:0;;;;14967:7;14992:18;;;:9;:18;;;;;;;14897:125;;;;;11817:25:1;;;11885:14;;11878:22;11873:2;11858:18;;11851:50;11790:18;14897:125:0;11649:258:1;12298:48:0;;;;;;;;;;;;;;;;28306:96;;;;;;;;;;-1:-1:-1;28384:10:0;;-1:-1:-1;;;28384:10:0;;;;28306:96;;16694:206;;;;;;;;;;-1:-1:-1;16694:206:0;;;;;:::i;:::-;;:::i;16329:357::-;;;;;;;;;;;;;:::i;14708:69::-;;;;;;;;;;-1:-1:-1;14751:7:0;14769:5;-1:-1:-1;;;;;14769:5:0;14708:69;;;-1:-1:-1;;;;;3835:32:1;;;3817:51;;3805:2;3790:18;14708:69:0;3671:203:1;12536:48:0;;;;;;;;;;-1:-1:-1;12536:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14550:75;;;;;;;;;;-1:-1:-1;14615:7:0;;;;;;;;;;;;-1:-1:-1;;;14615:7:0;;;;14550:75;;25491:114;;;;;;;;;;-1:-1:-1;25491:114:0;;;;;:::i;:::-;;:::i;25291:192::-;;;;;;;;;;-1:-1:-1;25291:192:0;;;;;:::i;:::-;;:::i;13108:19::-;;;;;;;;;;-1:-1:-1;13108:19:0;;;;-1:-1:-1;;;;;13108:19:0;;;16165:156;;;;;;;;;;-1:-1:-1;16165:156:0;;;;;:::i;:::-;;:::i;28513:318::-;;;;;;;;;;;;;:::i;12591:51::-;;;;;;;;;;-1:-1:-1;12591:51:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;28933:96;;;;;;;;;;-1:-1:-1;29011:10:0;;-1:-1:-1;;;29011:10:0;;;;28933:96;;13369:25;;;;;;;;;;;;;;;;12649:37;;;;;;;;;;-1:-1:-1;12649:37:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;22774:175;;;;;;;;;;-1:-1:-1;22774:175:0;;;;;:::i;:::-;;:::i;27642:96::-;;;;;;;;;;-1:-1:-1;27720:10:0;;-1:-1:-1;;;27720:10:0;;;;27642:96;;22639:127;;;;;;;;;;;;;:::i;27236:318::-;;;;;;;;;;;;;:::i;15230:133::-;;;;;;;;;;-1:-1:-1;15230:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;15332:19:0;;;15314:7;15332:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;15230:133;25934:151;;;;;;;;;;-1:-1:-1;25934:151:0;;;;;:::i;:::-;;:::i;5578:140::-;;;;;;;;;;-1:-1:-1;5578:140:0;;;;;:::i;:::-;;:::i;25755:171::-;;;;;;;;;;;;;:::i;12245:46::-;;;;;;;;;;;;;;;;24699:127;;;;;;;;;;-1:-1:-1;24699:127:0;;;;;:::i;:::-;;:::i;13077:24::-;;;;;;;;;;-1:-1:-1;13077:24:0;;;;-1:-1:-1;;;;;13077:24:0;;;27870:318;27928:4;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;;;;;;;;;27974:10:::1;::::0;27945:15:::1;::::0;-1:-1:-1;;;27974:10:0;::::1;;;27971:182;;;-1:-1:-1::0;;28000:10:0::1;:18:::0;;-1:-1:-1;;;;28000:18:0::1;::::0;;-1:-1:-1;;27870:318:0:o;27971:182::-:1;-1:-1:-1::0;28092:10:0::1;:17:::0;;-1:-1:-1;;;;28092:17:0::1;-1:-1:-1::0;;;28092:17:0::1;::::0;;28105:4:::1;27971:182;28170:10:::0;-1:-1:-1;27870:318:0;:::o;23066:103::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;23136:16:::1;:25:::0;23066:103::o;15464:379::-;15539:4;15564:10;15556:73;;;;-1:-1:-1;;;15556:73:0;;10857:2:1;15556:73:0;;;10839:21:1;10896:2;10876:18;;;10869:30;10935:34;10915:18;;;10908:62;-1:-1:-1;;;10986:18:1;;;10979:34;11030:19;;15556:73:0;10655:400:1;15556:73:0;-1:-1:-1;;;;;15648:21:0;;15640:68;;;;-1:-1:-1;;;15640:68:0;;6769:2:1;15640:68:0;;;6751:21:1;6808:2;6788:18;;;6781:30;6847:34;6827:18;;;6820:62;-1:-1:-1;;;6898:18:1;;;6891:32;6940:19;;15640:68:0;6567:398:1;15640:68:0;15731:10;15719:23;;;;:11;:23;;;;;;;;-1:-1:-1;;;;;15719:32:0;;;;;;;;;;;;:41;;;15776:37;11613:25:1;;;15719:32:0;;15731:10;15776:37;;11586:18:1;15776:37:0;;;;;;;-1:-1:-1;15831:4:0;15464:379;;;;;:::o;16908:370::-;-1:-1:-1;;;;;17028:19:0;;17008:4;17028:19;;;:11;:19;;;;;;;;17048:10;17028:31;;;;;;;;-1:-1:-1;;17028:52:0;17025:186;;17130:69;;;;;;;;;;;-1:-1:-1;;;17130:69:0;;;;;;;;-1:-1:-1;;;;;17130:19:0;;-1:-1:-1;17130:19:0;;;:11;:19;;;;;17150:10;17130:31;;;;;;;;;;:69;;17166:6;;17130:35;:69::i;:::-;-1:-1:-1;;;;;17096:19:0;;;;;;:11;:19;;;;;;;;17116:10;17096:31;;;;;;;:103;17025:186;17230:40;17244:6;17252:9;17263:6;17230:13;:40::i;:::-;17223:47;;16908:370;;;;;;:::o;26566:144::-;26662:9;;:40;;-1:-1:-1;;;26662:40:0;;-1:-1:-1;;;;;3835:32:1;;;26662:40:0;;;3817:51:1;26635:7:0;;26662:9;;:27;;3790:18:1;;26662:40:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;26718:142::-;26846:4;;26771:7;;26798:54;;26836:15;;-1:-1:-1;;;;;26846:4:0;26836:9;:15::i;:::-;26825:4;;26798:33;;26815:15;;-1:-1:-1;;;;;26825:4:0;26815:9;:15::i;:::-;26798:12;;;:16;:33::i;:::-;:37;;:54::i;5321:132::-;5376:4;5411:5;;-1:-1:-1;;;;;5400:16:0;;;5411:5;;5400:16;;:45;;-1:-1:-1;;5428:5:0;;-1:-1:-1;;;;;5420:25:0;;;5428:5;;5420:25;;5321:132::o;24428:136::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;24518:38:::1;24541:6;24549;24518:22;:38::i;:::-;24428:136:::0;;:::o;23280:197::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;23357:14:0;::::1;;::::0;;;:4:::1;:14;::::0;;;;;;;:23;;;::::1;::::0;::::1;-1:-1:-1::0;;23357:23:0;;::::1;;::::0;;;23391:7:::1;:17:::0;;;;;:27;;;;::::1;::::0;;::::1;::::0;;23429:40:::1;23362:8:::0;23374:6;23429:22:::1;:40::i;26256:92::-:0;26303:9;;:37;;-1:-1:-1;;;26303:37:0;;26329:10;26303:37;;;3817:51:1;-1:-1:-1;;;;;26303:9:0;;;;:25;;3790:18:1;;26303:37:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26256:92::o;26356:115::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;26430:9:::1;::::0;:33:::1;::::0;-1:-1:-1;;;26430:33:0;;-1:-1:-1;;;;;3835:32:1;;;26430:33:0::1;::::0;::::1;3817:51:1::0;26430:9:0;;::::1;::::0;:25:::1;::::0;3790:18:1;;26430:33:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;26356:115:::0;:::o;23643:134::-;23709:4;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;23734:17:0;::::1;;::::0;;;:7:::1;:17;::::0;;;;;::::1;;23733:18;:36:::0;::::1;;;-1:-1:-1::0;;;;;;;23755:14:0::1;;::::0;;;:4:::1;:14;::::0;;;;;::::1;;::::0;23643:134::o;15946:122::-;16001:4;16025:35;16033:7;-1:-1:-1;;16025:7:0;:35::i;26973:116::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;27046:7:::1;:35:::0;;-1:-1:-1;;;;;;27046:35:0::1;-1:-1:-1::0;;;;;27046:35:0;;;::::1;::::0;;;::::1;::::0;;26973:116::o;24572:119::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;24655:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;24655:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;24572:119::o;23177:95::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;23245:10:::1;:19:::0;23177:95::o;24834:449::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;24972:13:::1;:30:::0;;;25013:7:::1;:18:::0;;;25042:12:::1;:28:::0;;;25092:47:::1;25057:13:::0;25092:28:::1;24988:14:::0;25023:8;25092:18:::1;:28::i;:::-;:32:::0;::::1;:47::i;:::-;25081:8;:58:::0;25150:14:::1;:32:::0;;;25258:16:::1;25273:1;25167:15:::0;25258:16:::1;:::i;:::-;25247:8;;:27;25239:36;;;::::0;::::1;15118:106:::0;15202:5;;:19;;-1:-1:-1;;;15202:19:0;;-1:-1:-1;;;;;3835:32:1;;;15202:19:0;;;3817:51:1;15184:7:0;;15202:5;;:10;;3790:18:1;;15202:19:0;3671:203:1;22957:101:0;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;23026:15:::1;:24:::0;22957:101::o;25613:134::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;25701:17:::1;:38:::0;;-1:-1:-1;;;;;;25701:38:0::1;-1:-1:-1::0;;;;;25701:38:0;;;::::1;::::0;;;::::1;::::0;;25613:134::o;16694:206::-;5183:5;;-1:-1:-1;;;;;5183:5:0;5175:28;5167:73;;;;-1:-1:-1;;;5167:73:0;;;;;;;:::i;:::-;16751:5:::1;:25:::0;;-1:-1:-1;;;;;;16751:25:0::1;-1:-1:-1::0;;;;;16751:25:0;;::::1;;::::0;;16807:4:::1;-1:-1:-1::0;16787:26:0;;;:11:::1;:26;::::0;;;;;;;16822:6:::1;::::0;;::::1;16787:43:::0;;;;;;;-1:-1:-1;;16787:63:0;;16880:4:::1;::::0;;;::::1;16861:24:::0;;:18:::1;:24:::0;;;;;;:31;;-1:-1:-1;;16861:31:0::1;::::0;;::::1;::::0;;16694:206::o;16329:357::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;16385:6:::1;:63:::0;;-1:-1:-1;;;;;;16385:63:0::1;16405:42;16385:63:::0;;::::1;::::0;;;16468:13:::1;::::0;;-1:-1:-1;;;16468:13:0;;;;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;;16405:42;16468:13;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16461:4;:20:::0;;-1:-1:-1;;;;;;16461:20:0::1;-1:-1:-1::0;;;;;16461:20:0;;::::1;;::::0;;16511:6:::1;::::0;:16:::1;::::0;;-1:-1:-1;;;16511:16:0;;;;:6;;;::::1;::::0;:14:::1;::::0;:16:::1;::::0;;::::1;::::0;::::1;::::0;;;;;;;;:6;:16;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16540:4;::::0;16499:61:::1;::::0;-1:-1:-1;;;16499:61:0;;-1:-1:-1;;;;;16540:4:0;;::::1;16499:61;::::0;::::1;4091:34:1::0;16554:4:0::1;4141:18:1::0;;;4134:43;16499:40:0;::::1;::::0;::::1;::::0;4026:18:1;;16499:61:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;16492:4;:68:::0;;-1:-1:-1;;;;;;16492:68:0::1;-1:-1:-1::0;;;;;16492:68:0;;::::1;;::::0;;16591:4:::1;-1:-1:-1::0;16571:26:0;;;:11:::1;:26;::::0;;;;;;;16606:6:::1;::::0;;::::1;16571:43:::0;;;;;;;-1:-1:-1;;16571:63:0;;16666:4;;;;::::1;16647:24:::0;;:18:::1;:24:::0;;;;;:31;;-1:-1:-1;;16647:31:0::1;-1:-1:-1::0;16647:31:0::1;::::0;;16329:357::o;25491:114::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;25569:12:::1;:28:::0;;-1:-1:-1;;;;;;25569:28:0::1;-1:-1:-1::0;;;;;25569:28:0;;;::::1;::::0;;;::::1;::::0;;25491:114::o;25291:192::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;25398:12:::1;:28:::0;;-1:-1:-1;;;;;25398:28:0;;::::1;-1:-1:-1::0;;;;;;25398:28:0;;::::1;;::::0;;;25437:17:::1;:38:::0;;;;;::::1;::::0;::::1;;::::0;;25291:192::o;16165:156::-;16245:4;16269:44;16283:10;16295:9;16306:6;16269:13;:44::i;28513:318::-;28571:4;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;28617:10:::1;::::0;28588:15:::1;::::0;-1:-1:-1;;;28617:10:0;::::1;;;28614:182;;;-1:-1:-1::0;;28643:10:0::1;:18:::0;;-1:-1:-1;;;;28643:18:0::1;::::0;;-1:-1:-1;;27870:318:0:o;28614:182::-:1;-1:-1:-1::0;28735:10:0::1;:17:::0;;-1:-1:-1;;;;28735:17:0::1;-1:-1:-1::0;;;28735:17:0::1;::::0;;28748:4:::1;28813:10:::0;-1:-1:-1;28513:318:0;:::o;22774:175::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;22867:1:::1;22858:6;:10;22850:54;;;::::0;-1:-1:-1;;;22850:54:0;;8231:2:1;22850:54:0::1;::::0;::::1;8213:21:1::0;8270:2;8250:18;;;8243:30;8309:33;8289:18;;;8282:61;8360:18;;22850:54:0::1;8029:355:1::0;22850:54:0::1;22915:17;:26:::0;22774:175::o;22639:127::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;22707:15:::1;22694:10;:28:::0;22746:12:::1;22733:10;:25:::0;22639:127::o;27236:318::-;27294:4;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;27340:10:::1;::::0;27311:15:::1;::::0;-1:-1:-1;;;27340:10:0;::::1;;;27337:182;;;-1:-1:-1::0;;27366:10:0::1;:18:::0;;-1:-1:-1;;;;27366:18:0::1;::::0;;-1:-1:-1;;27870:318:0:o;27337:182::-:1;-1:-1:-1::0;27458:10:0::1;:17:::0;;-1:-1:-1;;;;27458:17:0::1;-1:-1:-1::0;;;27458:17:0::1;::::0;;27471:4:::1;27536:10:::0;-1:-1:-1;27236:318:0;:::o;25934:151::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;26023:11:::1;:21:::0;;;::::1;;-1:-1:-1::0;;;26023:21:0::1;-1:-1:-1::0;;;;26023:21:0;;::::1;::::0;;;::::1;::::0;;;26055:13:::1;:22:::0;25934:151::o;5578:140::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;5655:5:::1;:12:::0;;-1:-1:-1;;;;;;5655:12:0::1;-1:-1:-1::0;;;;;5655:12:0;::::1;::::0;;::::1;::::0;;;5683:27:::1;::::0;3817:51:1;;;5683:27:0::1;::::0;3805:2:1;3790:18;5683:27:0::1;;;;;;;5578:140:::0;:::o;25755:171::-;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;25876:12:::1;::::0;25868:50:::1;::::0;25836:21:::1;::::0;-1:-1:-1;;;;;25876:12:0::1;::::0;25868:50;::::1;;;::::0;25836:21;;25807:26:::1;25868:50:::0;25807:26;25868:50;25836:21;25876:12;25868:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;24699:127:::0;4979:19;4987:10;4979:7;:19::i;:::-;4971:64;;;;-1:-1:-1;;;4971:64:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;24786:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;24786:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;24699:127::o;4228:132::-;4286:7;4313:39;4317:1;4320;4313:39;;;;;;;;;;;;;;;;;:3;:39::i;3780:190::-;3866:7;3902:12;3894:6;;;;3886:29;;;;-1:-1:-1;;;3886:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3926:9:0;3938:5;3942:1;3938;:5;:::i;:::-;3926:17;3780:190;-1:-1:-1;;;;;3780:190:0:o;17286:1209::-;17378:4;-1:-1:-1;;;;;17403:20:0;;17395:70;;;;-1:-1:-1;;;17395:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17484:23:0;;17476:71;;;;-1:-1:-1;;;17476:71:0;;;;;;;:::i;:::-;17575:1;17566:6;:10;17558:64;;;;-1:-1:-1;;;17558:64:0;;;;;;;:::i;:::-;17638:10;;;;17635:75;;;17658:49;17673:6;17681:9;17692:6;17700;17658:14;:49::i;:::-;17651:56;;;;17635:75;17722:39;17735:6;17743:9;17754:6;17722:12;:39::i;:::-;17772:41;17787:6;17795:9;17806:6;17772:14;:41::i;:::-;17829:16;:14;:16::i;:::-;17826:35;;;17848:10;:8;:10::i;:::-;17876:38;17896:6;17904:9;17876:19;:38::i;:::-;17873:416;;;17939:15;17947:6;17939:7;:15::i;:::-;:29;;;;17958:10;:8;:10::i;:::-;17931:50;;;;-1:-1:-1;;;17931:50:0;;8591:2:1;17931:50:0;;;8573:21:1;8630:1;8610:18;;;8603:29;-1:-1:-1;;;8648:18:1;;;8641:38;8696:18;;17931:50:0;8389:331:1;17931:50:0;18002:10;;-1:-1:-1;;;18002:10:0;;;;17998:125;;;18033:34;18049:6;18057:9;18033:15;:34::i;:::-;18143:10;;-1:-1:-1;;;18143:10:0;;;;18139:139;;;18183:17;18190:9;18183:6;:17::i;:::-;18182:18;:37;;;;;18205:14;18212:6;18205;:14::i;:::-;18204:15;18182:37;18174:88;;;;-1:-1:-1;;;18174:88:0;;11262:2:1;18174:88:0;;;11244:21:1;11301:2;11281:18;;;11274:30;11340:34;11320:18;;;11313:62;-1:-1:-1;;;11391:18:1;;;11384:36;11437:19;;18174:88:0;11060:402:1;18174:88:0;18301:22;18326:32;18340:6;18348:9;18326:13;:32::i;:::-;:67;;18387:6;18326:67;;;18361:23;18369:6;18377;18361:7;:23::i;:::-;18301:92;;18406:57;18421:6;18429:9;18440:14;18456:6;18406:14;:57::i;:::-;-1:-1:-1;18483:4:0;;17286:1209;-1:-1:-1;;;;;17286:1209:0:o;3638:136::-;3696:7;3723:43;3727:1;3730;3723:43;;;;;;;;;;;;;;;;;:3;:43::i;24083:337::-;-1:-1:-1;;;;;24172:23:0;;24190:4;24172:23;;;;:41;;-1:-1:-1;24209:4:0;;-1:-1:-1;;;;;24199:14:0;;;24209:4;;24199:14;;24172:41;24164:50;;;;;;-1:-1:-1;;;;;24225:26:0;;;;;;:18;:26;;;;;:35;;-1:-1:-1;;24225:35:0;;;;;;;;;;;;24271:142;;24296:9;;:29;;-1:-1:-1;;;24296:29:0;;-1:-1:-1;;;;;4777:32:1;;;24296:29:0;;;4759:51:1;24296:9:0;4826:18:1;;;4819:34;24296:9:0;;;;:18;;4732::1;;24296:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24428:136;;:::o;24271:142::-;24356:9;;-1:-1:-1;;;;;24383:17:0;;;24356:9;24383:17;;;:9;:17;;;;;;;;24356:45;;-1:-1:-1;;;24356:45:0;;;;;4759:51:1;;;;4826:18;;;4819:34;24356:9:0;;;:18;;4732::1;;24356:45:0;4577:282:1;3453:179:0;3511:7;;3543:5;3547:1;3543;:5;:::i;:::-;3531:17;;3572:1;3567;:6;;3559:46;;;;-1:-1:-1;;;3559:46:0;;7525:2:1;3559:46:0;;;7507:21:1;7564:2;7544:18;;;7537:30;7603:29;7583:18;;;7576:57;7650:18;;3559:46:0;7323:351:1;4366:189:0;4452:7;4487:12;4480:5;4472:28;;;;-1:-1:-1;;;4472:28:0;;;;;;;;:::i;:::-;-1:-1:-1;4511:9:0;4523:5;4527:1;4523;:5;:::i;18503:455::-;18617:4;-1:-1:-1;;;;;18642:20:0;;18634:70;;;;-1:-1:-1;;;18634:70:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;18723:23:0;;18715:71;;;;-1:-1:-1;;;18715:71:0;;;;;;;:::i;:::-;18814:1;18805:6;:10;18797:64;;;;-1:-1:-1;;;18797:64:0;;;;;;;:::i;:::-;18874:52;18887:6;18895:9;18906:11;18919:6;18874:12;:52::i;:::-;-1:-1:-1;18946:4:0;18503:455;;;;;;:::o;18966:411::-;19086:10;;:25;;19101:9;19086:14;:25::i;:::-;19067:15;:44;19064:306;;19137:4;;-1:-1:-1;;;;;19127:14:0;;;19137:4;;19127:14;:231;;19288:16;;19278:6;:26;;:53;;;-1:-1:-1;;;;;;19308:23:0;;;;;;:15;:23;;;;;;;;19278:53;19270:88;;;;-1:-1:-1;;;19270:88:0;;9329:2:1;19270:88:0;;;9311:21:1;9368:2;9348:18;;;9341:30;-1:-1:-1;;;9387:18:1;;;9380:52;9449:18;;19270:88:0;9127:346:1;19270:88:0;18966:411;;;:::o;19127:231::-;19179:15;;19169:6;:25;;:55;;;-1:-1:-1;;;;;;19198:26:0;;;;;;:15;:26;;;;;;;;19169:55;19161:89;;;;-1:-1:-1;;;19161:89:0;;7881:2:1;19161:89:0;;;7863:21:1;7920:2;7900:18;;;7893:30;-1:-1:-1;;;7939:18:1;;;7932:51;8000:18;;19161:89:0;7679:345:1;19385:423:0;19499:4;;-1:-1:-1;;;;;19489:14:0;;;19499:4;;19489:14;:45;;;;-1:-1:-1;;;;;;19508:26:0;;;;;;:15;:26;;;;;;;;19507:27;19489:45;19485:316;;;19570:10;;:25;;19585:9;19570:14;:25::i;:::-;19551:15;:44;;:238;;19750:10;;19740:6;19717:20;19727:9;19717;:20::i;:::-;:29;;;;:::i;:::-;:43;;19709:80;;;;-1:-1:-1;;;19709:80:0;;7172:2:1;19709:80:0;;;7154:21:1;7211:2;7191:18;;;7184:30;7250:26;7230:18;;;7223:54;7294:18;;19709:80:0;6970:348:1;19551:238:0;19652:12;;19642:6;19619:20;19629:9;19619;:20::i;21307:201::-;21394:4;;21356;;-1:-1:-1;;;;;21394:4:0;21380:10;:18;;;;:42;;-1:-1:-1;21412:10:0;;;;21411:11;21380:42;:66;;;;-1:-1:-1;21435:11:0;;-1:-1:-1;;;21435:11:0;;;;21380:66;:120;;;;-1:-1:-1;;21487:13:0;;21477:4;21459:24;;;;:9;:24;;;;;;:41;;;21307:201::o;21516:984::-;13634:10;:17;;-1:-1:-1;;13634:17:0;13647:4;13634:17;;;21588:13:::1;::::0;21638:16:::1;::::0;;21652:1:::1;21638:16:::0;;;;;::::1;::::0;;-1:-1:-1;;21638:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;21638:16:0::1;21614:40;;21683:4;21665;21670:1;21665:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;21665:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;21709:4:::1;::::0;21699:7;;21709:4;::::1;::::0;21699;;21709;;21699:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;21699:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;21784:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;21784:188:0;;21750:21:::1;::::0;21784:6;;;::::1;::::0;:57:::1;::::0;:188:::1;::::0;21856:12;;21726:21:::1;::::0;21899:4;;21926::::1;::::0;21946:15:::1;::::0;21784:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;21983:17;22003:40;22029:13;22003:21;:25;;:40;;;;:::i;:::-;21983:60;;22054:24;22081:42;22114:8;;22081:28;22095:13;;22081:9;:13;;:28;;;;:::i;:::-;:32:::0;::::1;:42::i;:::-;22054:69;;22134:18;22155:36;22182:8;;22155:22;22169:7;;22155:9;:13;;:22;;;;:::i;:36::-;22134:57:::0;-1:-1:-1;22202:23:0::1;22228:47;22134:57:::0;22228:31:::1;:9:::0;22242:16;22228:13:::1;:31::i;:47::-;22202:73:::0;-1:-1:-1;22292:14:0;;22288:89:::1;;22331:12;::::0;22323:42:::1;::::0;-1:-1:-1;;;;;22331:12:0;;::::1;::::0;22323:42;::::1;;;::::0;22354:10;;22331:12:::1;22323:42:::0;22331:12;22323:42;22354:10;22331:12;22323:42;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;22288:89;22393:19:::0;;22389:104:::1;;22437:17;::::0;22429:52:::1;::::0;-1:-1:-1;;;;;22437:17:0;;::::1;::::0;22429:52;::::1;;;::::0;22465:15;;22437:17:::1;22429:52:::0;22437:17;22429:52;22465:15;22437:17;22429:52;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;22389:104;-1:-1:-1::0;;13656:10:0;:18;;-1:-1:-1;;13656:18:0;;;-1:-1:-1;;;;;21516:984:0:o;23918:157::-;24041:4;;24006;;-1:-1:-1;;;;;24030:15:0;;;24041:4;;24030:15;;:37;;-1:-1:-1;;24063:4:0;;-1:-1:-1;;;;;24063:4:0;;;24049:18;;;;23918:157;-1:-1:-1;23918:157:0:o;22508:123::-;22551:4;22575:10;;22589:1;22575:15;;:48;;;;-1:-1:-1;;22613:10:0;;22594:15;:29;;;22508:123::o;19816:363::-;19900:7;;19931:4;;19900:47;;-1:-1:-1;;;19900:47:0;;-1:-1:-1;;;;;4446:15:1;;;19900:47:0;;;4428:34:1;19931:4:0;;;4478:18:1;;;4471:43;19937:9:0;4530:18:1;;;4523:43;19900:7:0;;;:19;;4363:18:1;;19900:47:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19896:104;;;19964:24;19972:9;19983:4;19964:7;:24::i;:::-;20016:7;;20044:4;;20016:44;;-1:-1:-1;;;20016:44:0;;-1:-1:-1;;;;;4446:15:1;;;20016:44:0;;;4428:34:1;20044:4:0;;;4478:18:1;;;4471:43;20050:9:0;4530:18:1;;;4523:43;20016:7:0;;;:19;;4363:18:1;;20016:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20012:98;;;20077:21;20085:6;20093:4;20077:7;:21::i;:::-;20120:7;;:51;;-1:-1:-1;;;20120:51:0;;-1:-1:-1;;;;;4446:15:1;;;20120:51:0;;;4428:34:1;4498:15;;;4478:18;;;4471:43;20161:9:0;4530:18:1;;;4523:43;20120:7:0;;;;:21;;4363:18:1;;20120:51:0;4188:384:1;23785:125:0;-1:-1:-1;;;;;23867:17:0;;23842:4;23867:17;;;:7;:17;;;;;;;;23866:18;:36;;;;-1:-1:-1;;;;;;;23888:14:0;;;;;:4;:14;;;;;;;;;23785:125::o;20187:161::-;-1:-1:-1;;;;;20294:19:0;;20268:4;20294:19;;;:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;20317:22:0;;;;;;:11;:22;;;;;;;;20294:45;20292:48;;20187:161;-1:-1:-1;;;20187:161:0:o;20530:353::-;20597:7;20617:17;20659:40;20684:14;;20659:20;20670:8;;20659:6;:10;;:20;;;;:::i;:40::-;20755:4;20737:24;;;;:9;:24;;;;;;20647:52;;-1:-1:-1;20737:39:0;;20647:52;20737:28;:39::i;:::-;20728:4;20710:24;;;;:9;:24;;;;;;;:66;;;;20792:42;;-1:-1:-1;;;;;20792:42:0;;;;;;;20824:9;11613:25:1;;11601:2;11586:18;;11467:177;20792:42:0;;;;;;;;20854:21;:6;20865:9;20854:10;:21::i;:::-;20847:28;20530:353;-1:-1:-1;;;;20530:353:0:o;20891:408::-;21004:15;21022:71;21044:6;21022:71;;;;;;;;;;;;;;;;;:17;21032:6;21022:9;:17::i;:::-;:21;:71;:21;:71::i;:::-;21004:89;;21104:18;21125:37;21150:11;21125:20;21135:9;21125;:20::i;:37::-;21173:5;;:25;;-1:-1:-1;;;21173:25:0;;-1:-1:-1;;;;;4777:32:1;;;21173:25:0;;;4759:51:1;4826:18;;;4819:34;;;21104:58:0;;-1:-1:-1;21173:5:0;;;:8;;4732:18:1;;21173:25:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1;21209:5:0;;:31;;-1:-1:-1;;;21209:31:0;;-1:-1:-1;;;;;4777:32:1;;;21209:31:0;;;4759:51:1;4826:18;;;4819:34;;;21209:5:0;;;;:8;;4732:18:1;;21209:31:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;21273:9;-1:-1:-1;;;;;21256:35:0;21265:6;-1:-1:-1;;;;;21256:35:0;;21284:6;21256:35;;;;11613:25:1;;11601:2;11586:18;;11467:177;21256:35:0;;;;;;;;20993:306;;20891:408;;;;:::o;3976:246::-;4034:7;4058:6;4054:47;;-1:-1:-1;4088:1:0;4081:8;;4054:47;4111:9;4123:5;4127:1;4123;:5;:::i;:::-;4111:17;-1:-1:-1;4156:1:0;4147:5;4151:1;4111:17;4147:5;:::i;:::-;:10;4139:56;;;;-1:-1:-1;;;4139:56:0;;8927:2:1;4139:56:0;;;8909:21:1;8966:2;8946:18;;;8939:30;9005:34;8985:18;;;8978:62;-1:-1:-1;;;9056:18:1;;;9049:31;9097:19;;4139:56:0;8725:397:1;23485:150:0;-1:-1:-1;;;;;23553:14:0;;;;;;:4;:14;;;;;:23;;-1:-1:-1;;23553:23:0;;;;;;;23587:40;23553:14;:23;23587:22;:40::i;14:247:1:-;73:6;126:2;114:9;105:7;101:23;97:32;94:52;;;142:1;139;132:12;94:52;181:9;168:23;200:31;225:5;200:31;:::i;266:251::-;336:6;389:2;377:9;368:7;364:23;360:32;357:52;;;405:1;402;395:12;357:52;437:9;431:16;456:31;481:5;456:31;:::i;782:388::-;850:6;858;911:2;899:9;890:7;886:23;882:32;879:52;;;927:1;924;917:12;879:52;966:9;953:23;985:31;1010:5;985:31;:::i;:::-;1035:5;-1:-1:-1;1092:2:1;1077:18;;1064:32;1105:33;1064:32;1105:33;:::i;:::-;1157:7;1147:17;;;782:388;;;;;:::o;1175:456::-;1252:6;1260;1268;1321:2;1309:9;1300:7;1296:23;1292:32;1289:52;;;1337:1;1334;1327:12;1289:52;1376:9;1363:23;1395:31;1420:5;1395:31;:::i;:::-;1445:5;-1:-1:-1;1502:2:1;1487:18;;1474:32;1515:33;1474:32;1515:33;:::i;:::-;1175:456;;1567:7;;-1:-1:-1;;;1621:2:1;1606:18;;;;1593:32;;1175:456::o;1636:382::-;1701:6;1709;1762:2;1750:9;1741:7;1737:23;1733:32;1730:52;;;1778:1;1775;1768:12;1730:52;1817:9;1804:23;1836:31;1861:5;1836:31;:::i;:::-;1886:5;-1:-1:-1;1943:2:1;1928:18;;1915:32;1956:30;1915:32;1956:30;:::i;2023:315::-;2091:6;2099;2152:2;2140:9;2131:7;2127:23;2123:32;2120:52;;;2168:1;2165;2158:12;2120:52;2207:9;2194:23;2226:31;2251:5;2226:31;:::i;:::-;2276:5;2328:2;2313:18;;;;2300:32;;-1:-1:-1;;;2023:315:1:o;2343:245::-;2410:6;2463:2;2451:9;2442:7;2438:23;2434:32;2431:52;;;2479:1;2476;2469:12;2431:52;2511:9;2505:16;2530:28;2552:5;2530:28;:::i;2593:309::-;2658:6;2666;2719:2;2707:9;2698:7;2694:23;2690:32;2687:52;;;2735:1;2732;2725:12;2687:52;2774:9;2761:23;2793:28;2815:5;2793:28;:::i;2907:180::-;2966:6;3019:2;3007:9;2998:7;2994:23;2990:32;2987:52;;;3035:1;3032;3025:12;2987:52;-1:-1:-1;3058:23:1;;2907:180;-1:-1:-1;2907:180:1:o;3092:184::-;3162:6;3215:2;3203:9;3194:7;3190:23;3186:32;3183:52;;;3231:1;3228;3221:12;3183:52;-1:-1:-1;3254:16:1;;3092:184;-1:-1:-1;3092:184:1:o;3281:385::-;3367:6;3375;3383;3391;3444:3;3432:9;3423:7;3419:23;3415:33;3412:53;;;3461:1;3458;3451:12;3412:53;-1:-1:-1;;3484:23:1;;;3554:2;3539:18;;3526:32;;-1:-1:-1;3605:2:1;3590:18;;3577:32;;3656:2;3641:18;3628:32;;-1:-1:-1;3281:385:1;-1:-1:-1;3281:385:1:o;5561:597::-;5673:4;5702:2;5731;5720:9;5713:21;5763:6;5757:13;5806:6;5801:2;5790:9;5786:18;5779:34;5831:1;5841:140;5855:6;5852:1;5849:13;5841:140;;;5950:14;;;5946:23;;5940:30;5916:17;;;5935:2;5912:26;5905:66;5870:10;;5841:140;;;5999:6;5996:1;5993:13;5990:91;;;6069:1;6064:2;6055:6;6044:9;6040:22;6036:31;6029:42;5990:91;-1:-1:-1;6142:2:1;6121:15;-1:-1:-1;;6117:29:1;6102:45;;;;6149:2;6098:54;;5561:597;-1:-1:-1;;;5561:597:1:o;6163:399::-;6365:2;6347:21;;;6404:2;6384:18;;;6377:30;6443:34;6438:2;6423:18;;6416:62;-1:-1:-1;;;6509:2:1;6494:18;;6487:33;6552:3;6537:19;;6163:399::o;9478:356::-;9680:2;9662:21;;;9699:18;;;9692:30;9758:34;9753:2;9738:18;;9731:62;9825:2;9810:18;;9478:356::o;9839:405::-;10041:2;10023:21;;;10080:2;10060:18;;;10053:30;10119:34;10114:2;10099:18;;10092:62;-1:-1:-1;;;10185:2:1;10170:18;;10163:39;10234:3;10219:19;;9839:405::o;10249:401::-;10451:2;10433:21;;;10490:2;10470:18;;;10463:30;10529:34;10524:2;10509:18;;10502:62;-1:-1:-1;;;10595:2:1;10580:18;;10573:35;10640:3;10625:19;;10249:401::o;11912:980::-;12174:4;12222:3;12211:9;12207:19;12253:6;12242:9;12235:25;12279:2;12317:6;12312:2;12301:9;12297:18;12290:34;12360:3;12355:2;12344:9;12340:18;12333:31;12384:6;12419;12413:13;12450:6;12442;12435:22;12488:3;12477:9;12473:19;12466:26;;12527:2;12519:6;12515:15;12501:29;;12548:1;12558:195;12572:6;12569:1;12566:13;12558:195;;;12637:13;;-1:-1:-1;;;;;12633:39:1;12621:52;;12728:15;;;;12693:12;;;;12669:1;12587:9;12558:195;;;-1:-1:-1;;;;;;;12809:32:1;;;;12804:2;12789:18;;12782:60;-1:-1:-1;;;12873:3:1;12858:19;12851:35;12770:3;11912:980;-1:-1:-1;;;11912:980:1:o;13086:128::-;13126:3;13157:1;13153:6;13150:1;13147:13;13144:39;;;13163:18;;:::i;:::-;-1:-1:-1;13199:9:1;;13086:128::o;13219:217::-;13259:1;13285;13275:132;;13329:10;13324:3;13320:20;13317:1;13310:31;13364:4;13361:1;13354:15;13392:4;13389:1;13382:15;13275:132;-1:-1:-1;13421:9:1;;13219:217::o;13441:168::-;13481:7;13547:1;13543;13539:6;13535:14;13532:1;13529:21;13524:1;13517:9;13510:17;13506:45;13503:71;;;13554:18;;:::i;:::-;-1:-1:-1;13594:9:1;;13441:168::o;13614:125::-;13654:4;13682:1;13679;13676:8;13673:34;;;13687:18;;:::i;:::-;-1:-1:-1;13724:9:1;;13614:125::o;13744:127::-;13805:10;13800:3;13796:20;13793:1;13786:31;13836:4;13833:1;13826:15;13860:4;13857:1;13850:15;13876:127;13937:10;13932:3;13928:20;13925:1;13918:31;13968:4;13965:1;13958:15;13992:4;13989:1;13982:15;14140:131;-1:-1:-1;;;;;14215:31:1;;14205:42;;14195:70;;14261:1;14258;14251:12;14195:70;14140:131;:::o;14276:118::-;14362:5;14355:13;14348:21;14341:5;14338:32;14328:60;;14384:1;14381;14374:12
Swarm Source
ipfs://42f8fa0937387f4e6f4f0a46574f678ab036647aa028bffdc17e7f84d5495cd1
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.