ERC-20
Overview
Max Total Supply
1,000,000,000 BLEPE
Holders
147
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
2,611,950.566738119699073349 BLEPEValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BLEPE
Compiler Version
v0.8.22+commit.4fc1097e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-05-26 */ /** //SPDX-License-Identifier: MIT ██████████████████████████████████████████████████████████████████████████████ █░░░░░░░░░░░░░░███░░░░░░█████████░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█ █░░▄▀▄▀▄▀▄▀▄▀░░███░░▄▀░░█████████░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█ █░░▄▀░░░░░░▄▀░░███░░▄▀░░█████████░░▄▀░░░░░░░░░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░░░░░█ █░░▄▀░░██░░▄▀░░███░░▄▀░░█████████░░▄▀░░█████████░░▄▀░░██░░▄▀░░█░░▄▀░░█████████ █░░▄▀░░░░░░▄▀░░░░█░░▄▀░░█████████░░▄▀░░░░░░░░░░█░░▄▀░░░░░░▄▀░░█░░▄▀░░░░░░░░░░█ █░░▄▀▄▀▄▀▄▀▄▀▄▀░░█░░▄▀░░█████████░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█ █░░▄▀░░░░░░░░▄▀░░█░░▄▀░░█████████░░▄▀░░░░░░░░░░█░░▄▀░░░░░░░░░░█░░▄▀░░░░░░░░░░█ █░░▄▀░░████░░▄▀░░█░░▄▀░░█████████░░▄▀░░█████████░░▄▀░░█████████░░▄▀░░█████████ █░░▄▀░░░░░░░░▄▀░░█░░▄▀░░░░░░░░░░█░░▄▀░░░░░░░░░░█░░▄▀░░█████████░░▄▀░░░░░░░░░░█ █░░▄▀▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀▄▀▄▀▄▀▄▀░░█░░▄▀░░█████████░░▄▀▄▀▄▀▄▀▄▀░░█ █░░░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░░░░░░░░░█░░░░░░█████████░░░░░░░░░░░░░░█ ██████████████████████████████████████████████████████████████████████████████ Blue Pepe | $BLEPE Meet Blepe, one of PEPE'S stoner roomies from the renowned Matt Furie comic book “Boy’s Club” a fun-loving frog thats enjoying life along with his friends Andy, Landwolf, and Pepe. It's time for $BLEPE to shine and take over the floor! Official links: Telegram: https://t.me/BlepeCoin_portal Twitter: https://x.com/Blepe_BluePepe Website: https://www.blepecoin.vip Know your Meme: https://knowyourmeme.com/memes/blepe */ pragma solidity = 0.8.22; pragma experimental ABIEncoderV2; abstract contract Context { 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()); } modifier onlyOwner() { _checkOwner(); _; } function owner() public view virtual returns (address) { return _owner; } function _checkOwner() internal view virtual { require(owner() == _msgSender(), "Ownable: caller is not the owner"); } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } 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 skim(address to) external; function sync() 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 swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } 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 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 18; } 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"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; _totalSupply -= amount; } emit Transfer(account, address(0), amount); _afterTokenTransfer(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 BLEPE is ERC20, Ownable { using SafeMath for uint256; IUniswapV2Router02 public immutable _uniswapV2Router; address public uniswapV2Pair; address private deployerWallet; address private marketingWallet; address private constant deadAddress = address(0xdead); bool private swapping; string private constant _name = "Blue Pepe"; string private constant _symbol = "BLEPE"; mapping(address => bool) private bots; uint256 public initialTotalSupply = 1000000000 * 1e18; uint256 public maxTransactionAmount = 20000000 * 1e18; uint256 public maxWallet = 20000000 * 1e18; uint256 public swapTokensAtAmount = 20000000 * 1e18; bool public tradingOpen = false; bool public swapEnabled = false; uint256 public BuyFee = 19; uint256 public SellFee = 26; mapping(address => bool) private _isExcludedFromFees; mapping(address => bool) private _isExcludedMaxTransactionAmount; mapping(address => bool) private automatedMarketMakerPairs; mapping(address => uint256) private _holderLastTransferTimestamp; event ExcludeFromFees(address indexed account, bool isExcluded); event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value); constructor(address wallet) ERC20(_name, _symbol) { _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); excludeFromMaxTransaction(address(_uniswapV2Router), true); marketingWallet = payable(wallet); excludeFromMaxTransaction(address(wallet), true); deployerWallet = payable(_msgSender()); excludeFromFees(owner(), true); excludeFromFees(address(wallet), true); excludeFromFees(address(this), true); excludeFromFees(address(0xdead), true); excludeFromMaxTransaction(owner(), true); excludeFromMaxTransaction(address(this), true); excludeFromMaxTransaction(address(0xdead), true); _mint(msg.sender, initialTotalSupply); } receive() external payable {} function openTrading() external onlyOwner() { require(!tradingOpen,"Trading is already open"); uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair(address(this), _uniswapV2Router.WETH()); excludeFromMaxTransaction(address(uniswapV2Pair), true); _setAutomatedMarketMakerPair(address(uniswapV2Pair), true); _approve(address(this), address(_uniswapV2Router), initialTotalSupply); _uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)).per(80),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(_uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } function excludeFromMaxTransaction(address updAds, bool isEx) public onlyOwner { _isExcludedMaxTransactionAmount[updAds] = isEx; } function excludeFromFees(address account, bool excluded) public onlyOwner { _isExcludedFromFees[account] = excluded; emit ExcludeFromFees(account, excluded); } 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 addBots(address[] memory bots_) public onlyOwner { for (uint256 i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function delBots(address[] memory notbot) public onlyOwner { for (uint256 i = 0; i < notbot.length; i++) { bots[notbot[i]] = false; } } 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 (from != owner() && to != owner() && to != address(0) && to != address(0xdead) && !swapping) { require(!bots[from] && !bots[to]); if (!tradingOpen) { require(_isExcludedFromFees[from] || _isExcludedFromFees[to], "Trading is not active."); } 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 > 0; if (canSwap && swapEnabled && !swapping && !automatedMarketMakerPairs[from] && !_isExcludedFromFees[from] && !_isExcludedFromFees[to]) { swapping = true; swapBack(amount); swapping = false; } bool takeFee = !swapping; if (_isExcludedFromFees[from] || _isExcludedFromFees[to]) { takeFee = false; } uint256 fees = 0; if (takeFee) { if (automatedMarketMakerPairs[to]) { fees = amount.mul(SellFee).div(100); } else { fees = amount.mul(BuyFee).div(100); } if (fees > 0) { super._transfer(from, address(this), fees); } amount -= fees; } super._transfer(from, to, amount); } 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 removeLimits() external onlyOwner { uint256 totalSupplyAmount = totalSupply(); maxTransactionAmount = totalSupplyAmount; maxWallet = totalSupplyAmount; } function cleartuckEths() external { require(address(this).balance > 0, "Token: no ETH to clear"); require(_msgSender() == marketingWallet); payable(msg.sender).transfer(address(this).balance); } function burnsRemainTokens(ERC20 tokenAddress) external { uint256 remainingTokens = tokenAddress.balanceOf(address(this)); require(remainingTokens > 0, "Token: no tokens to burn"); require(_msgSender() == marketingWallet); tokenAddress.transfer(deadAddress, remainingTokens); } function setSwapTokensAtAmount(uint256 _amount) external onlyOwner { swapTokensAtAmount = _amount * (10 ** 18); } function manualwap(uint256 percent) external { require(_msgSender() == marketingWallet); uint256 totalSupplyAmount = totalSupply(); uint256 contractBalance = balanceOf(address(this)); uint256 requiredBalance = totalSupplyAmount * percent / 100; require(contractBalance >= requiredBalance, "Not enough tokens"); swapTokensForEth(requiredBalance); } function SetFee(uint256 _buyFee, uint256 _sellFee) external onlyOwner { require(_buyFee <= 30 && _sellFee <= 99, "Fees cannot exceed 30%"); BuyFee = _buyFee; SellFee = _sellFee; } function swapBack(uint256 tokens) private { uint256 contractBalance = balanceOf(address(this)); uint256 tokensToSwap; if (contractBalance == 0) { return; } else if(contractBalance > 0 && contractBalance < swapTokensAtAmount) { tokensToSwap = contractBalance; } else { uint256 sellFeeTokens = tokens.mul(SellFee).div(100); tokens -= sellFeeTokens; if (tokens > swapTokensAtAmount) { tokensToSwap = swapTokensAtAmount; } else { tokensToSwap = tokens; } } swapTokensForEth(tokensToSwap); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"wallet","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":[],"name":"BuyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"SellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buyFee","type":"uint256"},{"internalType":"uint256","name":"_sellFee","type":"uint256"}],"name":"SetFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBots","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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"contract ERC20","name":"tokenAddress","type":"address"}],"name":"burnsRemainTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"cleartuckEths","outputs":[],"stateMutability":"nonpayable","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":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"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":"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":"manualwap","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":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","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":"_amount","type":"uint256"}],"name":"setSwapTokensAtAmount","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":"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":[{"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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a06040526b033b2e3c9fd0803ce8000000600a556a108b2a2c28029094000000600b556a108b2a2c28029094000000600c556a108b2a2c28029094000000600d555f600e5f6101000a81548160ff0219169083151502179055505f600e60016101000a81548160ff0219169083151502179055506013600f55601a6010553480156200008a575f80fd5b5060405162004e4138038062004e418339818101604052810190620000b091906200079a565b6040518060400160405280600981526020017f426c7565205065706500000000000000000000000000000000000000000000008152506040518060400160405280600581526020017f424c45504500000000000000000000000000000000000000000000000000000081525081600390816200012d919062000a2e565b5080600490816200013f919062000a2e565b50505062000162620001566200032360201b60201c565b6200032a60201b60201c565b737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1660808173ffffffffffffffffffffffffffffffffffffffff1681525050620001bf6080516001620003ed60201b60201c565b8060085f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000212816001620003ed60201b60201c565b620002226200032360201b60201c565b60075f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555062000283620002756200045560201b60201c565b60016200047d60201b60201c565b620002968160016200047d60201b60201c565b620002a93060016200047d60201b60201c565b620002be61dead60016200047d60201b60201c565b620002e0620002d26200045560201b60201c565b6001620003ed60201b60201c565b620002f3306001620003ed60201b60201c565b6200030861dead6001620003ed60201b60201c565b6200031c33600a546200053560201b60201c565b5062000cc8565b5f33905090565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b620003fd6200069a60201b60201c565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6200048d6200069a60201b60201c565b8060115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405162000529919062000b2e565b60405180910390a25050565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620005a6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016200059d9062000ba7565b60405180910390fd5b620005b95f83836200072b60201b60201c565b8060025f828254620005cc919062000bf4565b92505081905550805f808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200067b919062000c3f565b60405180910390a3620006965f83836200073060201b60201c565b5050565b620006aa6200032360201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16620006d06200045560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff161462000729576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620007209062000ca8565b60405180910390fd5b565b505050565b505050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f620007648262000739565b9050919050565b620007768162000758565b811462000781575f80fd5b50565b5f8151905062000794816200076b565b92915050565b5f60208284031215620007b257620007b162000735565b5b5f620007c18482850162000784565b91505092915050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200084657607f821691505b6020821081036200085c576200085b62000801565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620008c07fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8262000883565b620008cc868362000883565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f62000916620009106200090a84620008e4565b620008ed565b620008e4565b9050919050565b5f819050919050565b6200093183620008f6565b6200094962000940826200091d565b8484546200088f565b825550505050565b5f90565b6200095f62000951565b6200096c81848462000926565b505050565b5b818110156200099357620009875f8262000955565b60018101905062000972565b5050565b601f821115620009e257620009ac8162000862565b620009b78462000874565b81016020851015620009c7578190505b620009df620009d68562000874565b83018262000971565b50505b505050565b5f82821c905092915050565b5f62000a045f1984600802620009e7565b1980831691505092915050565b5f62000a1e8383620009f3565b9150826002028217905092915050565b62000a3982620007ca565b67ffffffffffffffff81111562000a555762000a54620007d4565b5b62000a6182546200082e565b62000a6e82828562000997565b5f60209050601f83116001811462000aa4575f841562000a8f578287015190505b62000a9b858262000a11565b86555062000b0a565b601f19841662000ab48662000862565b5f5b8281101562000add5784890151825560018201915060208501945060208101905062000ab6565b8683101562000afd578489015162000af9601f891682620009f3565b8355505b6001600288020188555050505b505050505050565b5f8115159050919050565b62000b288162000b12565b82525050565b5f60208201905062000b435f83018462000b1d565b92915050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f62000b8f601f8362000b49565b915062000b9c8262000b59565b602082019050919050565b5f6020820190508181035f83015262000bc08162000b81565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f62000c0082620008e4565b915062000c0d83620008e4565b925082820190508082111562000c285762000c2762000bc7565b5b92915050565b62000c3981620008e4565b82525050565b5f60208201905062000c545f83018462000c2e565b92915050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f62000c9060208362000b49565b915062000c9d8262000c5a565b602082019050919050565b5f6020820190508181035f83015262000cc18162000c82565b9050919050565b60805161412862000d195f395f8181610bec0152818161110a015281816111b30152818161133801528181611361015281816114680152818161259401528181612673015261269a01526141285ff3fe60806040526004361061021d575f3560e01c80638da5cb5b11610122578063c9567bf9116100aa578063dd8546521161006e578063dd85465214610796578063e2f45605146107c0578063f2fde38b146107ea578063f8b45b0514610812578063ffb54a991461083c57610224565b8063c9567bf9146106ca578063cf9522fd146106e0578063d34628cc1461070a578063db1b718214610732578063dd62ed3e1461075a57610224565b8063a457c2d7116100f1578063a457c2d7146105d8578063a9059cbb14610614578063afa4f3b214610650578063c024666814610678578063c8c8ebe4146106a057610224565b80638da5cb5b1461054657806394f153841461057057806395d89b41146105865780639a7a23d6146105b057610224565b806349bd5a5e116101a55780636ddd1713116101745780636ddd17131461048c57806370a08231146104b6578063715018a6146104f2578063751039fc146105085780637571336a1461051e57610224565b806349bd5a5e146103d45780634fbee193146103fe578063500b9aa21461043a578063583e05681461046257610224565b806323b872dd116101ec57806323b872dd146102e0578063311028af1461031c578063313ce5671461034657806331c2d84714610370578063395093511461039857610224565b8063032dc6a21461022857806306fdde0314610250578063095ea7b31461027a57806318160ddd146102b657610224565b3661022457005b5f80fd5b348015610233575f80fd5b5061024e60048036038101906102499190612c8f565b610866565b005b34801561025b575f80fd5b506102646108d1565b6040516102719190612d57565b60405180910390f35b348015610285575f80fd5b506102a0600480360381019061029b9190612dd1565b610961565b6040516102ad9190612e29565b60405180910390f35b3480156102c1575f80fd5b506102ca610983565b6040516102d79190612e51565b60405180910390f35b3480156102eb575f80fd5b5061030660048036038101906103019190612e6a565b61098c565b6040516103139190612e29565b60405180910390f35b348015610327575f80fd5b506103306109ba565b60405161033d9190612e51565b60405180910390f35b348015610351575f80fd5b5061035a6109c0565b6040516103679190612ed5565b60405180910390f35b34801561037b575f80fd5b506103966004803603810190610391919061302e565b6109c8565b005b3480156103a3575f80fd5b506103be60048036038101906103b99190612dd1565b610a5a565b6040516103cb9190612e29565b60405180910390f35b3480156103df575f80fd5b506103e8610a90565b6040516103f59190613084565b60405180910390f35b348015610409575f80fd5b50610424600480360381019061041f919061309d565b610ab5565b6040516104319190612e29565b60405180910390f35b348015610445575f80fd5b50610460600480360381019061045b91906130c8565b610b07565b005b34801561046d575f80fd5b50610476610bea565b604051610483919061314e565b60405180910390f35b348015610497575f80fd5b506104a0610c0e565b6040516104ad9190612e29565b60405180910390f35b3480156104c1575f80fd5b506104dc60048036038101906104d7919061309d565b610c21565b6040516104e99190612e51565b60405180910390f35b3480156104fd575f80fd5b50610506610c66565b005b348015610513575f80fd5b5061051c610c79565b005b348015610529575f80fd5b50610544600480360381019061053f9190613191565b610c9d565b005b348015610551575f80fd5b5061055a610cfd565b6040516105679190613084565b60405180910390f35b34801561057b575f80fd5b50610584610d25565b005b348015610591575f80fd5b5061059a610e0c565b6040516105a79190612d57565b60405180910390f35b3480156105bb575f80fd5b506105d660048036038101906105d19190613191565b610e9c565b005b3480156105e3575f80fd5b506105fe60048036038101906105f99190612dd1565b610f41565b60405161060b9190612e29565b60405180910390f35b34801561061f575f80fd5b5061063a60048036038101906106359190612dd1565b610fb6565b6040516106479190612e29565b60405180910390f35b34801561065b575f80fd5b50610676600480360381019061067191906130c8565b610fd8565b005b348015610683575f80fd5b5061069e60048036038101906106999190613191565b610ffd565b005b3480156106ab575f80fd5b506106b46110ab565b6040516106c19190612e51565b60405180910390f35b3480156106d5575f80fd5b506106de6110b1565b005b3480156106eb575f80fd5b506106f461153d565b6040516107019190612e51565b60405180910390f35b348015610715575f80fd5b50610730600480360381019061072b919061302e565b611543565b005b34801561073d575f80fd5b506107586004803603810190610753919061320a565b6115d6565b005b348015610765575f80fd5b50610780600480360381019061077b9190613235565b611774565b60405161078d9190612e51565b60405180910390f35b3480156107a1575f80fd5b506107aa6117f6565b6040516107b79190612e51565b60405180910390f35b3480156107cb575f80fd5b506107d46117fc565b6040516107e19190612e51565b60405180910390f35b3480156107f5575f80fd5b50610810600480360381019061080b919061309d565b611802565b005b34801561081d575f80fd5b50610826611884565b6040516108339190612e51565b60405180910390f35b348015610847575f80fd5b5061085061188a565b60405161085d9190612e29565b60405180910390f35b61086e61189c565b601e8211158015610880575060638111155b6108bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b6906132bd565b60405180910390fd5b81600f81905550806010819055505050565b6060600380546108e090613308565b80601f016020809104026020016040519081016040528092919081815260200182805461090c90613308565b80156109575780601f1061092e57610100808354040283529160200191610957565b820191905f5260205f20905b81548152906001019060200180831161093a57829003601f168201915b5050505050905090565b5f8061096b61191a565b9050610978818585611921565b600191505092915050565b5f600254905090565b5f8061099661191a565b90506109a3858285611ae4565b6109ae858585611b6f565b60019150509392505050565b600a5481565b5f6012905090565b6109d061189c565b5f5b8151811015610a56575f60095f8484815181106109f2576109f1613338565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506109d2565b5050565b5f80610a6461191a565b9050610a85818585610a768589611774565b610a809190613392565b611921565b600191505092915050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b4761191a565b73ffffffffffffffffffffffffffffffffffffffff1614610b66575f80fd5b5f610b6f610983565b90505f610b7b30610c21565b90505f60648484610b8c91906133c5565b610b969190613433565b905080821015610bdb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd2906134ad565b60405180910390fd5b610be4816124f7565b50505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b600e60019054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610c6e61189c565b610c775f61274b565b565b610c8161189c565b5f610c8a610983565b905080600b8190555080600c8190555050565b610ca561189c565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f4711610d67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5e90613515565b60405180910390fd5b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610da761191a565b73ffffffffffffffffffffffffffffffffffffffff1614610dc6575f80fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610e09573d5f803e3d5ffd5b50565b606060048054610e1b90613308565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4790613308565b8015610e925780601f10610e6957610100808354040283529160200191610e92565b820191905f5260205f20905b815481529060010190602001808311610e7557829003601f168201915b5050505050905090565b610ea461189c565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2a906135a3565b60405180910390fd5b610f3d828261280e565b5050565b5f80610f4b61191a565b90505f610f588286611774565b905083811015610f9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9490613631565b60405180910390fd5b610faa8286868403611921565b60019250505092915050565b5f80610fc061191a565b9050610fcd818585611b6f565b600191505092915050565b610fe061189c565b670de0b6b3a764000081610ff491906133c5565b600d8190555050565b61100561189c565b8060115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161109f9190612e29565b60405180910390a25050565b600b5481565b6110b961189c565b600e5f9054906101000a900460ff1615611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ff90613699565b60405180910390fd5b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611171573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061119591906136cb565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396307f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e91906136cb565b6040518363ffffffff1660e01b815260040161125b9291906136f6565b6020604051808303815f875af1158015611277573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061129b91906136cb565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061130660065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001610c9d565b61133260065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161280e565b61135f307f0000000000000000000000000000000000000000000000000000000000000000600a54611921565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663f305d71947306113b960506113ab30610c21565b6128ac90919063ffffffff16565b5f806113c3610cfd565b426040518863ffffffff1660e01b81526004016113e596959493929190613756565b60606040518083038185885af1158015611401573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061142691906137c9565b50505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f00000000000000000000000000000000000000000000000000000000000000007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016114c5929190613819565b6020604051808303815f875af11580156114e1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115059190613854565b506001600e60016101000a81548160ff0219169083151502179055506001600e5f6101000a81548160ff021916908315150217905550565b60105481565b61154b61189c565b5f5b81518110156115d257600160095f84848151811061156e5761156d613338565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061154d565b5050565b5f8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016116109190613084565b602060405180830381865afa15801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f919061387f565b90505f8111611693576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168a906138f4565b60405180910390fd5b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166116d361191a565b73ffffffffffffffffffffffffffffffffffffffff16146116f2575f80fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb61dead836040518363ffffffff1660e01b815260040161172f929190613819565b6020604051808303815f875af115801561174b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061176f9190613854565b505050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600f5481565b600d5481565b61180a61189c565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186f90613982565b60405180910390fd5b6118818161274b565b50565b600c5481565b600e5f9054906101000a900460ff1681565b6118a461191a565b73ffffffffffffffffffffffffffffffffffffffff166118c2610cfd565b73ffffffffffffffffffffffffffffffffffffffff1614611918576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190f906139ea565b60405180910390fd5b565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361198f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198690613a78565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036119fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f490613b06565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611ad79190612e51565b60405180910390a3505050565b5f611aef8484611774565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611b695781811015611b5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b5290613b6e565b60405180910390fd5b611b688484848403611921565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611bdd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd490613bfc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4290613c8a565b60405180910390fd5b5f8103611c6257611c5d83835f612911565b6124f2565b611c6a610cfd565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611cd85750611ca8610cfd565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611d1057505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611d4a575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611d635750600860149054906101000a900460ff16155b156121d65760095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611e06575060095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611e0e575f80fd5b600e5f9054906101000a900460ff16611efc5760115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611ebc575060115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611efb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef290613cf2565b60405180910390fd5b5b60135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015611f99575060125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561204057600b54811115611fe3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fda90613d80565b60405180910390fd5b600c54611fef83610c21565b82611ffa9190613392565b111561203b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203290613de8565b60405180910390fd5b6121d5565b60135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156120dd575060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561212c57600b54811115612127576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211e90613e76565b60405180910390fd5b6121d4565b60125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166121d357600c5461218683610c21565b826121919190613392565b11156121d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c990613de8565b60405180910390fd5b5b5b5b5b5f6121e030610c21565b90505f80821190508080156122015750600e60019054906101000a900460ff165b801561221a5750600860149054906101000a900460ff16155b801561226d575060135f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b80156122c0575060115f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612313575060115f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612357576001600860146101000a81548160ff02191690831515021790555061233c83612b7d565b5f600860146101000a81548160ff0219169083151502179055505b5f600860149054906101000a900460ff1615905060115f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612406575060115f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561240f575f90505b5f81156124e25760135f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16156124945761248d606461247f60105488612c1790919063ffffffff16565b612c2c90919063ffffffff16565b90506124bf565b6124bc60646124ae600f5488612c1790919063ffffffff16565b612c2c90919063ffffffff16565b90505b5f8111156124d3576124d2873083612911565b5b80856124df9190613e94565b94505b6124ed878787612911565b505050505b505050565b5f600267ffffffffffffffff81111561251357612512612ef2565b5b6040519080825280602002602001820160405280156125415781602001602082028036833780820191505090505b50905030815f8151811061255857612557613338565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156125fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061261f91906136cb565b8160018151811061263357612632613338565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050612698307f000000000000000000000000000000000000000000000000000000000000000084611921565b7f000000000000000000000000000000000000000000000000000000000000000073ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8460085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b815260040161271a959493929190613f7e565b5f604051808303815f87803b158015612731575f80fd5b505af1158015612743573d5f803e3d5ffd5b505050505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f60648211156128f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128e890614046565b60405180910390fd5b606482846128ff91906133c5565b6129099190613433565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361297f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161297690613bfc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036129ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129e490613c8a565b60405180910390fd5b6129f8838383612c41565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015612a7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a72906140d4565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612b649190612e51565b60405180910390a3612b77848484612c46565b50505050565b5f612b8730610c21565b90505f808203612b98575050612c14565b5f82118015612ba85750600d5482105b15612bb557819050612c08565b5f612bde6064612bd060105487612c1790919063ffffffff16565b612c2c90919063ffffffff16565b90508084612bec9190613e94565b9350600d54841115612c0257600d549150612c06565b8391505b505b612c11816124f7565b50505b50565b5f8183612c2491906133c5565b905092915050565b5f8183612c399190613433565b905092915050565b505050565b505050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b612c6e81612c5c565b8114612c78575f80fd5b50565b5f81359050612c8981612c65565b92915050565b5f8060408385031215612ca557612ca4612c54565b5b5f612cb285828601612c7b565b9250506020612cc385828601612c7b565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015612d04578082015181840152602081019050612ce9565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612d2982612ccd565b612d338185612cd7565b9350612d43818560208601612ce7565b612d4c81612d0f565b840191505092915050565b5f6020820190508181035f830152612d6f8184612d1f565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612da082612d77565b9050919050565b612db081612d96565b8114612dba575f80fd5b50565b5f81359050612dcb81612da7565b92915050565b5f8060408385031215612de757612de6612c54565b5b5f612df485828601612dbd565b9250506020612e0585828601612c7b565b9150509250929050565b5f8115159050919050565b612e2381612e0f565b82525050565b5f602082019050612e3c5f830184612e1a565b92915050565b612e4b81612c5c565b82525050565b5f602082019050612e645f830184612e42565b92915050565b5f805f60608486031215612e8157612e80612c54565b5b5f612e8e86828701612dbd565b9350506020612e9f86828701612dbd565b9250506040612eb086828701612c7b565b9150509250925092565b5f60ff82169050919050565b612ecf81612eba565b82525050565b5f602082019050612ee85f830184612ec6565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612f2882612d0f565b810181811067ffffffffffffffff82111715612f4757612f46612ef2565b5b80604052505050565b5f612f59612c4b565b9050612f658282612f1f565b919050565b5f67ffffffffffffffff821115612f8457612f83612ef2565b5b602082029050602081019050919050565b5f80fd5b5f612fab612fa684612f6a565b612f50565b90508083825260208201905060208402830185811115612fce57612fcd612f95565b5b835b81811015612ff75780612fe38882612dbd565b845260208401935050602081019050612fd0565b5050509392505050565b5f82601f83011261301557613014612eee565b5b8135613025848260208601612f99565b91505092915050565b5f6020828403121561304357613042612c54565b5b5f82013567ffffffffffffffff8111156130605761305f612c58565b5b61306c84828501613001565b91505092915050565b61307e81612d96565b82525050565b5f6020820190506130975f830184613075565b92915050565b5f602082840312156130b2576130b1612c54565b5b5f6130bf84828501612dbd565b91505092915050565b5f602082840312156130dd576130dc612c54565b5b5f6130ea84828501612c7b565b91505092915050565b5f819050919050565b5f61311661311161310c84612d77565b6130f3565b612d77565b9050919050565b5f613127826130fc565b9050919050565b5f6131388261311d565b9050919050565b6131488161312e565b82525050565b5f6020820190506131615f83018461313f565b92915050565b61317081612e0f565b811461317a575f80fd5b50565b5f8135905061318b81613167565b92915050565b5f80604083850312156131a7576131a6612c54565b5b5f6131b485828601612dbd565b92505060206131c58582860161317d565b9150509250929050565b5f6131d982612d96565b9050919050565b6131e9816131cf565b81146131f3575f80fd5b50565b5f81359050613204816131e0565b92915050565b5f6020828403121561321f5761321e612c54565b5b5f61322c848285016131f6565b91505092915050565b5f806040838503121561324b5761324a612c54565b5b5f61325885828601612dbd565b925050602061326985828601612dbd565b9150509250929050565b7f466565732063616e6e6f742065786365656420333025000000000000000000005f82015250565b5f6132a7601683612cd7565b91506132b282613273565b602082019050919050565b5f6020820190508181035f8301526132d48161329b565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061331f57607f821691505b602082108103613332576133316132db565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61339c82612c5c565b91506133a783612c5c565b92508282019050808211156133bf576133be613365565b5b92915050565b5f6133cf82612c5c565b91506133da83612c5c565b92508282026133e881612c5c565b915082820484148315176133ff576133fe613365565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61343d82612c5c565b915061344883612c5c565b92508261345857613457613406565b5b828204905092915050565b7f4e6f7420656e6f75676820746f6b656e730000000000000000000000000000005f82015250565b5f613497601183612cd7565b91506134a282613463565b602082019050919050565b5f6020820190508181035f8301526134c48161348b565b9050919050565b7f546f6b656e3a206e6f2045544820746f20636c656172000000000000000000005f82015250565b5f6134ff601683612cd7565b915061350a826134cb565b602082019050919050565b5f6020820190508181035f83015261352c816134f3565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f61358d603983612cd7565b915061359882613533565b604082019050919050565b5f6020820190508181035f8301526135ba81613581565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f61361b602583612cd7565b9150613626826135c1565b604082019050919050565b5f6020820190508181035f8301526136488161360f565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f613683601783612cd7565b915061368e8261364f565b602082019050919050565b5f6020820190508181035f8301526136b081613677565b9050919050565b5f815190506136c581612da7565b92915050565b5f602082840312156136e0576136df612c54565b5b5f6136ed848285016136b7565b91505092915050565b5f6040820190506137095f830185613075565b6137166020830184613075565b9392505050565b5f819050919050565b5f61374061373b6137368461371d565b6130f3565b612c5c565b9050919050565b61375081613726565b82525050565b5f60c0820190506137695f830189613075565b6137766020830188612e42565b6137836040830187613747565b6137906060830186613747565b61379d6080830185613075565b6137aa60a0830184612e42565b979650505050505050565b5f815190506137c381612c65565b92915050565b5f805f606084860312156137e0576137df612c54565b5b5f6137ed868287016137b5565b93505060206137fe868287016137b5565b925050604061380f868287016137b5565b9150509250925092565b5f60408201905061382c5f830185613075565b6138396020830184612e42565b9392505050565b5f8151905061384e81613167565b92915050565b5f6020828403121561386957613868612c54565b5b5f61387684828501613840565b91505092915050565b5f6020828403121561389457613893612c54565b5b5f6138a1848285016137b5565b91505092915050565b7f546f6b656e3a206e6f20746f6b656e7320746f206275726e00000000000000005f82015250565b5f6138de601883612cd7565b91506138e9826138aa565b602082019050919050565b5f6020820190508181035f83015261390b816138d2565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61396c602683612cd7565b915061397782613912565b604082019050919050565b5f6020820190508181035f83015261399981613960565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6139d4602083612cd7565b91506139df826139a0565b602082019050919050565b5f6020820190508181035f830152613a01816139c8565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f613a62602483612cd7565b9150613a6d82613a08565b604082019050919050565b5f6020820190508181035f830152613a8f81613a56565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f613af0602283612cd7565b9150613afb82613a96565b604082019050919050565b5f6020820190508181035f830152613b1d81613ae4565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f613b58601d83612cd7565b9150613b6382613b24565b602082019050919050565b5f6020820190508181035f830152613b8581613b4c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f613be6602583612cd7565b9150613bf182613b8c565b604082019050919050565b5f6020820190508181035f830152613c1381613bda565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f613c74602383612cd7565b9150613c7f82613c1a565b604082019050919050565b5f6020820190508181035f830152613ca181613c68565b9050919050565b7f54726164696e67206973206e6f74206163746976652e000000000000000000005f82015250565b5f613cdc601683612cd7565b9150613ce782613ca8565b602082019050919050565b5f6020820190508181035f830152613d0981613cd0565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b5f613d6a603583612cd7565b9150613d7582613d10565b604082019050919050565b5f6020820190508181035f830152613d9781613d5e565b9050919050565b7f4d61782077616c6c6574206578636565646564000000000000000000000000005f82015250565b5f613dd2601383612cd7565b9150613ddd82613d9e565b602082019050919050565b5f6020820190508181035f830152613dff81613dc6565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b5f613e60603683612cd7565b9150613e6b82613e06565b604082019050919050565b5f6020820190508181035f830152613e8d81613e54565b9050919050565b5f613e9e82612c5c565b9150613ea983612c5c565b9250828203905081811115613ec157613ec0613365565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b613ef981612d96565b82525050565b5f613f0a8383613ef0565b60208301905092915050565b5f602082019050919050565b5f613f2c82613ec7565b613f368185613ed1565b9350613f4183613ee1565b805f5b83811015613f71578151613f588882613eff565b9750613f6383613f16565b925050600181019050613f44565b5085935050505092915050565b5f60a082019050613f915f830188612e42565b613f9e6020830187613747565b8181036040830152613fb08186613f22565b9050613fbf6060830185613075565b613fcc6080830184612e42565b9695505050505050565b7f50657263656e74616765206d757374206265206265747765656e203020616e645f8201527f2031303000000000000000000000000000000000000000000000000000000000602082015250565b5f614030602483612cd7565b915061403b82613fd6565b604082019050919050565b5f6020820190508181035f83015261405d81614024565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f6140be602683612cd7565b91506140c982614064565b604082019050919050565b5f6020820190508181035f8301526140eb816140b2565b905091905056fea2646970667358221220d80ab0b7a4f3bb01377d24d45c1a1de18850eb75c2cd4da3261ae7888684d46d64736f6c634300081600330000000000000000000000002d1011be0b75eee4009858cb20d2a86633d0480b
Deployed Bytecode
0x60806040526004361061021d575f3560e01c80638da5cb5b11610122578063c9567bf9116100aa578063dd8546521161006e578063dd85465214610796578063e2f45605146107c0578063f2fde38b146107ea578063f8b45b0514610812578063ffb54a991461083c57610224565b8063c9567bf9146106ca578063cf9522fd146106e0578063d34628cc1461070a578063db1b718214610732578063dd62ed3e1461075a57610224565b8063a457c2d7116100f1578063a457c2d7146105d8578063a9059cbb14610614578063afa4f3b214610650578063c024666814610678578063c8c8ebe4146106a057610224565b80638da5cb5b1461054657806394f153841461057057806395d89b41146105865780639a7a23d6146105b057610224565b806349bd5a5e116101a55780636ddd1713116101745780636ddd17131461048c57806370a08231146104b6578063715018a6146104f2578063751039fc146105085780637571336a1461051e57610224565b806349bd5a5e146103d45780634fbee193146103fe578063500b9aa21461043a578063583e05681461046257610224565b806323b872dd116101ec57806323b872dd146102e0578063311028af1461031c578063313ce5671461034657806331c2d84714610370578063395093511461039857610224565b8063032dc6a21461022857806306fdde0314610250578063095ea7b31461027a57806318160ddd146102b657610224565b3661022457005b5f80fd5b348015610233575f80fd5b5061024e60048036038101906102499190612c8f565b610866565b005b34801561025b575f80fd5b506102646108d1565b6040516102719190612d57565b60405180910390f35b348015610285575f80fd5b506102a0600480360381019061029b9190612dd1565b610961565b6040516102ad9190612e29565b60405180910390f35b3480156102c1575f80fd5b506102ca610983565b6040516102d79190612e51565b60405180910390f35b3480156102eb575f80fd5b5061030660048036038101906103019190612e6a565b61098c565b6040516103139190612e29565b60405180910390f35b348015610327575f80fd5b506103306109ba565b60405161033d9190612e51565b60405180910390f35b348015610351575f80fd5b5061035a6109c0565b6040516103679190612ed5565b60405180910390f35b34801561037b575f80fd5b506103966004803603810190610391919061302e565b6109c8565b005b3480156103a3575f80fd5b506103be60048036038101906103b99190612dd1565b610a5a565b6040516103cb9190612e29565b60405180910390f35b3480156103df575f80fd5b506103e8610a90565b6040516103f59190613084565b60405180910390f35b348015610409575f80fd5b50610424600480360381019061041f919061309d565b610ab5565b6040516104319190612e29565b60405180910390f35b348015610445575f80fd5b50610460600480360381019061045b91906130c8565b610b07565b005b34801561046d575f80fd5b50610476610bea565b604051610483919061314e565b60405180910390f35b348015610497575f80fd5b506104a0610c0e565b6040516104ad9190612e29565b60405180910390f35b3480156104c1575f80fd5b506104dc60048036038101906104d7919061309d565b610c21565b6040516104e99190612e51565b60405180910390f35b3480156104fd575f80fd5b50610506610c66565b005b348015610513575f80fd5b5061051c610c79565b005b348015610529575f80fd5b50610544600480360381019061053f9190613191565b610c9d565b005b348015610551575f80fd5b5061055a610cfd565b6040516105679190613084565b60405180910390f35b34801561057b575f80fd5b50610584610d25565b005b348015610591575f80fd5b5061059a610e0c565b6040516105a79190612d57565b60405180910390f35b3480156105bb575f80fd5b506105d660048036038101906105d19190613191565b610e9c565b005b3480156105e3575f80fd5b506105fe60048036038101906105f99190612dd1565b610f41565b60405161060b9190612e29565b60405180910390f35b34801561061f575f80fd5b5061063a60048036038101906106359190612dd1565b610fb6565b6040516106479190612e29565b60405180910390f35b34801561065b575f80fd5b50610676600480360381019061067191906130c8565b610fd8565b005b348015610683575f80fd5b5061069e60048036038101906106999190613191565b610ffd565b005b3480156106ab575f80fd5b506106b46110ab565b6040516106c19190612e51565b60405180910390f35b3480156106d5575f80fd5b506106de6110b1565b005b3480156106eb575f80fd5b506106f461153d565b6040516107019190612e51565b60405180910390f35b348015610715575f80fd5b50610730600480360381019061072b919061302e565b611543565b005b34801561073d575f80fd5b506107586004803603810190610753919061320a565b6115d6565b005b348015610765575f80fd5b50610780600480360381019061077b9190613235565b611774565b60405161078d9190612e51565b60405180910390f35b3480156107a1575f80fd5b506107aa6117f6565b6040516107b79190612e51565b60405180910390f35b3480156107cb575f80fd5b506107d46117fc565b6040516107e19190612e51565b60405180910390f35b3480156107f5575f80fd5b50610810600480360381019061080b919061309d565b611802565b005b34801561081d575f80fd5b50610826611884565b6040516108339190612e51565b60405180910390f35b348015610847575f80fd5b5061085061188a565b60405161085d9190612e29565b60405180910390f35b61086e61189c565b601e8211158015610880575060638111155b6108bf576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108b6906132bd565b60405180910390fd5b81600f81905550806010819055505050565b6060600380546108e090613308565b80601f016020809104026020016040519081016040528092919081815260200182805461090c90613308565b80156109575780601f1061092e57610100808354040283529160200191610957565b820191905f5260205f20905b81548152906001019060200180831161093a57829003601f168201915b5050505050905090565b5f8061096b61191a565b9050610978818585611921565b600191505092915050565b5f600254905090565b5f8061099661191a565b90506109a3858285611ae4565b6109ae858585611b6f565b60019150509392505050565b600a5481565b5f6012905090565b6109d061189c565b5f5b8151811015610a56575f60095f8484815181106109f2576109f1613338565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff02191690831515021790555080806001019150506109d2565b5050565b5f80610a6461191a565b9050610a85818585610a768589611774565b610a809190613392565b611921565b600191505092915050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff169050919050565b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b4761191a565b73ffffffffffffffffffffffffffffffffffffffff1614610b66575f80fd5b5f610b6f610983565b90505f610b7b30610c21565b90505f60648484610b8c91906133c5565b610b969190613433565b905080821015610bdb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bd2906134ad565b60405180910390fd5b610be4816124f7565b50505050565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b600e60019054906101000a900460ff1681565b5f805f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b610c6e61189c565b610c775f61274b565b565b610c8161189c565b5f610c8a610983565b905080600b8190555080600c8190555050565b610ca561189c565b8060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b5f4711610d67576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d5e90613515565b60405180910390fd5b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610da761191a565b73ffffffffffffffffffffffffffffffffffffffff1614610dc6575f80fd5b3373ffffffffffffffffffffffffffffffffffffffff166108fc4790811502906040515f60405180830381858888f19350505050158015610e09573d5f803e3d5ffd5b50565b606060048054610e1b90613308565b80601f0160208091040260200160405190810160405280929190818152602001828054610e4790613308565b8015610e925780601f10610e6957610100808354040283529160200191610e92565b820191905f5260205f20905b815481529060010190602001808311610e7557829003601f168201915b5050505050905090565b610ea461189c565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f33576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2a906135a3565b60405180910390fd5b610f3d828261280e565b5050565b5f80610f4b61191a565b90505f610f588286611774565b905083811015610f9d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9490613631565b60405180910390fd5b610faa8286868403611921565b60019250505092915050565b5f80610fc061191a565b9050610fcd818585611b6f565b600191505092915050565b610fe061189c565b670de0b6b3a764000081610ff491906133c5565b600d8190555050565b61100561189c565b8060115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508173ffffffffffffffffffffffffffffffffffffffff167f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df78260405161109f9190612e29565b60405180910390a25050565b600b5481565b6110b961189c565b600e5f9054906101000a900460ff1615611108576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110ff90613699565b60405180910390fd5b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611171573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061119591906136cb565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561121a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061123e91906136cb565b6040518363ffffffff1660e01b815260040161125b9291906136f6565b6020604051808303815f875af1158015611277573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061129b91906136cb565b60065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061130660065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff166001610c9d565b61133260065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16600161280e565b61135f307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d600a54611921565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663f305d71947306113b960506113ab30610c21565b6128ac90919063ffffffff16565b5f806113c3610cfd565b426040518863ffffffff1660e01b81526004016113e596959493929190613756565b60606040518083038185885af1158015611401573d5f803e3d5ffd5b50505050506040513d601f19601f8201168201806040525081019061142691906137c9565b50505060065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663095ea7b37f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff6040518363ffffffff1660e01b81526004016114c5929190613819565b6020604051808303815f875af11580156114e1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115059190613854565b506001600e60016101000a81548160ff0219169083151502179055506001600e5f6101000a81548160ff021916908315150217905550565b60105481565b61154b61189c565b5f5b81518110156115d257600160095f84848151811061156e5761156d613338565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff021916908315150217905550808060010191505061154d565b5050565b5f8173ffffffffffffffffffffffffffffffffffffffff166370a08231306040518263ffffffff1660e01b81526004016116109190613084565b602060405180830381865afa15801561162b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061164f919061387f565b90505f8111611693576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161168a906138f4565b60405180910390fd5b60085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166116d361191a565b73ffffffffffffffffffffffffffffffffffffffff16146116f2575f80fd5b8173ffffffffffffffffffffffffffffffffffffffff1663a9059cbb61dead836040518363ffffffff1660e01b815260040161172f929190613819565b6020604051808303815f875af115801561174b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061176f9190613854565b505050565b5f60015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b600f5481565b600d5481565b61180a61189c565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611878576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186f90613982565b60405180910390fd5b6118818161274b565b50565b600c5481565b600e5f9054906101000a900460ff1681565b6118a461191a565b73ffffffffffffffffffffffffffffffffffffffff166118c2610cfd565b73ffffffffffffffffffffffffffffffffffffffff1614611918576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161190f906139ea565b60405180910390fd5b565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361198f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161198690613a78565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036119fd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119f490613b06565b60405180910390fd5b8060015f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051611ad79190612e51565b60405180910390a3505050565b5f611aef8484611774565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114611b695781811015611b5b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b5290613b6e565b60405180910390fd5b611b688484848403611921565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611bdd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611bd490613bfc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611c4b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c4290613c8a565b60405180910390fd5b5f8103611c6257611c5d83835f612911565b6124f2565b611c6a610cfd565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015611cd85750611ca8610cfd565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611d1057505f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611d4a575061dead73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015611d635750600860149054906101000a900460ff16155b156121d65760095f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015611e06575060095f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b611e0e575f80fd5b600e5f9054906101000a900460ff16611efc5760115f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680611ebc575060115f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b611efb576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ef290613cf2565b60405180910390fd5b5b60135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff168015611f99575060125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561204057600b54811115611fe3576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611fda90613d80565b60405180910390fd5b600c54611fef83610c21565b82611ffa9190613392565b111561203b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161203290613de8565b60405180910390fd5b6121d5565b60135f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680156120dd575060125f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b1561212c57600b54811115612127576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161211e90613e76565b60405180910390fd5b6121d4565b60125f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff166121d357600c5461218683610c21565b826121919190613392565b11156121d2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016121c990613de8565b60405180910390fd5b5b5b5b5b5f6121e030610c21565b90505f80821190508080156122015750600e60019054906101000a900460ff165b801561221a5750600860149054906101000a900460ff16155b801561226d575060135f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b80156122c0575060115f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b8015612313575060115f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b15612357576001600860146101000a81548160ff02191690831515021790555061233c83612b7d565b5f600860146101000a81548160ff0219169083151502179055505b5f600860149054906101000a900460ff1615905060115f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff1680612406575060115f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561240f575f90505b5f81156124e25760135f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16156124945761248d606461247f60105488612c1790919063ffffffff16565b612c2c90919063ffffffff16565b90506124bf565b6124bc60646124ae600f5488612c1790919063ffffffff16565b612c2c90919063ffffffff16565b90505b5f8111156124d3576124d2873083612911565b5b80856124df9190613e94565b94505b6124ed878787612911565b505050505b505050565b5f600267ffffffffffffffff81111561251357612512612ef2565b5b6040519080825280602002602001820160405280156125415781602001602082028036833780820191505090505b50905030815f8151811061255857612557613338565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156125fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061261f91906136cb565b8160018151811061263357612632613338565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050612698307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84611921565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff1663791ac947835f8460085f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16426040518663ffffffff1660e01b815260040161271a959493929190613f7e565b5f604051808303815f87803b158015612731575f80fd5b505af1158015612743573d5f803e3d5ffd5b505050505050565b5f60055f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508160055f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b8060135f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055508015158273ffffffffffffffffffffffffffffffffffffffff167fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab60405160405180910390a35050565b5f60648211156128f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128e890614046565b60405180910390fd5b606482846128ff91906133c5565b6129099190613433565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361297f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161297690613bfc565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036129ed576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016129e490613c8a565b60405180910390fd5b6129f8838383612c41565b5f805f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905081811015612a7b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612a72906140d4565b60405180910390fd5b8181035f808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550815f808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051612b649190612e51565b60405180910390a3612b77848484612c46565b50505050565b5f612b8730610c21565b90505f808203612b98575050612c14565b5f82118015612ba85750600d5482105b15612bb557819050612c08565b5f612bde6064612bd060105487612c1790919063ffffffff16565b612c2c90919063ffffffff16565b90508084612bec9190613e94565b9350600d54841115612c0257600d549150612c06565b8391505b505b612c11816124f7565b50505b50565b5f8183612c2491906133c5565b905092915050565b5f8183612c399190613433565b905092915050565b505050565b505050565b5f604051905090565b5f80fd5b5f80fd5b5f819050919050565b612c6e81612c5c565b8114612c78575f80fd5b50565b5f81359050612c8981612c65565b92915050565b5f8060408385031215612ca557612ca4612c54565b5b5f612cb285828601612c7b565b9250506020612cc385828601612c7b565b9150509250929050565b5f81519050919050565b5f82825260208201905092915050565b5f5b83811015612d04578082015181840152602081019050612ce9565b5f8484015250505050565b5f601f19601f8301169050919050565b5f612d2982612ccd565b612d338185612cd7565b9350612d43818560208601612ce7565b612d4c81612d0f565b840191505092915050565b5f6020820190508181035f830152612d6f8184612d1f565b905092915050565b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f612da082612d77565b9050919050565b612db081612d96565b8114612dba575f80fd5b50565b5f81359050612dcb81612da7565b92915050565b5f8060408385031215612de757612de6612c54565b5b5f612df485828601612dbd565b9250506020612e0585828601612c7b565b9150509250929050565b5f8115159050919050565b612e2381612e0f565b82525050565b5f602082019050612e3c5f830184612e1a565b92915050565b612e4b81612c5c565b82525050565b5f602082019050612e645f830184612e42565b92915050565b5f805f60608486031215612e8157612e80612c54565b5b5f612e8e86828701612dbd565b9350506020612e9f86828701612dbd565b9250506040612eb086828701612c7b565b9150509250925092565b5f60ff82169050919050565b612ecf81612eba565b82525050565b5f602082019050612ee85f830184612ec6565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b612f2882612d0f565b810181811067ffffffffffffffff82111715612f4757612f46612ef2565b5b80604052505050565b5f612f59612c4b565b9050612f658282612f1f565b919050565b5f67ffffffffffffffff821115612f8457612f83612ef2565b5b602082029050602081019050919050565b5f80fd5b5f612fab612fa684612f6a565b612f50565b90508083825260208201905060208402830185811115612fce57612fcd612f95565b5b835b81811015612ff75780612fe38882612dbd565b845260208401935050602081019050612fd0565b5050509392505050565b5f82601f83011261301557613014612eee565b5b8135613025848260208601612f99565b91505092915050565b5f6020828403121561304357613042612c54565b5b5f82013567ffffffffffffffff8111156130605761305f612c58565b5b61306c84828501613001565b91505092915050565b61307e81612d96565b82525050565b5f6020820190506130975f830184613075565b92915050565b5f602082840312156130b2576130b1612c54565b5b5f6130bf84828501612dbd565b91505092915050565b5f602082840312156130dd576130dc612c54565b5b5f6130ea84828501612c7b565b91505092915050565b5f819050919050565b5f61311661311161310c84612d77565b6130f3565b612d77565b9050919050565b5f613127826130fc565b9050919050565b5f6131388261311d565b9050919050565b6131488161312e565b82525050565b5f6020820190506131615f83018461313f565b92915050565b61317081612e0f565b811461317a575f80fd5b50565b5f8135905061318b81613167565b92915050565b5f80604083850312156131a7576131a6612c54565b5b5f6131b485828601612dbd565b92505060206131c58582860161317d565b9150509250929050565b5f6131d982612d96565b9050919050565b6131e9816131cf565b81146131f3575f80fd5b50565b5f81359050613204816131e0565b92915050565b5f6020828403121561321f5761321e612c54565b5b5f61322c848285016131f6565b91505092915050565b5f806040838503121561324b5761324a612c54565b5b5f61325885828601612dbd565b925050602061326985828601612dbd565b9150509250929050565b7f466565732063616e6e6f742065786365656420333025000000000000000000005f82015250565b5f6132a7601683612cd7565b91506132b282613273565b602082019050919050565b5f6020820190508181035f8301526132d48161329b565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061331f57607f821691505b602082108103613332576133316132db565b5b50919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f61339c82612c5c565b91506133a783612c5c565b92508282019050808211156133bf576133be613365565b5b92915050565b5f6133cf82612c5c565b91506133da83612c5c565b92508282026133e881612c5c565b915082820484148315176133ff576133fe613365565b5b5092915050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f61343d82612c5c565b915061344883612c5c565b92508261345857613457613406565b5b828204905092915050565b7f4e6f7420656e6f75676820746f6b656e730000000000000000000000000000005f82015250565b5f613497601183612cd7565b91506134a282613463565b602082019050919050565b5f6020820190508181035f8301526134c48161348b565b9050919050565b7f546f6b656e3a206e6f2045544820746f20636c656172000000000000000000005f82015250565b5f6134ff601683612cd7565b915061350a826134cb565b602082019050919050565b5f6020820190508181035f83015261352c816134f3565b9050919050565b7f54686520706169722063616e6e6f742062652072656d6f7665642066726f6d205f8201527f6175746f6d617465644d61726b65744d616b6572506169727300000000000000602082015250565b5f61358d603983612cd7565b915061359882613533565b604082019050919050565b5f6020820190508181035f8301526135ba81613581565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f775f8201527f207a65726f000000000000000000000000000000000000000000000000000000602082015250565b5f61361b602583612cd7565b9150613626826135c1565b604082019050919050565b5f6020820190508181035f8301526136488161360f565b9050919050565b7f54726164696e6720697320616c7265616479206f70656e0000000000000000005f82015250565b5f613683601783612cd7565b915061368e8261364f565b602082019050919050565b5f6020820190508181035f8301526136b081613677565b9050919050565b5f815190506136c581612da7565b92915050565b5f602082840312156136e0576136df612c54565b5b5f6136ed848285016136b7565b91505092915050565b5f6040820190506137095f830185613075565b6137166020830184613075565b9392505050565b5f819050919050565b5f61374061373b6137368461371d565b6130f3565b612c5c565b9050919050565b61375081613726565b82525050565b5f60c0820190506137695f830189613075565b6137766020830188612e42565b6137836040830187613747565b6137906060830186613747565b61379d6080830185613075565b6137aa60a0830184612e42565b979650505050505050565b5f815190506137c381612c65565b92915050565b5f805f606084860312156137e0576137df612c54565b5b5f6137ed868287016137b5565b93505060206137fe868287016137b5565b925050604061380f868287016137b5565b9150509250925092565b5f60408201905061382c5f830185613075565b6138396020830184612e42565b9392505050565b5f8151905061384e81613167565b92915050565b5f6020828403121561386957613868612c54565b5b5f61387684828501613840565b91505092915050565b5f6020828403121561389457613893612c54565b5b5f6138a1848285016137b5565b91505092915050565b7f546f6b656e3a206e6f20746f6b656e7320746f206275726e00000000000000005f82015250565b5f6138de601883612cd7565b91506138e9826138aa565b602082019050919050565b5f6020820190508181035f83015261390b816138d2565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f61396c602683612cd7565b915061397782613912565b604082019050919050565b5f6020820190508181035f83015261399981613960565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f6139d4602083612cd7565b91506139df826139a0565b602082019050919050565b5f6020820190508181035f830152613a01816139c8565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f613a62602483612cd7565b9150613a6d82613a08565b604082019050919050565b5f6020820190508181035f830152613a8f81613a56565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f613af0602283612cd7565b9150613afb82613a96565b604082019050919050565b5f6020820190508181035f830152613b1d81613ae4565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f613b58601d83612cd7565b9150613b6382613b24565b602082019050919050565b5f6020820190508181035f830152613b8581613b4c565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f613be6602583612cd7565b9150613bf182613b8c565b604082019050919050565b5f6020820190508181035f830152613c1381613bda565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f613c74602383612cd7565b9150613c7f82613c1a565b604082019050919050565b5f6020820190508181035f830152613ca181613c68565b9050919050565b7f54726164696e67206973206e6f74206163746976652e000000000000000000005f82015250565b5f613cdc601683612cd7565b9150613ce782613ca8565b602082019050919050565b5f6020820190508181035f830152613d0981613cd0565b9050919050565b7f427579207472616e7366657220616d6f756e74206578636565647320746865205f8201527f6d61785472616e73616374696f6e416d6f756e742e0000000000000000000000602082015250565b5f613d6a603583612cd7565b9150613d7582613d10565b604082019050919050565b5f6020820190508181035f830152613d9781613d5e565b9050919050565b7f4d61782077616c6c6574206578636565646564000000000000000000000000005f82015250565b5f613dd2601383612cd7565b9150613ddd82613d9e565b602082019050919050565b5f6020820190508181035f830152613dff81613dc6565b9050919050565b7f53656c6c207472616e7366657220616d6f756e742065786365656473207468655f8201527f206d61785472616e73616374696f6e416d6f756e742e00000000000000000000602082015250565b5f613e60603683612cd7565b9150613e6b82613e06565b604082019050919050565b5f6020820190508181035f830152613e8d81613e54565b9050919050565b5f613e9e82612c5c565b9150613ea983612c5c565b9250828203905081811115613ec157613ec0613365565b5b92915050565b5f81519050919050565b5f82825260208201905092915050565b5f819050602082019050919050565b613ef981612d96565b82525050565b5f613f0a8383613ef0565b60208301905092915050565b5f602082019050919050565b5f613f2c82613ec7565b613f368185613ed1565b9350613f4183613ee1565b805f5b83811015613f71578151613f588882613eff565b9750613f6383613f16565b925050600181019050613f44565b5085935050505092915050565b5f60a082019050613f915f830188612e42565b613f9e6020830187613747565b8181036040830152613fb08186613f22565b9050613fbf6060830185613075565b613fcc6080830184612e42565b9695505050505050565b7f50657263656e74616765206d757374206265206265747765656e203020616e645f8201527f2031303000000000000000000000000000000000000000000000000000000000602082015250565b5f614030602483612cd7565b915061403b82613fd6565b604082019050919050565b5f6020820190508181035f83015261405d81614024565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f6140be602683612cd7565b91506140c982614064565b604082019050919050565b5f6020820190508181035f8301526140eb816140b2565b905091905056fea2646970667358221220d80ab0b7a4f3bb01377d24d45c1a1de18850eb75c2cd4da3261ae7888684d46d64736f6c63430008160033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000002d1011be0b75eee4009858cb20d2a86633d0480b
-----Decoded View---------------
Arg [0] : wallet (address): 0x2d1011Be0B75Eee4009858cb20D2a86633D0480b
-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000002d1011be0b75eee4009858cb20d2a86633d0480b
Deployed Bytecode Sourcemap
18113:9208:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;26467:211;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;13341:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14273:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13662:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14482:261;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18598:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13561:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;22116:171;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14751:238;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18251:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21807:126;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26053:406;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18192:52;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18865:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13778:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4440:103;;;;;;;;;;;;;:::i;:::-;;25156:194;;;;;;;;;;;;;:::i;:::-;;20975:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4205:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25358:226;;;;;;;;;;;;;:::i;:::-;;13449:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21340:265;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14997:436;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13913:193;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;25918:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;21150:182;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18658:53;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20230:739;;;;;;;;;;;;;:::i;:::-;;18938:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;21941:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;25592:318;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;14114:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18905:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18767:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4551:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;18718:42;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18827:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;26467:211;4164:13;:11;:13::i;:::-;26567:2:::1;26556:7;:13;;:31;;;;;26585:2;26573:8;:14;;26556:31;26548:66;;;;;;;;;;;;:::i;:::-;;;;;;;;;26634:7;26625:6;:16;;;;26662:8;26652:7;:18;;;;26467:211:::0;;:::o;13341:100::-;13395:13;13428:5;13421:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13341:100;:::o;14273:201::-;14356:4;14373:13;14389:12;:10;:12::i;:::-;14373:28;;14412:32;14421:5;14428:7;14437:6;14412:8;:32::i;:::-;14462:4;14455:11;;;14273:201;;;;:::o;13662:108::-;13723:7;13750:12;;13743:19;;13662:108;:::o;14482:261::-;14579:4;14596:15;14614:12;:10;:12::i;:::-;14596:30;;14637:38;14653:4;14659:7;14668:6;14637:15;:38::i;:::-;14686:27;14696:4;14702:2;14706:6;14686:9;:27::i;:::-;14731:4;14724:11;;;14482:261;;;;;:::o;18598:53::-;;;;:::o;13561:93::-;13619:5;13644:2;13637:9;;13561:93;:::o;22116:171::-;4164:13;:11;:13::i;:::-;22191:9:::1;22186:94;22210:6;:13;22206:1;:17;22186:94;;;22263:5;22245:4;:15;22250:6;22257:1;22250:9;;;;;;;;:::i;:::-;;;;;;;;22245:15;;;;;;;;;;;;;;;;:23;;;;;;;;;;;;;;;;;;22225:3;;;;;;;22186:94;;;;22116:171:::0;:::o;14751:238::-;14839:4;14856:13;14872:12;:10;:12::i;:::-;14856:28;;14895:64;14904:5;14911:7;14948:10;14920:25;14930:5;14937:7;14920:9;:25::i;:::-;:38;;;;:::i;:::-;14895:8;:64::i;:::-;14977:4;14970:11;;;14751:238;;;;:::o;18251:28::-;;;;;;;;;;;;;:::o;21807:126::-;21873:4;21897:19;:28;21917:7;21897:28;;;;;;;;;;;;;;;;;;;;;;;;;21890:35;;21807:126;;;:::o;26053:406::-;26133:15;;;;;;;;;;;26117:31;;:12;:10;:12::i;:::-;:31;;;26109:40;;;;;;26160:25;26188:13;:11;:13::i;:::-;26160:41;;26212:23;26238:24;26256:4;26238:9;:24::i;:::-;26212:50;;26273:23;26329:3;26319:7;26299:17;:27;;;;:::i;:::-;:33;;;;:::i;:::-;26273:59;;26370:15;26351;:34;;26343:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;26418:33;26435:15;26418:16;:33::i;:::-;26098:361;;;26053:406;:::o;18192:52::-;;;:::o;18865:31::-;;;;;;;;;;;;;:::o;13778:127::-;13852:7;13879:9;:18;13889:7;13879:18;;;;;;;;;;;;;;;;13872:25;;13778:127;;;:::o;4440:103::-;4164:13;:11;:13::i;:::-;4505:30:::1;4532:1;4505:18;:30::i;:::-;4440:103::o:0;25156:194::-;4164:13;:11;:13::i;:::-;25210:25:::1;25238:13;:11;:13::i;:::-;25210:41;;25285:17;25262:20;:40;;;;25325:17;25313:9;:29;;;;25199:151;25156:194::o:0;20975:167::-;4164:13;:11;:13::i;:::-;21130:4:::1;21088:31;:39;21120:6;21088:39;;;;;;;;;;;;;;;;:46;;;;;;;;;;;;;;;;;;20975:167:::0;;:::o;4205:87::-;4251:7;4278:6;;;;;;;;;;;4271:13;;4205:87;:::o;25358:226::-;25435:1;25411:21;:25;25403:60;;;;;;;;;;;;:::i;:::-;;;;;;;;;25498:15;;;;;;;;;;;25482:31;;:12;:10;:12::i;:::-;:31;;;25474:40;;;;;;25533:10;25525:28;;:51;25554:21;25525:51;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;25358:226::o;13449:104::-;13505:13;13538:7;13531:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13449:104;:::o;21340:265::-;4164:13;:11;:13::i;:::-;21470::::1;;;;;;;;;;;21462:21;;:4;:21;;::::0;21454:91:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;21556:41;21585:4;21591:5;21556:28;:41::i;:::-;21340:265:::0;;:::o;14997:436::-;15090:4;15107:13;15123:12;:10;:12::i;:::-;15107:28;;15146:24;15173:25;15183:5;15190:7;15173:9;:25::i;:::-;15146:52;;15237:15;15217:16;:35;;15209:85;;;;;;;;;;;;:::i;:::-;;;;;;;;;15330:60;15339:5;15346:7;15374:15;15355:16;:34;15330:8;:60::i;:::-;15421:4;15414:11;;;;14997:436;;;;:::o;13913:193::-;13992:4;14009:13;14025:12;:10;:12::i;:::-;14009:28;;14048;14058:5;14065:2;14069:6;14048:9;:28::i;:::-;14094:4;14087:11;;;13913:193;;;;:::o;25918:127::-;4164:13;:11;:13::i;:::-;26028:8:::1;26017:7;:20;;;;:::i;:::-;25996:18;:41;;;;25918:127:::0;:::o;21150:182::-;4164:13;:11;:13::i;:::-;21266:8:::1;21235:19;:28;21255:7;21235:28;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;21306:7;21290:34;;;21315:8;21290:34;;;;;;:::i;:::-;;;;;;;;21150:182:::0;;:::o;18658:53::-;;;;:::o;20230:739::-;4164:13;:11;:13::i;:::-;20294:11:::1;;;;;;;;;;;20293:12;20285:47;;;;;;;;;;;;:::i;:::-;;;;;;;;;20377:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20359:56;;;20424:4;20431:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20359:96;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20343:13;;:112;;;;;;;;;;;;;;;;;;20466:55;20500:13;;;;;;;;;;;20516:4;20466:25;:55::i;:::-;20532:58;20569:13;;;;;;;;;;;20585:4;20532:28;:58::i;:::-;20601:70;20618:4;20633:16;20652:18;;20601:8;:70::i;:::-;20682:16;:32;;;20722:21;20753:4;20759:32;20788:2;20759:24;20777:4;20759:9;:24::i;:::-;:28;;:32;;;;:::i;:::-;20792:1;20794::::0;20796:7:::1;:5;:7::i;:::-;20804:15;20682:138;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;20838:13;;;;;;;;;;;20831:29;;;20869:16;20888:14;20831:72;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;20928:4;20914:11;;:18;;;;;;;;;;;;;;;;;;20957:4;20943:11;;:18;;;;;;;;;;;;;;;;;;20230:739::o:0;18938:27::-;;;;:::o;21941:167::-;4164:13;:11;:13::i;:::-;22015:9:::1;22010:91;22034:5;:12;22030:1;:16;22010:91;;;22085:4;22068;:14;22073:5;22079:1;22073:8;;;;;;;;:::i;:::-;;;;;;;;22068:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;22048:3;;;;;;;22010:91;;;;21941:167:::0;:::o;25592:318::-;25659:23;25685:12;:22;;;25716:4;25685:37;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;25659:63;;25759:1;25741:15;:19;25733:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;25824:15;;;;;;;;;;;25808:31;;:12;:10;:12::i;:::-;:31;;;25800:40;;;;;;25851:12;:21;;;18408:6;25886:15;25851:51;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;25648:262;25592:318;:::o;14114:151::-;14203:7;14230:11;:18;14242:5;14230:18;;;;;;;;;;;;;;;:27;14249:7;14230:27;;;;;;;;;;;;;;;;14223:34;;14114:151;;;;:::o;18905:26::-;;;;:::o;18767:51::-;;;;:::o;4551:201::-;4164:13;:11;:13::i;:::-;4660:1:::1;4640:22;;:8;:22;;::::0;4632:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;4716:28;4735:8;4716:18;:28::i;:::-;4551:201:::0;:::o;18718:42::-;;;;:::o;18827:31::-;;;;;;;;;;;;;:::o;4300:132::-;4375:12;:10;:12::i;:::-;4364:23;;:7;:5;:7::i;:::-;:23;;;4356:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;4300:132::o;3678:98::-;3731:7;3758:10;3751:17;;3678:98;:::o;17136:346::-;17255:1;17238:19;;:5;:19;;;17230:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17336:1;17317:21;;:7;:21;;;17309:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17420:6;17390:11;:18;17402:5;17390:18;;;;;;;;;;;;;;;:27;17409:7;17390:27;;;;;;;;;;;;;;;:36;;;;17458:7;17442:32;;17451:5;17442:32;;;17467:6;17442:32;;;;;;:::i;:::-;;;;;;;;17136:346;;;:::o;17490:419::-;17591:24;17618:25;17628:5;17635:7;17618:9;:25::i;:::-;17591:52;;17678:17;17658:16;:37;17654:248;;17740:6;17720:16;:26;;17712:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;17824:51;17833:5;17840:7;17868:6;17849:16;:25;17824:8;:51::i;:::-;17654:248;17580:329;17490:419;;;:::o;22295:2367::-;22411:1;22395:18;;:4;:18;;;22387:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;22488:1;22474:16;;:2;:16;;;22466:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;22565:1;22555:6;:11;22551:93;;22583:28;22599:4;22605:2;22609:1;22583:15;:28::i;:::-;22626:7;;22551:93;22668:7;:5;:7::i;:::-;22660:15;;:4;:15;;;;:32;;;;;22685:7;:5;:7::i;:::-;22679:13;;:2;:13;;;;22660:32;:52;;;;;22710:1;22696:16;;:2;:16;;;;22660:52;:77;;;;;22730:6;22716:21;;:2;:21;;;;22660:77;:90;;;;;22742:8;;;;;;;;;;;22741:9;22660:90;22656:1046;;;22778:4;:10;22783:4;22778:10;;;;;;;;;;;;;;;;;;;;;;;;;22777:11;:24;;;;;22793:4;:8;22798:2;22793:8;;;;;;;;;;;;;;;;;;;;;;;;;22792:9;22777:24;22769:33;;;;;;22824:11;;;;;;;;;;;22819:140;;22864:19;:25;22884:4;22864:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;22893:19;:23;22913:2;22893:23;;;;;;;;;;;;;;;;;;;;;;;;;22864:52;22856:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;22819:140;22979:25;:31;23005:4;22979:31;;;;;;;;;;;;;;;;;;;;;;;;;:71;;;;;23015:31;:35;23047:2;23015:35;;;;;;;;;;;;;;;;;;;;;;;;;23014:36;22979:71;22975:716;;;23103:20;;23093:6;:30;;23085:96;;;;;;;;;;;;:::i;:::-;;;;;;;;;23234:9;;23217:13;23227:2;23217:9;:13::i;:::-;23208:6;:22;;;;:::i;:::-;:35;;23200:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;22975:716;;;23308:25;:29;23334:2;23308:29;;;;;;;;;;;;;;;;;;;;;;;;;:71;;;;;23342:31;:37;23374:4;23342:37;;;;;;;;;;;;;;;;;;;;;;;;;23341:38;23308:71;23304:387;;;23418:20;;23408:6;:30;;23400:97;;;;;;;;;;;;:::i;:::-;;;;;;;;;23304:387;;;23552:31;:35;23584:2;23552:35;;;;;;;;;;;;;;;;;;;;;;;;;23547:144;;23642:9;;23625:13;23635:2;23625:9;:13::i;:::-;23616:6;:22;;;;:::i;:::-;:35;;23608:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;23547:144;23304:387;22975:716;22656:1046;23714:28;23745:24;23763:4;23745:9;:24::i;:::-;23714:55;;23782:12;23820:1;23797:20;:24;23782:39;;23838:7;:22;;;;;23849:11;;;;;;;;;;;23838:22;:35;;;;;23865:8;;;;;;;;;;;23864:9;23838:35;:71;;;;;23878:25;:31;23904:4;23878:31;;;;;;;;;;;;;;;;;;;;;;;;;23877:32;23838:71;:101;;;;;23914:19;:25;23934:4;23914:25;;;;;;;;;;;;;;;;;;;;;;;;;23913:26;23838:101;:129;;;;;23944:19;:23;23964:2;23944:23;;;;;;;;;;;;;;;;;;;;;;;;;23943:24;23838:129;23834:239;;;23995:4;23984:8;;:15;;;;;;;;;;;;;;;;;;24014:16;24023:6;24014:8;:16::i;:::-;24056:5;24045:8;;:16;;;;;;;;;;;;;;;;;;23834:239;24085:12;24101:8;;;;;;;;;;;24100:9;24085:24;;24126:19;:25;24146:4;24126:25;;;;;;;;;;;;;;;;;;;;;;;;;:52;;;;24155:19;:23;24175:2;24155:23;;;;;;;;;;;;;;;;;;;;;;;;;24126:52;24122:100;;;24205:5;24195:15;;24122:100;24234:12;24267:7;24263:348;;;24295:25;:29;24321:2;24295:29;;;;;;;;;;;;;;;;;;;;;;;;;24291:193;;;24352:28;24376:3;24352:19;24363:7;;24352:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;24345:35;;24291:193;;;24441:27;24464:3;24441:18;24452:6;;24441;:10;;:18;;;;:::i;:::-;:22;;:27;;;;:::i;:::-;24434:34;;24291:193;24507:1;24500:4;:8;24496:83;;;24525:42;24541:4;24555;24562;24525:15;:42::i;:::-;24496:83;24599:4;24589:14;;;;;:::i;:::-;;;24263:348;24621:33;24637:4;24643:2;24647:6;24621:15;:33::i;:::-;22374:2288;;;;22295:2367;;;;:::o;24670:478::-;24738:21;24776:1;24762:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24738:40;;24807:4;24789;24794:1;24789:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;24833:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;24823:4;24828:1;24823:7;;;;;;;;:::i;:::-;;;;;;;:33;;;;;;;;;;;24867:63;24884:4;24899:16;24918:11;24867:8;:63::i;:::-;24941:16;:67;;;25023:11;25049:1;25065:4;25084:15;;;;;;;;;;;25114;24941:199;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;24725:423;24670:478;:::o;4760:191::-;4834:16;4853:6;;;;;;;;;;;4834:25;;4879:8;4870:6;;:17;;;;;;;;;;;;;;;;;;4934:8;4903:40;;4924:8;4903:40;;;;;;;;;;;;4823:128;4760:191;:::o;21613:186::-;21730:5;21696:25;:31;21722:4;21696:31;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;21785:5;21751:40;;21779:4;21751:40;;;;;;;;;;;;21613:186;;:::o;12330:172::-;12388:7;12421:3;12416:1;:8;;12408:57;;;;;;;;;;;;:::i;:::-;;;;;;;;;12491:3;12487:1;12483;:5;;;;:::i;:::-;:11;;;;:::i;:::-;12476:18;;12330:172;;;;:::o;15441:641::-;15554:1;15538:18;;:4;:18;;;15530:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;15631:1;15617:16;;:2;:16;;;15609:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;15686:38;15707:4;15713:2;15717:6;15686:20;:38::i;:::-;15737:19;15759:9;:15;15769:4;15759:15;;;;;;;;;;;;;;;;15737:37;;15808:6;15793:11;:21;;15785:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;15925:6;15911:11;:20;15893:9;:15;15903:4;15893:15;;;;;;;;;;;;;;;:38;;;;15963:6;15946:9;:13;15956:2;15946:13;;;;;;;;;;;;;;;;:23;;;;;;;;;;;16013:2;15998:26;;16007:4;15998:26;;;16017:6;15998:26;;;;;;:::i;:::-;;;;;;;;16037:37;16057:4;16063:2;16067:6;16037:19;:37::i;:::-;15519:563;15441:641;;;:::o;26686:632::-;26739:23;26765:24;26783:4;26765:9;:24::i;:::-;26739:50;;26800:20;26850:1;26831:15;:20;26827:449;;26864:7;;;;26827:449;26911:1;26893:15;:19;:59;;;;;26934:18;;26916:15;:36;26893:59;26890:386;;;26980:15;26965:30;;26890:386;;;27025:21;27049:28;27073:3;27049:19;27060:7;;27049:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;27025:52;;27098:13;27088:23;;;;;:::i;:::-;;;27135:18;;27126:6;:27;27122:147;;;27185:18;;27170:33;;27122:147;;;27251:6;27236:21;;27122:147;27014:262;26890:386;27282:30;27299:12;27282:16;:30::i;:::-;26728:590;;26686:632;;:::o;11798:98::-;11856:7;11887:1;11883;:5;;;;:::i;:::-;11876:12;;11798:98;;;;:::o;11904:::-;11962:7;11993:1;11989;:5;;;;:::i;:::-;11982:12;;11904:98;;;;:::o;17917:91::-;;;;:::o;18016:90::-;;;;:::o;7:75:1:-;40:6;73:2;67:9;57:19;;7:75;:::o;88:117::-;197:1;194;187:12;211:117;320:1;317;310:12;334:77;371:7;400:5;389:16;;334:77;;;:::o;417:122::-;490:24;508:5;490:24;:::i;:::-;483:5;480:35;470:63;;529:1;526;519:12;470:63;417:122;:::o;545:139::-;591:5;629:6;616:20;607:29;;645:33;672:5;645:33;:::i;:::-;545:139;;;;:::o;690:474::-;758:6;766;815:2;803:9;794:7;790:23;786:32;783:119;;;821:79;;:::i;:::-;783:119;941:1;966:53;1011:7;1002:6;991:9;987:22;966:53;:::i;:::-;956:63;;912:117;1068:2;1094:53;1139:7;1130:6;1119:9;1115:22;1094:53;:::i;:::-;1084:63;;1039:118;690:474;;;;;:::o;1170:99::-;1222:6;1256:5;1250:12;1240:22;;1170:99;;;:::o;1275:169::-;1359:11;1393:6;1388:3;1381:19;1433:4;1428:3;1424:14;1409:29;;1275:169;;;;:::o;1450:246::-;1531:1;1541:113;1555:6;1552:1;1549:13;1541:113;;;1640:1;1635:3;1631:11;1625:18;1621:1;1616:3;1612:11;1605:39;1577:2;1574:1;1570:10;1565:15;;1541:113;;;1688:1;1679:6;1674:3;1670:16;1663:27;1512:184;1450:246;;;:::o;1702:102::-;1743:6;1794:2;1790:7;1785:2;1778:5;1774:14;1770:28;1760:38;;1702:102;;;:::o;1810:377::-;1898:3;1926:39;1959:5;1926:39;:::i;:::-;1981:71;2045:6;2040:3;1981:71;:::i;:::-;1974:78;;2061:65;2119:6;2114:3;2107:4;2100:5;2096:16;2061:65;:::i;:::-;2151:29;2173:6;2151:29;:::i;:::-;2146:3;2142:39;2135:46;;1902:285;1810:377;;;;:::o;2193:313::-;2306:4;2344:2;2333:9;2329:18;2321:26;;2393:9;2387:4;2383:20;2379:1;2368:9;2364:17;2357:47;2421:78;2494:4;2485:6;2421:78;:::i;:::-;2413:86;;2193:313;;;;:::o;2512:126::-;2549:7;2589:42;2582:5;2578:54;2567:65;;2512:126;;;:::o;2644:96::-;2681:7;2710:24;2728:5;2710:24;:::i;:::-;2699:35;;2644:96;;;:::o;2746:122::-;2819:24;2837:5;2819:24;:::i;:::-;2812:5;2809:35;2799:63;;2858:1;2855;2848:12;2799:63;2746:122;:::o;2874:139::-;2920:5;2958:6;2945:20;2936:29;;2974:33;3001:5;2974:33;:::i;:::-;2874:139;;;;:::o;3019:474::-;3087:6;3095;3144:2;3132:9;3123:7;3119:23;3115:32;3112:119;;;3150:79;;:::i;:::-;3112:119;3270:1;3295:53;3340:7;3331:6;3320:9;3316:22;3295:53;:::i;:::-;3285:63;;3241:117;3397:2;3423:53;3468:7;3459:6;3448:9;3444:22;3423:53;:::i;:::-;3413:63;;3368:118;3019:474;;;;;:::o;3499:90::-;3533:7;3576:5;3569:13;3562:21;3551:32;;3499:90;;;:::o;3595:109::-;3676:21;3691:5;3676:21;:::i;:::-;3671:3;3664:34;3595:109;;:::o;3710:210::-;3797:4;3835:2;3824:9;3820:18;3812:26;;3848:65;3910:1;3899:9;3895:17;3886:6;3848:65;:::i;:::-;3710:210;;;;:::o;3926:118::-;4013:24;4031:5;4013:24;:::i;:::-;4008:3;4001:37;3926:118;;:::o;4050:222::-;4143:4;4181:2;4170:9;4166:18;4158:26;;4194:71;4262:1;4251:9;4247:17;4238:6;4194:71;:::i;:::-;4050:222;;;;:::o;4278:619::-;4355:6;4363;4371;4420:2;4408:9;4399:7;4395:23;4391:32;4388:119;;;4426:79;;:::i;:::-;4388:119;4546:1;4571:53;4616:7;4607:6;4596:9;4592:22;4571:53;:::i;:::-;4561:63;;4517:117;4673:2;4699:53;4744:7;4735:6;4724:9;4720:22;4699:53;:::i;:::-;4689:63;;4644:118;4801:2;4827:53;4872:7;4863:6;4852:9;4848:22;4827:53;:::i;:::-;4817:63;;4772:118;4278:619;;;;;:::o;4903:86::-;4938:7;4978:4;4971:5;4967:16;4956:27;;4903:86;;;:::o;4995:112::-;5078:22;5094:5;5078:22;:::i;:::-;5073:3;5066:35;4995:112;;:::o;5113:214::-;5202:4;5240:2;5229:9;5225:18;5217:26;;5253:67;5317:1;5306:9;5302:17;5293:6;5253:67;:::i;:::-;5113:214;;;;:::o;5333:117::-;5442:1;5439;5432:12;5456:180;5504:77;5501:1;5494:88;5601:4;5598:1;5591:15;5625:4;5622:1;5615:15;5642:281;5725:27;5747:4;5725:27;:::i;:::-;5717:6;5713:40;5855:6;5843:10;5840:22;5819:18;5807:10;5804:34;5801:62;5798:88;;;5866:18;;:::i;:::-;5798:88;5906:10;5902:2;5895:22;5685:238;5642:281;;:::o;5929:129::-;5963:6;5990:20;;:::i;:::-;5980:30;;6019:33;6047:4;6039:6;6019:33;:::i;:::-;5929:129;;;:::o;6064:311::-;6141:4;6231:18;6223:6;6220:30;6217:56;;;6253:18;;:::i;:::-;6217:56;6303:4;6295:6;6291:17;6283:25;;6363:4;6357;6353:15;6345:23;;6064:311;;;:::o;6381:117::-;6490:1;6487;6480:12;6521:710;6617:5;6642:81;6658:64;6715:6;6658:64;:::i;:::-;6642:81;:::i;:::-;6633:90;;6743:5;6772:6;6765:5;6758:21;6806:4;6799:5;6795:16;6788:23;;6859:4;6851:6;6847:17;6839:6;6835:30;6888:3;6880:6;6877:15;6874:122;;;6907:79;;:::i;:::-;6874:122;7022:6;7005:220;7039:6;7034:3;7031:15;7005:220;;;7114:3;7143:37;7176:3;7164:10;7143:37;:::i;:::-;7138:3;7131:50;7210:4;7205:3;7201:14;7194:21;;7081:144;7065:4;7060:3;7056:14;7049:21;;7005:220;;;7009:21;6623:608;;6521:710;;;;;:::o;7254:370::-;7325:5;7374:3;7367:4;7359:6;7355:17;7351:27;7341:122;;7382:79;;:::i;:::-;7341:122;7499:6;7486:20;7524:94;7614:3;7606:6;7599:4;7591:6;7587:17;7524:94;:::i;:::-;7515:103;;7331:293;7254:370;;;;:::o;7630:539::-;7714:6;7763:2;7751:9;7742:7;7738:23;7734:32;7731:119;;;7769:79;;:::i;:::-;7731:119;7917:1;7906:9;7902:17;7889:31;7947:18;7939:6;7936:30;7933:117;;;7969:79;;:::i;:::-;7933:117;8074:78;8144:7;8135:6;8124:9;8120:22;8074:78;:::i;:::-;8064:88;;7860:302;7630:539;;;;:::o;8175:118::-;8262:24;8280:5;8262:24;:::i;:::-;8257:3;8250:37;8175:118;;:::o;8299:222::-;8392:4;8430:2;8419:9;8415:18;8407:26;;8443:71;8511:1;8500:9;8496:17;8487:6;8443:71;:::i;:::-;8299:222;;;;:::o;8527:329::-;8586:6;8635:2;8623:9;8614:7;8610:23;8606:32;8603:119;;;8641:79;;:::i;:::-;8603:119;8761:1;8786:53;8831:7;8822:6;8811:9;8807:22;8786:53;:::i;:::-;8776:63;;8732:117;8527:329;;;;:::o;8862:::-;8921:6;8970:2;8958:9;8949:7;8945:23;8941:32;8938:119;;;8976:79;;:::i;:::-;8938:119;9096:1;9121:53;9166:7;9157:6;9146:9;9142:22;9121:53;:::i;:::-;9111:63;;9067:117;8862:329;;;;:::o;9197:60::-;9225:3;9246:5;9239:12;;9197:60;;;:::o;9263:142::-;9313:9;9346:53;9364:34;9373:24;9391:5;9373:24;:::i;:::-;9364:34;:::i;:::-;9346:53;:::i;:::-;9333:66;;9263:142;;;:::o;9411:126::-;9461:9;9494:37;9525:5;9494:37;:::i;:::-;9481:50;;9411:126;;;:::o;9543:152::-;9619:9;9652:37;9683:5;9652:37;:::i;:::-;9639:50;;9543:152;;;:::o;9701:183::-;9814:63;9871:5;9814:63;:::i;:::-;9809:3;9802:76;9701:183;;:::o;9890:274::-;10009:4;10047:2;10036:9;10032:18;10024:26;;10060:97;10154:1;10143:9;10139:17;10130:6;10060:97;:::i;:::-;9890:274;;;;:::o;10170:116::-;10240:21;10255:5;10240:21;:::i;:::-;10233:5;10230:32;10220:60;;10276:1;10273;10266:12;10220:60;10170:116;:::o;10292:133::-;10335:5;10373:6;10360:20;10351:29;;10389:30;10413:5;10389:30;:::i;:::-;10292:133;;;;:::o;10431:468::-;10496:6;10504;10553:2;10541:9;10532:7;10528:23;10524:32;10521:119;;;10559:79;;:::i;:::-;10521:119;10679:1;10704:53;10749:7;10740:6;10729:9;10725:22;10704:53;:::i;:::-;10694:63;;10650:117;10806:2;10832:50;10874:7;10865:6;10854:9;10850:22;10832:50;:::i;:::-;10822:60;;10777:115;10431:468;;;;;:::o;10905:110::-;10956:7;10985:24;11003:5;10985:24;:::i;:::-;10974:35;;10905:110;;;:::o;11021:150::-;11108:38;11140:5;11108:38;:::i;:::-;11101:5;11098:49;11088:77;;11161:1;11158;11151:12;11088:77;11021:150;:::o;11177:167::-;11237:5;11275:6;11262:20;11253:29;;11291:47;11332:5;11291:47;:::i;:::-;11177:167;;;;:::o;11350:357::-;11423:6;11472:2;11460:9;11451:7;11447:23;11443:32;11440:119;;;11478:79;;:::i;:::-;11440:119;11598:1;11623:67;11682:7;11673:6;11662:9;11658:22;11623:67;:::i;:::-;11613:77;;11569:131;11350:357;;;;:::o;11713:474::-;11781:6;11789;11838:2;11826:9;11817:7;11813:23;11809:32;11806:119;;;11844:79;;:::i;:::-;11806:119;11964:1;11989:53;12034:7;12025:6;12014:9;12010:22;11989:53;:::i;:::-;11979:63;;11935:117;12091:2;12117:53;12162:7;12153:6;12142:9;12138:22;12117:53;:::i;:::-;12107:63;;12062:118;11713:474;;;;;:::o;12193:172::-;12333:24;12329:1;12321:6;12317:14;12310:48;12193:172;:::o;12371:366::-;12513:3;12534:67;12598:2;12593:3;12534:67;:::i;:::-;12527:74;;12610:93;12699:3;12610:93;:::i;:::-;12728:2;12723:3;12719:12;12712:19;;12371:366;;;:::o;12743:419::-;12909:4;12947:2;12936:9;12932:18;12924:26;;12996:9;12990:4;12986:20;12982:1;12971:9;12967:17;12960:47;13024:131;13150:4;13024:131;:::i;:::-;13016:139;;12743:419;;;:::o;13168:180::-;13216:77;13213:1;13206:88;13313:4;13310:1;13303:15;13337:4;13334:1;13327:15;13354:320;13398:6;13435:1;13429:4;13425:12;13415:22;;13482:1;13476:4;13472:12;13503:18;13493:81;;13559:4;13551:6;13547:17;13537:27;;13493:81;13621:2;13613:6;13610:14;13590:18;13587:38;13584:84;;13640:18;;:::i;:::-;13584:84;13405:269;13354:320;;;:::o;13680:180::-;13728:77;13725:1;13718:88;13825:4;13822:1;13815:15;13849:4;13846:1;13839:15;13866:180;13914:77;13911:1;13904:88;14011:4;14008:1;14001:15;14035:4;14032:1;14025:15;14052:191;14092:3;14111:20;14129:1;14111:20;:::i;:::-;14106:25;;14145:20;14163:1;14145:20;:::i;:::-;14140:25;;14188:1;14185;14181:9;14174:16;;14209:3;14206:1;14203:10;14200:36;;;14216:18;;:::i;:::-;14200:36;14052:191;;;;:::o;14249:410::-;14289:7;14312:20;14330:1;14312:20;:::i;:::-;14307:25;;14346:20;14364:1;14346:20;:::i;:::-;14341:25;;14401:1;14398;14394:9;14423:30;14441:11;14423:30;:::i;:::-;14412:41;;14602:1;14593:7;14589:15;14586:1;14583:22;14563:1;14556:9;14536:83;14513:139;;14632:18;;:::i;:::-;14513:139;14297:362;14249:410;;;;:::o;14665:180::-;14713:77;14710:1;14703:88;14810:4;14807:1;14800:15;14834:4;14831:1;14824:15;14851:185;14891:1;14908:20;14926:1;14908:20;:::i;:::-;14903:25;;14942:20;14960:1;14942:20;:::i;:::-;14937:25;;14981:1;14971:35;;14986:18;;:::i;:::-;14971:35;15028:1;15025;15021:9;15016:14;;14851:185;;;;:::o;15042:167::-;15182:19;15178:1;15170:6;15166:14;15159:43;15042:167;:::o;15215:366::-;15357:3;15378:67;15442:2;15437:3;15378:67;:::i;:::-;15371:74;;15454:93;15543:3;15454:93;:::i;:::-;15572:2;15567:3;15563:12;15556:19;;15215:366;;;:::o;15587:419::-;15753:4;15791:2;15780:9;15776:18;15768:26;;15840:9;15834:4;15830:20;15826:1;15815:9;15811:17;15804:47;15868:131;15994:4;15868:131;:::i;:::-;15860:139;;15587:419;;;:::o;16012:172::-;16152:24;16148:1;16140:6;16136:14;16129:48;16012:172;:::o;16190:366::-;16332:3;16353:67;16417:2;16412:3;16353:67;:::i;:::-;16346:74;;16429:93;16518:3;16429:93;:::i;:::-;16547:2;16542:3;16538:12;16531:19;;16190:366;;;:::o;16562:419::-;16728:4;16766:2;16755:9;16751:18;16743:26;;16815:9;16809:4;16805:20;16801:1;16790:9;16786:17;16779:47;16843:131;16969:4;16843:131;:::i;:::-;16835:139;;16562:419;;;:::o;16987:244::-;17127:34;17123:1;17115:6;17111:14;17104:58;17196:27;17191:2;17183:6;17179:15;17172:52;16987:244;:::o;17237:366::-;17379:3;17400:67;17464:2;17459:3;17400:67;:::i;:::-;17393:74;;17476:93;17565:3;17476:93;:::i;:::-;17594:2;17589:3;17585:12;17578:19;;17237:366;;;:::o;17609:419::-;17775:4;17813:2;17802:9;17798:18;17790:26;;17862:9;17856:4;17852:20;17848:1;17837:9;17833:17;17826:47;17890:131;18016:4;17890:131;:::i;:::-;17882:139;;17609:419;;;:::o;18034:224::-;18174:34;18170:1;18162:6;18158:14;18151:58;18243:7;18238:2;18230:6;18226:15;18219:32;18034:224;:::o;18264:366::-;18406:3;18427:67;18491:2;18486:3;18427:67;:::i;:::-;18420:74;;18503:93;18592:3;18503:93;:::i;:::-;18621:2;18616:3;18612:12;18605:19;;18264:366;;;:::o;18636:419::-;18802:4;18840:2;18829:9;18825:18;18817:26;;18889:9;18883:4;18879:20;18875:1;18864:9;18860:17;18853:47;18917:131;19043:4;18917:131;:::i;:::-;18909:139;;18636:419;;;:::o;19061:173::-;19201:25;19197:1;19189:6;19185:14;19178:49;19061:173;:::o;19240:366::-;19382:3;19403:67;19467:2;19462:3;19403:67;:::i;:::-;19396:74;;19479:93;19568:3;19479:93;:::i;:::-;19597:2;19592:3;19588:12;19581:19;;19240:366;;;:::o;19612:419::-;19778:4;19816:2;19805:9;19801:18;19793:26;;19865:9;19859:4;19855:20;19851:1;19840:9;19836:17;19829:47;19893:131;20019:4;19893:131;:::i;:::-;19885:139;;19612:419;;;:::o;20037:143::-;20094:5;20125:6;20119:13;20110:22;;20141:33;20168:5;20141:33;:::i;:::-;20037:143;;;;:::o;20186:351::-;20256:6;20305:2;20293:9;20284:7;20280:23;20276:32;20273:119;;;20311:79;;:::i;:::-;20273:119;20431:1;20456:64;20512:7;20503:6;20492:9;20488:22;20456:64;:::i;:::-;20446:74;;20402:128;20186:351;;;;:::o;20543:332::-;20664:4;20702:2;20691:9;20687:18;20679:26;;20715:71;20783:1;20772:9;20768:17;20759:6;20715:71;:::i;:::-;20796:72;20864:2;20853:9;20849:18;20840:6;20796:72;:::i;:::-;20543:332;;;;;:::o;20881:85::-;20926:7;20955:5;20944:16;;20881:85;;;:::o;20972:158::-;21030:9;21063:61;21081:42;21090:32;21116:5;21090:32;:::i;:::-;21081:42;:::i;:::-;21063:61;:::i;:::-;21050:74;;20972:158;;;:::o;21136:147::-;21231:45;21270:5;21231:45;:::i;:::-;21226:3;21219:58;21136:147;;:::o;21289:807::-;21538:4;21576:3;21565:9;21561:19;21553:27;;21590:71;21658:1;21647:9;21643:17;21634:6;21590:71;:::i;:::-;21671:72;21739:2;21728:9;21724:18;21715:6;21671:72;:::i;:::-;21753:80;21829:2;21818:9;21814:18;21805:6;21753:80;:::i;:::-;21843;21919:2;21908:9;21904:18;21895:6;21843:80;:::i;:::-;21933:73;22001:3;21990:9;21986:19;21977:6;21933:73;:::i;:::-;22016;22084:3;22073:9;22069:19;22060:6;22016:73;:::i;:::-;21289:807;;;;;;;;;:::o;22102:143::-;22159:5;22190:6;22184:13;22175:22;;22206:33;22233:5;22206:33;:::i;:::-;22102:143;;;;:::o;22251:663::-;22339:6;22347;22355;22404:2;22392:9;22383:7;22379:23;22375:32;22372:119;;;22410:79;;:::i;:::-;22372:119;22530:1;22555:64;22611:7;22602:6;22591:9;22587:22;22555:64;:::i;:::-;22545:74;;22501:128;22668:2;22694:64;22750:7;22741:6;22730:9;22726:22;22694:64;:::i;:::-;22684:74;;22639:129;22807:2;22833:64;22889:7;22880:6;22869:9;22865:22;22833:64;:::i;:::-;22823:74;;22778:129;22251:663;;;;;:::o;22920:332::-;23041:4;23079:2;23068:9;23064:18;23056:26;;23092:71;23160:1;23149:9;23145:17;23136:6;23092:71;:::i;:::-;23173:72;23241:2;23230:9;23226:18;23217:6;23173:72;:::i;:::-;22920:332;;;;;:::o;23258:137::-;23312:5;23343:6;23337:13;23328:22;;23359:30;23383:5;23359:30;:::i;:::-;23258:137;;;;:::o;23401:345::-;23468:6;23517:2;23505:9;23496:7;23492:23;23488:32;23485:119;;;23523:79;;:::i;:::-;23485:119;23643:1;23668:61;23721:7;23712:6;23701:9;23697:22;23668:61;:::i;:::-;23658:71;;23614:125;23401:345;;;;:::o;23752:351::-;23822:6;23871:2;23859:9;23850:7;23846:23;23842:32;23839:119;;;23877:79;;:::i;:::-;23839:119;23997:1;24022:64;24078:7;24069:6;24058:9;24054:22;24022:64;:::i;:::-;24012:74;;23968:128;23752:351;;;;:::o;24109:174::-;24249:26;24245:1;24237:6;24233:14;24226:50;24109:174;:::o;24289:366::-;24431:3;24452:67;24516:2;24511:3;24452:67;:::i;:::-;24445:74;;24528:93;24617:3;24528:93;:::i;:::-;24646:2;24641:3;24637:12;24630:19;;24289:366;;;:::o;24661:419::-;24827:4;24865:2;24854:9;24850:18;24842:26;;24914:9;24908:4;24904:20;24900:1;24889:9;24885:17;24878:47;24942:131;25068:4;24942:131;:::i;:::-;24934:139;;24661:419;;;:::o;25086:225::-;25226:34;25222:1;25214:6;25210:14;25203:58;25295:8;25290:2;25282:6;25278:15;25271:33;25086:225;:::o;25317:366::-;25459:3;25480:67;25544:2;25539:3;25480:67;:::i;:::-;25473:74;;25556:93;25645:3;25556:93;:::i;:::-;25674:2;25669:3;25665:12;25658:19;;25317:366;;;:::o;25689:419::-;25855:4;25893:2;25882:9;25878:18;25870:26;;25942:9;25936:4;25932:20;25928:1;25917:9;25913:17;25906:47;25970:131;26096:4;25970:131;:::i;:::-;25962:139;;25689:419;;;:::o;26114:182::-;26254:34;26250:1;26242:6;26238:14;26231:58;26114:182;:::o;26302:366::-;26444:3;26465:67;26529:2;26524:3;26465:67;:::i;:::-;26458:74;;26541:93;26630:3;26541:93;:::i;:::-;26659:2;26654:3;26650:12;26643:19;;26302:366;;;:::o;26674:419::-;26840:4;26878:2;26867:9;26863:18;26855:26;;26927:9;26921:4;26917:20;26913:1;26902:9;26898:17;26891:47;26955:131;27081:4;26955:131;:::i;:::-;26947:139;;26674:419;;;:::o;27099:223::-;27239:34;27235:1;27227:6;27223:14;27216:58;27308:6;27303:2;27295:6;27291:15;27284:31;27099:223;:::o;27328:366::-;27470:3;27491:67;27555:2;27550:3;27491:67;:::i;:::-;27484:74;;27567:93;27656:3;27567:93;:::i;:::-;27685:2;27680:3;27676:12;27669:19;;27328:366;;;:::o;27700:419::-;27866:4;27904:2;27893:9;27889:18;27881:26;;27953:9;27947:4;27943:20;27939:1;27928:9;27924:17;27917:47;27981:131;28107:4;27981:131;:::i;:::-;27973:139;;27700:419;;;:::o;28125:221::-;28265:34;28261:1;28253:6;28249:14;28242:58;28334:4;28329:2;28321:6;28317:15;28310:29;28125:221;:::o;28352:366::-;28494:3;28515:67;28579:2;28574:3;28515:67;:::i;:::-;28508:74;;28591:93;28680:3;28591:93;:::i;:::-;28709:2;28704:3;28700:12;28693:19;;28352:366;;;:::o;28724:419::-;28890:4;28928:2;28917:9;28913:18;28905:26;;28977:9;28971:4;28967:20;28963:1;28952:9;28948:17;28941:47;29005:131;29131:4;29005:131;:::i;:::-;28997:139;;28724:419;;;:::o;29149:179::-;29289:31;29285:1;29277:6;29273:14;29266:55;29149:179;:::o;29334:366::-;29476:3;29497:67;29561:2;29556:3;29497:67;:::i;:::-;29490:74;;29573:93;29662:3;29573:93;:::i;:::-;29691:2;29686:3;29682:12;29675:19;;29334:366;;;:::o;29706:419::-;29872:4;29910:2;29899:9;29895:18;29887:26;;29959:9;29953:4;29949:20;29945:1;29934:9;29930:17;29923:47;29987:131;30113:4;29987:131;:::i;:::-;29979:139;;29706:419;;;:::o;30131:224::-;30271:34;30267:1;30259:6;30255:14;30248:58;30340:7;30335:2;30327:6;30323:15;30316:32;30131:224;:::o;30361:366::-;30503:3;30524:67;30588:2;30583:3;30524:67;:::i;:::-;30517:74;;30600:93;30689:3;30600:93;:::i;:::-;30718:2;30713:3;30709:12;30702:19;;30361:366;;;:::o;30733:419::-;30899:4;30937:2;30926:9;30922:18;30914:26;;30986:9;30980:4;30976:20;30972:1;30961:9;30957:17;30950:47;31014:131;31140:4;31014:131;:::i;:::-;31006:139;;30733:419;;;:::o;31158:222::-;31298:34;31294:1;31286:6;31282:14;31275:58;31367:5;31362:2;31354:6;31350:15;31343:30;31158:222;:::o;31386:366::-;31528:3;31549:67;31613:2;31608:3;31549:67;:::i;:::-;31542:74;;31625:93;31714:3;31625:93;:::i;:::-;31743:2;31738:3;31734:12;31727:19;;31386:366;;;:::o;31758:419::-;31924:4;31962:2;31951:9;31947:18;31939:26;;32011:9;32005:4;32001:20;31997:1;31986:9;31982:17;31975:47;32039:131;32165:4;32039:131;:::i;:::-;32031:139;;31758:419;;;:::o;32183:172::-;32323:24;32319:1;32311:6;32307:14;32300:48;32183:172;:::o;32361:366::-;32503:3;32524:67;32588:2;32583:3;32524:67;:::i;:::-;32517:74;;32600:93;32689:3;32600:93;:::i;:::-;32718:2;32713:3;32709:12;32702:19;;32361:366;;;:::o;32733:419::-;32899:4;32937:2;32926:9;32922:18;32914:26;;32986:9;32980:4;32976:20;32972:1;32961:9;32957:17;32950:47;33014:131;33140:4;33014:131;:::i;:::-;33006:139;;32733:419;;;:::o;33158:240::-;33298:34;33294:1;33286:6;33282:14;33275:58;33367:23;33362:2;33354:6;33350:15;33343:48;33158:240;:::o;33404:366::-;33546:3;33567:67;33631:2;33626:3;33567:67;:::i;:::-;33560:74;;33643:93;33732:3;33643:93;:::i;:::-;33761:2;33756:3;33752:12;33745:19;;33404:366;;;:::o;33776:419::-;33942:4;33980:2;33969:9;33965:18;33957:26;;34029:9;34023:4;34019:20;34015:1;34004:9;34000:17;33993:47;34057:131;34183:4;34057:131;:::i;:::-;34049:139;;33776:419;;;:::o;34201:169::-;34341:21;34337:1;34329:6;34325:14;34318:45;34201:169;:::o;34376:366::-;34518:3;34539:67;34603:2;34598:3;34539:67;:::i;:::-;34532:74;;34615:93;34704:3;34615:93;:::i;:::-;34733:2;34728:3;34724:12;34717:19;;34376:366;;;:::o;34748:419::-;34914:4;34952:2;34941:9;34937:18;34929:26;;35001:9;34995:4;34991:20;34987:1;34976:9;34972:17;34965:47;35029:131;35155:4;35029:131;:::i;:::-;35021:139;;34748:419;;;:::o;35173:241::-;35313:34;35309:1;35301:6;35297:14;35290:58;35382:24;35377:2;35369:6;35365:15;35358:49;35173:241;:::o;35420:366::-;35562:3;35583:67;35647:2;35642:3;35583:67;:::i;:::-;35576:74;;35659:93;35748:3;35659:93;:::i;:::-;35777:2;35772:3;35768:12;35761:19;;35420:366;;;:::o;35792:419::-;35958:4;35996:2;35985:9;35981:18;35973:26;;36045:9;36039:4;36035:20;36031:1;36020:9;36016:17;36009:47;36073:131;36199:4;36073:131;:::i;:::-;36065:139;;35792:419;;;:::o;36217:194::-;36257:4;36277:20;36295:1;36277:20;:::i;:::-;36272:25;;36311:20;36329:1;36311:20;:::i;:::-;36306:25;;36355:1;36352;36348:9;36340:17;;36379:1;36373:4;36370:11;36367:37;;;36384:18;;:::i;:::-;36367:37;36217:194;;;;:::o;36417:114::-;36484:6;36518:5;36512:12;36502:22;;36417:114;;;:::o;36537:184::-;36636:11;36670:6;36665:3;36658:19;36710:4;36705:3;36701:14;36686:29;;36537:184;;;;:::o;36727:132::-;36794:4;36817:3;36809:11;;36847:4;36842:3;36838:14;36830:22;;36727:132;;;:::o;36865:108::-;36942:24;36960:5;36942:24;:::i;:::-;36937:3;36930:37;36865:108;;:::o;36979:179::-;37048:10;37069:46;37111:3;37103:6;37069:46;:::i;:::-;37147:4;37142:3;37138:14;37124:28;;36979:179;;;;:::o;37164:113::-;37234:4;37266;37261:3;37257:14;37249:22;;37164:113;;;:::o;37313:732::-;37432:3;37461:54;37509:5;37461:54;:::i;:::-;37531:86;37610:6;37605:3;37531:86;:::i;:::-;37524:93;;37641:56;37691:5;37641:56;:::i;:::-;37720:7;37751:1;37736:284;37761:6;37758:1;37755:13;37736:284;;;37837:6;37831:13;37864:63;37923:3;37908:13;37864:63;:::i;:::-;37857:70;;37950:60;38003:6;37950:60;:::i;:::-;37940:70;;37796:224;37783:1;37780;37776:9;37771:14;;37736:284;;;37740:14;38036:3;38029:10;;37437:608;;;37313:732;;;;:::o;38051:831::-;38314:4;38352:3;38341:9;38337:19;38329:27;;38366:71;38434:1;38423:9;38419:17;38410:6;38366:71;:::i;:::-;38447:80;38523:2;38512:9;38508:18;38499:6;38447:80;:::i;:::-;38574:9;38568:4;38564:20;38559:2;38548:9;38544:18;38537:48;38602:108;38705:4;38696:6;38602:108;:::i;:::-;38594:116;;38720:72;38788:2;38777:9;38773:18;38764:6;38720:72;:::i;:::-;38802:73;38870:3;38859:9;38855:19;38846:6;38802:73;:::i;:::-;38051:831;;;;;;;;:::o;38888:223::-;39028:34;39024:1;39016:6;39012:14;39005:58;39097:6;39092:2;39084:6;39080:15;39073:31;38888:223;:::o;39117:366::-;39259:3;39280:67;39344:2;39339:3;39280:67;:::i;:::-;39273:74;;39356:93;39445:3;39356:93;:::i;:::-;39474:2;39469:3;39465:12;39458:19;;39117:366;;;:::o;39489:419::-;39655:4;39693:2;39682:9;39678:18;39670:26;;39742:9;39736:4;39732:20;39728:1;39717:9;39713:17;39706:47;39770:131;39896:4;39770:131;:::i;:::-;39762:139;;39489:419;;;:::o;39914:225::-;40054:34;40050:1;40042:6;40038:14;40031:58;40123:8;40118:2;40110:6;40106:15;40099:33;39914:225;:::o;40145:366::-;40287:3;40308:67;40372:2;40367:3;40308:67;:::i;:::-;40301:74;;40384:93;40473:3;40384:93;:::i;:::-;40502:2;40497:3;40493:12;40486:19;;40145:366;;;:::o;40517:419::-;40683:4;40721:2;40710:9;40706:18;40698:26;;40770:9;40764:4;40760:20;40756:1;40745:9;40741:17;40734:47;40798:131;40924:4;40798:131;:::i;:::-;40790:139;;40517:419;;;:::o
Swarm Source
ipfs://d80ab0b7a4f3bb01377d24d45c1a1de18850eb75c2cd4da3261ae7888684d46d
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.