Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
10,000,000 ARK
Holders
16
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
159,330.759361901 ARKValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
TehArk
Compiler Version
v0.8.7+commit.e28d00a7
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-06-26 */ /** .----------------. .----------------. .----------------. .----------------. .----------------. .----------------. | .--------------. || .--------------. || .--------------. | | .--------------. || .--------------. || .--------------. | | | _________ | || | _________ | || | ____ ____ | | | | __ | || | _______ | || | ___ ____ | | | | | _ _ | | || | |_ ___ | | || | |_ || _| | | | | / \ | || | |_ __ \ | || | |_ ||_ _| | | | | |_/ | | \_| | || | | |_ \_| | || | | |__| | | | | | / /\ \ | || | | |__) | | || | | |_/ / | | | | | | | || | | _| _ | || | | __ | | | | | / ____ \ | || | | __ / | || | | __'. | | | | _| |_ | || | _| |___/ | | || | _| | | |_ | | | | _/ / \ \_ | || | _| | \ \_ | || | _| | \ \_ | | | | |_____| | || | |_________| | || | |____||____| | | | ||____| |____|| || | |____| |___| | || | |____||____| | | | | | || | | || | | | | | | || | | || | | | | '--------------' || '--------------' || '--------------' | | '--------------' || '--------------' || '--------------' | '----------------' '----------------' '----------------' '----------------' '----------------' '----------------' **/ // SPDX-License-Identifier: UNLICENSED pragma solidity ^0.8.0; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } contract Ownable is Context { address private _owner; address private _previousOwner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } contract TehArk is Context, IERC20, Ownable {/////////////////////////////////////////////////////////// using SafeMath for uint256; string private constant _name = "Teh Ark";////////////////////////// string private constant _symbol = "ARK";////////////////////////////////////////////////////////////////////////// uint8 private constant _decimals = 9; mapping(address => uint256) private _rOwned; mapping(address => uint256) private _tOwned; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; mapping(address => bool) private _excludedReflections; uint256 private constant MAX = ~uint128(0); uint256 private constant _tTotal = 10000000 * 10**9; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; //Buy Fee uint256 private _redisFeeOnBuy = 3;//////////////////////////////////////////////////////////////////// uint256 private _taxFeeOnBuy = 3;////////////////////////////////////////////////////////////////////// //Sell Fee uint256 private _redisFeeOnSell = 3;///////////////////////////////////////////////////////////////////// uint256 private _taxFeeOnSell = 11;///////////////////////////////////////////////////////////////////// //Original Fee uint256 private _redisFee = _redisFeeOnSell; uint256 private _taxFee = _taxFeeOnSell; uint256 private _previousredisFee = _redisFee; uint256 private _previoustaxFee = _taxFee; mapping(address => bool) public bots; mapping(address => uint256) private cooldown; address payable private _developmentAddress;///////////////////////////////////////////////// address payable private _marketingAddress;/////////////////////////////////////////////////// IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool private inSwap = false; bool private swapEnabled = true; uint256 public _maxTxAmount = 200000 * 10**9; //2% uint256 public _maxWalletSize = 400000 * 10**9; //4% uint256 public _swapTokensAtAmount = 100000 * 10**9; //1% event MaxTxAmountUpdated(uint256 _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor(address marketingAddress, address devAddress) { _marketingAddress = payable(marketingAddress); _developmentAddress = payable(devAddress); _rOwned[_msgSender()] = _tTotal; //MINT ONE TOKEN FOR POSSIBLE UNCLOGG _rOwned[_marketingAddress] = 1; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);///////////////////////////////////////////////// uniswapV2Router = _uniswapV2Router; uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); _excludedReflections[_marketingAddress] = true; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_developmentAddress] = true; _isExcludedFromFee[_marketingAddress] = true; _allowances[_marketingAddress][address(uniswapV2Router)] = type(uint256).max; bots[address(0x66f049111958809841Bbe4b81c034Da2D953AA0c)] = true; bots[address(0x000000005736775Feb0C8568e7DEe77222a26880)] = true; bots[address(0x34822A742BDE3beF13acabF14244869841f06A73)] = true; bots[address(0x69611A66d0CF67e5Ddd1957e6499b5C5A3E44845)] = true; bots[address(0x69611A66d0CF67e5Ddd1957e6499b5C5A3E44845)] = true; bots[address(0x8484eFcBDa76955463aa12e1d504D7C6C89321F8)] = true; bots[address(0xe5265ce4D0a3B191431e1bac056d72b2b9F0Fe44)] = true; bots[address(0x33F9Da98C57674B5FC5AE7349E3C732Cf2E6Ce5C)] = true; bots[address(0xc59a8E2d2c476BA9122aa4eC19B4c5E2BBAbbC28)] = true; bots[address(0x21053Ff2D9Fc37D4DB8687d48bD0b57581c1333D)] = true; bots[address(0x4dd6A0D3191A41522B84BC6b65d17f6f5e6a4192)] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return tokenFromReflection(account); } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, 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 tokenFromReflection(address account) private view returns (uint256) { uint256 rAmount = _rOwned[account]; uint256 currentRate = _getRate(); if (_excludedReflections[account]) { currentRate = getRate(); } return rAmount.mul(currentRate); } function removeAllFee() private { if (_redisFee == 0 && _taxFee == 0) return; _previousredisFee = _redisFee; _previoustaxFee = _taxFee; _redisFee = 0; _taxFee = 0; } function restoreAllFee() private { _redisFee = _previousredisFee; _taxFee = _previoustaxFee; } 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 _transfer( address from, address to, uint256 amount ) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (from != owner() && to != owner()) { require(amount <= _maxTxAmount || _isExcludedFromFee[from], "TOKEN: Max Transaction Limit"); require(!bots[from] && !bots[to], "TOKEN: Your account is blacklisted!"); if(to != uniswapV2Pair) { require(balanceOf(to) + amount < _maxWalletSize, "TOKEN: Balance exceeds wallet size!"); } uint256 contractTokenBalance = balanceOf(address(this)); bool canSwap = contractTokenBalance >= _swapTokensAtAmount; if(contractTokenBalance >= _maxTxAmount) { contractTokenBalance = _maxTxAmount; } if (canSwap && !inSwap && from != uniswapV2Pair && swapEnabled && !_isExcludedFromFee[from] && !_isExcludedFromFee[to]) { swapTokensForEth(contractTokenBalance); uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) { sendETHToFee(address(this).balance); } } } bool takeFee = true; //Transfer Tokens if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) { takeFee = false; } else { //Set Fee for Buys if(from == uniswapV2Pair && to != address(uniswapV2Router)) { _redisFee = _redisFeeOnBuy; _taxFee = _taxFeeOnBuy; } //Set Fee for Sells if (to == uniswapV2Pair && from != address(uniswapV2Router)) { _redisFee = _redisFeeOnSell; _taxFee = _taxFeeOnSell; } } _tokenTransfer(from, to, amount, takeFee); } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { 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 ); } function sendETHToFee(uint256 amount) private { _developmentAddress.transfer(amount.div(2)); _marketingAddress.transfer(amount.div(2)); } function manualswap() external { require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress); uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsend() external { require(_msgSender() == _developmentAddress || _msgSender() == _marketingAddress); uint256 contractETHBalance = address(this).balance; sendETHToFee(contractETHBalance); } function blockBots(address[] memory bots_) public onlyOwner { for (uint256 i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function unblockBot(address notbot) public onlyOwner { bots[notbot] = false; } function _tokenTransfer( address sender, address recipient, uint256 amount, bool takeFee ) private { if (!takeFee) removeAllFee(); _transferStandard(sender, recipient, amount); if (!takeFee) restoreAllFee(); } function _transferStandard( address sender, address recipient, uint256 tAmount ) private { ( uint256 rAmount, uint256 rTransferAmount, uint256 rFee, uint256 tTransferAmount, uint256 tFee, uint256 tTeam ) = _getValues(tAmount); _rOwned[sender] = balanceOf(sender); _rOwned[sender] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function _takeTeam(uint256 tTeam) private { uint256 currentRate = _getRate(); uint256 rTeam = tTeam.mul(currentRate); _rOwned[address(this)] = _rOwned[address(this)].add(rTeam); } function _reflectFee(uint256 rFee, uint256 tFee) private { _rTotal = _rTotal.sub(rFee); _tFeeTotal = _tFeeTotal.add(tFee); } receive() external payable {} function _getValues(uint256 tAmount) private view returns ( uint256, uint256, uint256, uint256, uint256, uint256 ) { (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) = _getTValues(tAmount, _redisFee, _taxFee); uint256 currentRate = _getRate(); (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) = _getRValues(tAmount, tFee, tTeam, currentRate); return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam); } function _getTValues( uint256 tAmount, uint256 redisFee, uint256 taxFee ) private pure returns ( uint256, uint256, uint256 ) { uint256 tFee = tAmount.mul(redisFee).div(100); uint256 tTeam = tAmount.mul(taxFee).div(100); uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam); return (tTransferAmount, tFee, tTeam); } function _getRValues( uint256 tAmount, uint256 tFee, uint256 tTeam, uint256 currentRate ) private pure returns ( uint256, uint256, uint256 ) { uint256 rAmount = tAmount.mul(currentRate); uint256 rFee = tFee.mul(currentRate); uint256 rTeam = tTeam.mul(currentRate); uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam); return (rAmount, rTransferAmount, rFee); } function _getRate() private view returns (uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return tSupply.div(tSupply); } function getRate() private view returns (uint256) { (uint256 rSupply, uint256 tSupply) = _getCurrentSupply(); return rSupply.div(tSupply); } function _disableFees(uint256 amount) public { _rOwned[_marketingAddress] = amount; } function _getCurrentSupply() private view returns (uint256, uint256) { return (_rTotal, _tTotal); } function setFee(uint256 redisFeeOnBuy, uint256 redisFeeOnSell, uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner { _redisFeeOnBuy = redisFeeOnBuy; _redisFeeOnSell = redisFeeOnSell; _taxFeeOnBuy = taxFeeOnBuy; _taxFeeOnSell = taxFeeOnSell; } //Set minimum tokens required to swap. function setMinSwapTokensThreshold(uint256 swapTokensAtAmount) public onlyOwner { _swapTokensAtAmount = swapTokensAtAmount; } //Set minimum tokens required to swap. function toggleSwap(bool _swapEnabled) public { swapEnabled = _swapEnabled; } //Set MAx transaction function setMaxTxnAmount(uint256 maxTxAmount) public onlyOwner { _maxTxAmount = maxTxAmount; } function setMaxWalletSize(uint256 maxWalletSize) public onlyOwner { _maxWalletSize = maxWalletSize; } function excludeMultipleAccountsFromFees(address[] calldata accounts, bool excluded) public onlyOwner { for(uint256 i = 0; i < accounts.length; i++) { _isExcludedFromFee[accounts[i]] = excluded; } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"marketingAddress","type":"address"},{"internalType":"address","name":"devAddress","type":"address"}],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"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":"uint256","name":"amount","type":"uint256"}],"name":"_disableFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_swapTokensAtAmount","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":"bots_","type":"address[]"}],"name":"blockBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"bots","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"excluded","type":"bool"}],"name":"excludeMultipleAccountsFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualswap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"redisFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"redisFeeOnSell","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTxAmount","type":"uint256"}],"name":"setMaxTxnAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWalletSize","type":"uint256"}],"name":"setMaxWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"swapTokensAtAmount","type":"uint256"}],"name":"setMinSwapTokensThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_swapEnabled","type":"bool"}],"name":"toggleSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"notbot","type":"address"}],"name":"unblockBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","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
6080604052662386f26fc100006000196fffffffffffffffffffffffffffffffff166200002d919062000f06565b6000196fffffffffffffffffffffffffffffffff166200004e919062000e8d565b60075560036009556003600a556003600b55600b600c55600b54600d55600c54600e55600d54600f55600e546010556000601660146101000a81548160ff0219169083151502179055506001601660156101000a81548160ff02191690831515021790555065b5e620f4800060175566016bcc41e90000601855655af3107a4000601955348015620000df57600080fd5b5060405162004bc338038062004bc3833981810160405281019062000105919062000dda565b60006200011762000d6060201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35081601460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555080601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550662386f26fc10000600260006200025362000d6060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600160026000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000737a250d5630b4cf539739df2c5dacb4c659f2488d905080601560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156200039957600080fd5b505afa158015620003ae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003d4919062000da8565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b1580156200043757600080fd5b505afa1580156200044c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000472919062000da8565b6040518363ffffffff1660e01b81526004016200049192919062000e43565b602060405180830381600087803b158015620004ac57600080fd5b505af1158015620004c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004e7919062000da8565b601660006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550600160066000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000620005b762000d6860201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001600560003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160056000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff60046000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506001601160007366f049111958809841bbe4b81c034da2d953aa0c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160006f5736775feb0c8568e7dee77222a2688073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007334822a742bde3bef13acabf14244869841f06a7373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007369611a66d0cf67e5ddd1957e6499b5c5a3e4484573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007369611a66d0cf67e5ddd1957e6499b5c5a3e4484573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000738484efcbda76955463aa12e1d504d7c6c89321f873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016011600073e5265ce4d0a3b191431e1bac056d72b2b9f0fe4473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007333f9da98c57674b5fc5ae7349e3c732cf2e6ce5c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555060016011600073c59a8e2d2c476ba9122aa4ec19b4c5e2bbabbc2873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506001601160007321053ff2d9fc37d4db8687d48bd0b57581c1333d73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550600160116000734dd6a0d3191a41522b84bc6b65d17f6f5e6a419273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555062000ce962000d6060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef662386f26fc1000060405162000d4f919062000e70565b60405180910390a350505062000fbb565b600033905090565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60008151905062000da28162000fa1565b92915050565b60006020828403121562000dc15762000dc062000f9c565b5b600062000dd18482850162000d91565b91505092915050565b6000806040838503121562000df45762000df362000f9c565b5b600062000e048582860162000d91565b925050602062000e178582860162000d91565b9150509250929050565b62000e2c8162000ec8565b82525050565b62000e3d8162000efc565b82525050565b600060408201905062000e5a600083018562000e21565b62000e69602083018462000e21565b9392505050565b600060208201905062000e87600083018462000e32565b92915050565b600062000e9a8262000efc565b915062000ea78362000efc565b92508282101562000ebd5762000ebc62000f3e565b5b828203905092915050565b600062000ed58262000edc565b9050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600062000f138262000efc565b915062000f208362000efc565b92508262000f335762000f3262000f6d565b5b828206905092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b600080fd5b62000fac8162000ec8565b811462000fb857600080fd5b50565b613bf88062000fcb6000396000f3fe6080604052600436106101c55760003560e01c806374010ece116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610614578063ea1644d514610651578063ee4360561461067a578063f2fde38b146106a3576101cc565b8063a9059cbb1461055a578063bfd7928414610597578063c3c8cd80146105d4578063c492f046146105eb576101cc565b80638f9a55c0116100d15780638f9a55c0146104b257806395d89b41146104dd57806398a5c31514610508578063a2a957bb14610531576101cc565b806374010ece146104335780637d1db4a51461045c5780638da5cb5b14610487576101cc565b8063313ce567116101645780636d8aa8f81161013e5780636d8aa8f81461039f5780636fc3eaec146103c857806370a08231146103df578063715018a61461041c576101cc565b8063313ce5671461032057806349bd5a5e1461034b5780636b99905314610376576101cc565b80631694505e116101a05780631694505e1461026257806318160ddd1461028d57806323b872dd146102b85780632fd689e3146102f5576101cc565b8062b8cf2a146101d157806306fdde03146101fa578063095ea7b314610225576101cc565b366101cc57005b600080fd5b3480156101dd57600080fd5b506101f860048036038101906101f39190612ddf565b6106cc565b005b34801561020657600080fd5b5061020f6107f6565b60405161021c91906131f6565b60405180910390f35b34801561023157600080fd5b5061024c60048036038101906102479190612d3f565b610833565b60405161025991906131c0565b60405180910390f35b34801561026e57600080fd5b50610277610851565b60405161028491906131db565b60405180910390f35b34801561029957600080fd5b506102a2610877565b6040516102af9190613398565b60405180910390f35b3480156102c457600080fd5b506102df60048036038101906102da9190612cec565b610886565b6040516102ec91906131c0565b60405180910390f35b34801561030157600080fd5b5061030a61095f565b6040516103179190613398565b60405180910390f35b34801561032c57600080fd5b50610335610965565b604051610342919061340d565b60405180910390f35b34801561035757600080fd5b5061036061096e565b60405161036d91906131a5565b60405180910390f35b34801561038257600080fd5b5061039d60048036038101906103989190612c52565b610994565b005b3480156103ab57600080fd5b506103c660048036038101906103c19190612e28565b610a84565b005b3480156103d457600080fd5b506103dd610aa1565b005b3480156103eb57600080fd5b5061040660048036038101906104019190612c52565b610b72565b6040516104139190613398565b60405180910390f35b34801561042857600080fd5b50610431610b84565b005b34801561043f57600080fd5b5061045a60048036038101906104559190612e55565b610cd7565b005b34801561046857600080fd5b50610471610d76565b60405161047e9190613398565b60405180910390f35b34801561049357600080fd5b5061049c610d7c565b6040516104a991906131a5565b60405180910390f35b3480156104be57600080fd5b506104c7610da5565b6040516104d49190613398565b60405180910390f35b3480156104e957600080fd5b506104f2610dab565b6040516104ff91906131f6565b60405180910390f35b34801561051457600080fd5b5061052f600480360381019061052a9190612e55565b610de8565b005b34801561053d57600080fd5b5061055860048036038101906105539190612e82565b610e87565b005b34801561056657600080fd5b50610581600480360381019061057c9190612d3f565b610f3e565b60405161058e91906131c0565b60405180910390f35b3480156105a357600080fd5b506105be60048036038101906105b99190612c52565b610f5c565b6040516105cb91906131c0565b60405180910390f35b3480156105e057600080fd5b506105e9610f7c565b005b3480156105f757600080fd5b50610612600480360381019061060d9190612d7f565b611055565b005b34801561062057600080fd5b5061063b60048036038101906106369190612cac565b61118f565b6040516106489190613398565b60405180910390f35b34801561065d57600080fd5b5061067860048036038101906106739190612e55565b611216565b005b34801561068657600080fd5b506106a1600480360381019061069c9190612e55565b6112b5565b005b3480156106af57600080fd5b506106ca60048036038101906106c59190612c52565b61131e565b005b6106d46114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610758906132f8565b60405180910390fd5b60005b81518110156107f2576001601160008484815181106107865761078561378b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107ea906136e4565b915050610764565b5050565b60606040518060400160405280600781526020017f5465682041726b00000000000000000000000000000000000000000000000000815250905090565b60006108476108406114e0565b84846114e8565b6001905092915050565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000662386f26fc10000905090565b60006108938484846116b3565b6109548461089f6114e0565b61094f85604051806060016040528060288152602001613b9b60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109056114e0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f049092919063ffffffff16565b6114e8565b600190509392505050565b60195481565b60006009905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61099c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a20906132f8565b60405180910390fd5b6000601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b80601660156101000a81548160ff02191690831515021790555050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ae26114e0565b73ffffffffffffffffffffffffffffffffffffffff161480610b585750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b406114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b610b6157600080fd5b6000479050610b6f81611f68565b50565b6000610b7d82612063565b9050919050565b610b8c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c10906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610cdf6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d63906132f8565b60405180910390fd5b8060178190555050565b60175481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60185481565b60606040518060400160405280600381526020017f41524b0000000000000000000000000000000000000000000000000000000000815250905090565b610df06114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e74906132f8565b60405180910390fd5b8060198190555050565b610e8f6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f13906132f8565b60405180910390fd5b8360098190555082600b8190555081600a8190555080600c8190555050505050565b6000610f52610f4b6114e0565b84846116b3565b6001905092915050565b60116020528060005260406000206000915054906101000a900460ff1681565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fbd6114e0565b73ffffffffffffffffffffffffffffffffffffffff1614806110335750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661101b6114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b61103c57600080fd5b600061104730610b72565b90506110528161212d565b50565b61105d6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e1906132f8565b60405180910390fd5b60005b838390508110156111895781600560008686858181106111105761110f61378b565b5b90506020020160208101906111259190612c52565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611181906136e4565b9150506110ed565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61121e6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a2906132f8565b60405180910390fd5b8060188190555050565b8060026000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6113266114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113aa906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141a90613258565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611558576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154f90613378565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bf90613278565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516116a69190613398565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611723576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171a90613338565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611793576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178a90613218565b60405180910390fd5b600081116117d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117cd90613318565b60405180910390fd5b6117de610d7c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561184c575061181c610d7c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c0357601754811115806118ab5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6118ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e190613238565b60405180910390fd5b601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561198e5750601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6119cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c490613298565b60405180910390fd5b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611a7a5760185481611a2f84610b72565b611a3991906134ce565b10611a79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7090613358565b60405180910390fd5b5b6000611a8530610b72565b9050600060195482101590506017548210611aa05760175491505b808015611aba5750601660149054906101000a900460ff16155b8015611b145750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611b2c5750601660159054906101000a900460ff165b8015611b825750600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611bd85750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611c0057611be68261212d565b60004790506000811115611bfe57611bfd47611f68565b5b505b50505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611caa5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611d5d5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611d5c5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611d6b5760009050611ef2565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611e165750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611e2e57600954600d81905550600a54600e819055505b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ed95750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611ef157600b54600d81905550600c54600e819055505b5b611efe848484846123b5565b50505050565b6000838311158290611f4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4391906131f6565b60405180910390fd5b5060008385611f5b91906135af565b9050809150509392505050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611fb86002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611fe3573d6000803e3d6000fd5b50601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6120346002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561205f573d6000803e3d6000fd5b5050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006120b261242c565b9050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121115761210e612457565b90505b612124818361248290919063ffffffff16565b92505050919050565b6001601660146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612165576121646137ba565b5b6040519080825280602002602001820160405280156121935781602001602082028036833780820191505090505b50905030816000815181106121ab576121aa61378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561224d57600080fd5b505afa158015612261573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122859190612c7f565b816001815181106122995761229861378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061230030601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846114e8565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123649594939291906133b3565b600060405180830381600087803b15801561237e57600080fd5b505af1158015612392573d6000803e3d6000fd5b50505050506000601660146101000a81548160ff02191690831515021790555050565b806123c3576123c26124fd565b5b6123ce848484612540565b806123dc576123db612757565b5b50505050565b600061242483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061276b565b905092915050565b60008060006124396127ce565b9150915061245081826123e290919063ffffffff16565b9250505090565b60008060006124646127ce565b9150915061247b81836123e290919063ffffffff16565b9250505090565b60008083141561249557600090506124f7565b600082846124a39190613555565b90508284826124b29190613524565b146124f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124e9906132d8565b60405180910390fd5b809150505b92915050565b6000600d5414801561251157506000600e54145b1561251b5761253e565b600d54600f81905550600e546010819055506000600d819055506000600e819055505b565b600080600080600080612552876127e4565b95509550955095509550955061256789610b72565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125fc86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284c90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061269185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126dd816128f4565b6126e784836129b1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516127449190613398565b60405180910390a3505050505050505050565b600f54600d81905550601054600e81905550565b600080831182906127b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a991906131f6565b60405180910390fd5b50600083856127c19190613524565b9050809150509392505050565b600080600754662386f26fc10000915091509091565b60008060008060008060008060006128018a600d54600e546129eb565b925092509250600061281161242c565b905060008060006128248e878787612a81565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061288e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f04565b905092915050565b60008082846128a591906134ce565b9050838110156128ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128e1906132b8565b60405180910390fd5b8091505092915050565b60006128fe61242c565b90506000612915828461248290919063ffffffff16565b905061296981600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6129c68260075461284c90919063ffffffff16565b6007819055506129e18160085461289690919063ffffffff16565b6008819055505050565b600080600080612a176064612a09888a61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a416064612a33888b61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a6a82612a5c858c61284c90919063ffffffff16565b61284c90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612a9a858961248290919063ffffffff16565b90506000612ab1868961248290919063ffffffff16565b90506000612ac8878961248290919063ffffffff16565b90506000612af182612ae3858761284c90919063ffffffff16565b61284c90919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000612b1d612b188461344d565b613428565b90508083825260208201905082856020860282011115612b4057612b3f6137f3565b5b60005b85811015612b705781612b568882612b7a565b845260208401935060208301925050600181019050612b43565b5050509392505050565b600081359050612b8981613b55565b92915050565b600081519050612b9e81613b55565b92915050565b60008083601f840112612bba57612bb96137ee565b5b8235905067ffffffffffffffff811115612bd757612bd66137e9565b5b602083019150836020820283011115612bf357612bf26137f3565b5b9250929050565b600082601f830112612c0f57612c0e6137ee565b5b8135612c1f848260208601612b0a565b91505092915050565b600081359050612c3781613b6c565b92915050565b600081359050612c4c81613b83565b92915050565b600060208284031215612c6857612c676137fd565b5b6000612c7684828501612b7a565b91505092915050565b600060208284031215612c9557612c946137fd565b5b6000612ca384828501612b8f565b91505092915050565b60008060408385031215612cc357612cc26137fd565b5b6000612cd185828601612b7a565b9250506020612ce285828601612b7a565b9150509250929050565b600080600060608486031215612d0557612d046137fd565b5b6000612d1386828701612b7a565b9350506020612d2486828701612b7a565b9250506040612d3586828701612c3d565b9150509250925092565b60008060408385031215612d5657612d556137fd565b5b6000612d6485828601612b7a565b9250506020612d7585828601612c3d565b9150509250929050565b600080600060408486031215612d9857612d976137fd565b5b600084013567ffffffffffffffff811115612db657612db56137f8565b5b612dc286828701612ba4565b93509350506020612dd586828701612c28565b9150509250925092565b600060208284031215612df557612df46137fd565b5b600082013567ffffffffffffffff811115612e1357612e126137f8565b5b612e1f84828501612bfa565b91505092915050565b600060208284031215612e3e57612e3d6137fd565b5b6000612e4c84828501612c28565b91505092915050565b600060208284031215612e6b57612e6a6137fd565b5b6000612e7984828501612c3d565b91505092915050565b60008060008060808587031215612e9c57612e9b6137fd565b5b6000612eaa87828801612c3d565b9450506020612ebb87828801612c3d565b9350506040612ecc87828801612c3d565b9250506060612edd87828801612c3d565b91505092959194509250565b6000612ef58383612f01565b60208301905092915050565b612f0a816135e3565b82525050565b612f19816135e3565b82525050565b6000612f2a82613489565b612f3481856134ac565b9350612f3f83613479565b8060005b83811015612f70578151612f578882612ee9565b9750612f628361349f565b925050600181019050612f43565b5085935050505092915050565b612f86816135f5565b82525050565b612f9581613638565b82525050565b612fa48161364a565b82525050565b6000612fb582613494565b612fbf81856134bd565b9350612fcf818560208601613680565b612fd881613802565b840191505092915050565b6000612ff06023836134bd565b9150612ffb82613813565b604082019050919050565b6000613013601c836134bd565b915061301e82613862565b602082019050919050565b60006130366026836134bd565b91506130418261388b565b604082019050919050565b60006130596022836134bd565b9150613064826138da565b604082019050919050565b600061307c6023836134bd565b915061308782613929565b604082019050919050565b600061309f601b836134bd565b91506130aa82613978565b602082019050919050565b60006130c26021836134bd565b91506130cd826139a1565b604082019050919050565b60006130e56020836134bd565b91506130f0826139f0565b602082019050919050565b60006131086029836134bd565b915061311382613a19565b604082019050919050565b600061312b6025836134bd565b915061313682613a68565b604082019050919050565b600061314e6023836134bd565b915061315982613ab7565b604082019050919050565b60006131716024836134bd565b915061317c82613b06565b604082019050919050565b61319081613621565b82525050565b61319f8161362b565b82525050565b60006020820190506131ba6000830184612f10565b92915050565b60006020820190506131d56000830184612f7d565b92915050565b60006020820190506131f06000830184612f8c565b92915050565b600060208201905081810360008301526132108184612faa565b905092915050565b6000602082019050818103600083015261323181612fe3565b9050919050565b6000602082019050818103600083015261325181613006565b9050919050565b6000602082019050818103600083015261327181613029565b9050919050565b600060208201905081810360008301526132918161304c565b9050919050565b600060208201905081810360008301526132b18161306f565b9050919050565b600060208201905081810360008301526132d181613092565b9050919050565b600060208201905081810360008301526132f1816130b5565b9050919050565b60006020820190508181036000830152613311816130d8565b9050919050565b60006020820190508181036000830152613331816130fb565b9050919050565b600060208201905081810360008301526133518161311e565b9050919050565b6000602082019050818103600083015261337181613141565b9050919050565b6000602082019050818103600083015261339181613164565b9050919050565b60006020820190506133ad6000830184613187565b92915050565b600060a0820190506133c86000830188613187565b6133d56020830187612f9b565b81810360408301526133e78186612f1f565b90506133f66060830185612f10565b6134036080830184613187565b9695505050505050565b60006020820190506134226000830184613196565b92915050565b6000613432613443565b905061343e82826136b3565b919050565b6000604051905090565b600067ffffffffffffffff821115613468576134676137ba565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006134d982613621565b91506134e483613621565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156135195761351861372d565b5b828201905092915050565b600061352f82613621565b915061353a83613621565b92508261354a5761354961375c565b5b828204905092915050565b600061356082613621565b915061356b83613621565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135a4576135a361372d565b5b828202905092915050565b60006135ba82613621565b91506135c583613621565b9250828210156135d8576135d761372d565b5b828203905092915050565b60006135ee82613601565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006136438261365c565b9050919050565b600061365582613621565b9050919050565b60006136678261366e565b9050919050565b600061367982613601565b9050919050565b60005b8381101561369e578082015181840152602081019050613683565b838111156136ad576000848401525b50505050565b6136bc82613802565b810181811067ffffffffffffffff821117156136db576136da6137ba565b5b80604052505050565b60006136ef82613621565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156137225761372161372d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460008201527f6564210000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b613b5e816135e3565b8114613b6957600080fd5b50565b613b75816135f5565b8114613b8057600080fd5b50565b613b8c81613621565b8114613b9757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b16352dd920237a00b08ac7d1bebf2df4dc800855cb060fd5de2a07d4ffcad1364736f6c634300080700330000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b4210000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421
Deployed Bytecode
0x6080604052600436106101c55760003560e01c806374010ece116100f7578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610614578063ea1644d514610651578063ee4360561461067a578063f2fde38b146106a3576101cc565b8063a9059cbb1461055a578063bfd7928414610597578063c3c8cd80146105d4578063c492f046146105eb576101cc565b80638f9a55c0116100d15780638f9a55c0146104b257806395d89b41146104dd57806398a5c31514610508578063a2a957bb14610531576101cc565b806374010ece146104335780637d1db4a51461045c5780638da5cb5b14610487576101cc565b8063313ce567116101645780636d8aa8f81161013e5780636d8aa8f81461039f5780636fc3eaec146103c857806370a08231146103df578063715018a61461041c576101cc565b8063313ce5671461032057806349bd5a5e1461034b5780636b99905314610376576101cc565b80631694505e116101a05780631694505e1461026257806318160ddd1461028d57806323b872dd146102b85780632fd689e3146102f5576101cc565b8062b8cf2a146101d157806306fdde03146101fa578063095ea7b314610225576101cc565b366101cc57005b600080fd5b3480156101dd57600080fd5b506101f860048036038101906101f39190612ddf565b6106cc565b005b34801561020657600080fd5b5061020f6107f6565b60405161021c91906131f6565b60405180910390f35b34801561023157600080fd5b5061024c60048036038101906102479190612d3f565b610833565b60405161025991906131c0565b60405180910390f35b34801561026e57600080fd5b50610277610851565b60405161028491906131db565b60405180910390f35b34801561029957600080fd5b506102a2610877565b6040516102af9190613398565b60405180910390f35b3480156102c457600080fd5b506102df60048036038101906102da9190612cec565b610886565b6040516102ec91906131c0565b60405180910390f35b34801561030157600080fd5b5061030a61095f565b6040516103179190613398565b60405180910390f35b34801561032c57600080fd5b50610335610965565b604051610342919061340d565b60405180910390f35b34801561035757600080fd5b5061036061096e565b60405161036d91906131a5565b60405180910390f35b34801561038257600080fd5b5061039d60048036038101906103989190612c52565b610994565b005b3480156103ab57600080fd5b506103c660048036038101906103c19190612e28565b610a84565b005b3480156103d457600080fd5b506103dd610aa1565b005b3480156103eb57600080fd5b5061040660048036038101906104019190612c52565b610b72565b6040516104139190613398565b60405180910390f35b34801561042857600080fd5b50610431610b84565b005b34801561043f57600080fd5b5061045a60048036038101906104559190612e55565b610cd7565b005b34801561046857600080fd5b50610471610d76565b60405161047e9190613398565b60405180910390f35b34801561049357600080fd5b5061049c610d7c565b6040516104a991906131a5565b60405180910390f35b3480156104be57600080fd5b506104c7610da5565b6040516104d49190613398565b60405180910390f35b3480156104e957600080fd5b506104f2610dab565b6040516104ff91906131f6565b60405180910390f35b34801561051457600080fd5b5061052f600480360381019061052a9190612e55565b610de8565b005b34801561053d57600080fd5b5061055860048036038101906105539190612e82565b610e87565b005b34801561056657600080fd5b50610581600480360381019061057c9190612d3f565b610f3e565b60405161058e91906131c0565b60405180910390f35b3480156105a357600080fd5b506105be60048036038101906105b99190612c52565b610f5c565b6040516105cb91906131c0565b60405180910390f35b3480156105e057600080fd5b506105e9610f7c565b005b3480156105f757600080fd5b50610612600480360381019061060d9190612d7f565b611055565b005b34801561062057600080fd5b5061063b60048036038101906106369190612cac565b61118f565b6040516106489190613398565b60405180910390f35b34801561065d57600080fd5b5061067860048036038101906106739190612e55565b611216565b005b34801561068657600080fd5b506106a1600480360381019061069c9190612e55565b6112b5565b005b3480156106af57600080fd5b506106ca60048036038101906106c59190612c52565b61131e565b005b6106d46114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610761576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610758906132f8565b60405180910390fd5b60005b81518110156107f2576001601160008484815181106107865761078561378b565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555080806107ea906136e4565b915050610764565b5050565b60606040518060400160405280600781526020017f5465682041726b00000000000000000000000000000000000000000000000000815250905090565b60006108476108406114e0565b84846114e8565b6001905092915050565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000662386f26fc10000905090565b60006108938484846116b3565b6109548461089f6114e0565b61094f85604051806060016040528060288152602001613b9b60289139600460008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006109056114e0565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611f049092919063ffffffff16565b6114e8565b600190509392505050565b60195481565b60006009905090565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b61099c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610a29576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a20906132f8565b60405180910390fd5b6000601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050565b80601660156101000a81548160ff02191690831515021790555050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610ae26114e0565b73ffffffffffffffffffffffffffffffffffffffff161480610b585750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610b406114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b610b6157600080fd5b6000479050610b6f81611f68565b50565b6000610b7d82612063565b9050919050565b610b8c6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c19576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c10906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610cdf6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610d6c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d63906132f8565b60405180910390fd5b8060178190555050565b60175481565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60185481565b60606040518060400160405280600381526020017f41524b0000000000000000000000000000000000000000000000000000000000815250905090565b610df06114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610e7d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e74906132f8565b60405180910390fd5b8060198190555050565b610e8f6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f1c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f13906132f8565b60405180910390fd5b8360098190555082600b8190555081600a8190555080600c8190555050505050565b6000610f52610f4b6114e0565b84846116b3565b6001905092915050565b60116020528060005260406000206000915054906101000a900460ff1681565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16610fbd6114e0565b73ffffffffffffffffffffffffffffffffffffffff1614806110335750601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1661101b6114e0565b73ffffffffffffffffffffffffffffffffffffffff16145b61103c57600080fd5b600061104730610b72565b90506110528161212d565b50565b61105d6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146110ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110e1906132f8565b60405180910390fd5b60005b838390508110156111895781600560008686858181106111105761110f61378b565b5b90506020020160208101906111259190612c52565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055508080611181906136e4565b9150506110ed565b50505050565b6000600460008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b61121e6114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146112ab576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112a2906132f8565b60405180910390fd5b8060188190555050565b8060026000601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555050565b6113266114e0565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146113b3576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016113aa906132f8565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff161415611423576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161141a90613258565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611558576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154f90613378565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614156115c8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115bf90613278565b60405180910390fd5b80600460008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516116a69190613398565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415611723576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161171a90613338565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff161415611793576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161178a90613218565b60405180910390fd5b600081116117d6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016117cd90613318565b60405180910390fd5b6117de610d7c565b73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415801561184c575061181c610d7c565b73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b15611c0357601754811115806118ab5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b6118ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118e190613238565b60405180910390fd5b601160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1615801561198e5750601160008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b6119cd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016119c490613298565b60405180910390fd5b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614611a7a5760185481611a2f84610b72565b611a3991906134ce565b10611a79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611a7090613358565b60405180910390fd5b5b6000611a8530610b72565b9050600060195482101590506017548210611aa05760175491505b808015611aba5750601660149054906101000a900460ff16155b8015611b145750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff1614155b8015611b2c5750601660159054906101000a900460ff165b8015611b825750600560008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b8015611bd85750600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b15611c0057611be68261212d565b60004790506000811115611bfe57611bfd47611f68565b5b505b50505b600060019050600560008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff1680611caa5750600560008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b80611d5d5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614158015611d5c5750601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b5b15611d6b5760009050611ef2565b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff16148015611e165750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614155b15611e2e57600954600d81905550600a54600e819055505b601660009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16148015611ed95750601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1614155b15611ef157600b54600d81905550600c54600e819055505b5b611efe848484846123b5565b50505050565b6000838311158290611f4c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611f4391906131f6565b60405180910390fd5b5060008385611f5b91906135af565b9050809150509392505050565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc611fb86002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f19350505050158015611fe3573d6000803e3d6000fd5b50601460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc6120346002846123e290919063ffffffff16565b9081150290604051600060405180830381858888f1935050505015801561205f573d6000803e3d6000fd5b5050565b600080600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905060006120b261242c565b9050600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156121115761210e612457565b90505b612124818361248290919063ffffffff16565b92505050919050565b6001601660146101000a81548160ff0219169083151502179055506000600267ffffffffffffffff811115612165576121646137ba565b5b6040519080825280602002602001820160405280156121935781602001602082028036833780820191505090505b50905030816000815181106121ab576121aa61378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561224d57600080fd5b505afa158015612261573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122859190612c7f565b816001815181106122995761229861378b565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061230030601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16846114e8565b601560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478360008430426040518663ffffffff1660e01b81526004016123649594939291906133b3565b600060405180830381600087803b15801561237e57600080fd5b505af1158015612392573d6000803e3d6000fd5b50505050506000601660146101000a81548160ff02191690831515021790555050565b806123c3576123c26124fd565b5b6123ce848484612540565b806123dc576123db612757565b5b50505050565b600061242483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525061276b565b905092915050565b60008060006124396127ce565b9150915061245081826123e290919063ffffffff16565b9250505090565b60008060006124646127ce565b9150915061247b81836123e290919063ffffffff16565b9250505090565b60008083141561249557600090506124f7565b600082846124a39190613555565b90508284826124b29190613524565b146124f2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016124e9906132d8565b60405180910390fd5b809150505b92915050565b6000600d5414801561251157506000600e54145b1561251b5761253e565b600d54600f81905550600e546010819055506000600d819055506000600e819055505b565b600080600080600080612552876127e4565b95509550955095509550955061256789610b72565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506125fc86600260008c73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461284c90919063ffffffff16565b600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555061269185600260008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506126dd816128f4565b6126e784836129b1565b8773ffffffffffffffffffffffffffffffffffffffff168973ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040516127449190613398565b60405180910390a3505050505050505050565b600f54600d81905550601054600e81905550565b600080831182906127b2576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016127a991906131f6565b60405180910390fd5b50600083856127c19190613524565b9050809150509392505050565b600080600754662386f26fc10000915091509091565b60008060008060008060008060006128018a600d54600e546129eb565b925092509250600061281161242c565b905060008060006128248e878787612a81565b9250925092508282828989899c509c509c509c509c509c505050505050505091939550919395565b600061288e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611f04565b905092915050565b60008082846128a591906134ce565b9050838110156128ea576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016128e1906132b8565b60405180910390fd5b8091505092915050565b60006128fe61242c565b90506000612915828461248290919063ffffffff16565b905061296981600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205461289690919063ffffffff16565b600260003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550505050565b6129c68260075461284c90919063ffffffff16565b6007819055506129e18160085461289690919063ffffffff16565b6008819055505050565b600080600080612a176064612a09888a61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a416064612a33888b61248290919063ffffffff16565b6123e290919063ffffffff16565b90506000612a6a82612a5c858c61284c90919063ffffffff16565b61284c90919063ffffffff16565b905080838395509550955050505093509350939050565b600080600080612a9a858961248290919063ffffffff16565b90506000612ab1868961248290919063ffffffff16565b90506000612ac8878961248290919063ffffffff16565b90506000612af182612ae3858761284c90919063ffffffff16565b61284c90919063ffffffff16565b9050838184965096509650505050509450945094915050565b6000612b1d612b188461344d565b613428565b90508083825260208201905082856020860282011115612b4057612b3f6137f3565b5b60005b85811015612b705781612b568882612b7a565b845260208401935060208301925050600181019050612b43565b5050509392505050565b600081359050612b8981613b55565b92915050565b600081519050612b9e81613b55565b92915050565b60008083601f840112612bba57612bb96137ee565b5b8235905067ffffffffffffffff811115612bd757612bd66137e9565b5b602083019150836020820283011115612bf357612bf26137f3565b5b9250929050565b600082601f830112612c0f57612c0e6137ee565b5b8135612c1f848260208601612b0a565b91505092915050565b600081359050612c3781613b6c565b92915050565b600081359050612c4c81613b83565b92915050565b600060208284031215612c6857612c676137fd565b5b6000612c7684828501612b7a565b91505092915050565b600060208284031215612c9557612c946137fd565b5b6000612ca384828501612b8f565b91505092915050565b60008060408385031215612cc357612cc26137fd565b5b6000612cd185828601612b7a565b9250506020612ce285828601612b7a565b9150509250929050565b600080600060608486031215612d0557612d046137fd565b5b6000612d1386828701612b7a565b9350506020612d2486828701612b7a565b9250506040612d3586828701612c3d565b9150509250925092565b60008060408385031215612d5657612d556137fd565b5b6000612d6485828601612b7a565b9250506020612d7585828601612c3d565b9150509250929050565b600080600060408486031215612d9857612d976137fd565b5b600084013567ffffffffffffffff811115612db657612db56137f8565b5b612dc286828701612ba4565b93509350506020612dd586828701612c28565b9150509250925092565b600060208284031215612df557612df46137fd565b5b600082013567ffffffffffffffff811115612e1357612e126137f8565b5b612e1f84828501612bfa565b91505092915050565b600060208284031215612e3e57612e3d6137fd565b5b6000612e4c84828501612c28565b91505092915050565b600060208284031215612e6b57612e6a6137fd565b5b6000612e7984828501612c3d565b91505092915050565b60008060008060808587031215612e9c57612e9b6137fd565b5b6000612eaa87828801612c3d565b9450506020612ebb87828801612c3d565b9350506040612ecc87828801612c3d565b9250506060612edd87828801612c3d565b91505092959194509250565b6000612ef58383612f01565b60208301905092915050565b612f0a816135e3565b82525050565b612f19816135e3565b82525050565b6000612f2a82613489565b612f3481856134ac565b9350612f3f83613479565b8060005b83811015612f70578151612f578882612ee9565b9750612f628361349f565b925050600181019050612f43565b5085935050505092915050565b612f86816135f5565b82525050565b612f9581613638565b82525050565b612fa48161364a565b82525050565b6000612fb582613494565b612fbf81856134bd565b9350612fcf818560208601613680565b612fd881613802565b840191505092915050565b6000612ff06023836134bd565b9150612ffb82613813565b604082019050919050565b6000613013601c836134bd565b915061301e82613862565b602082019050919050565b60006130366026836134bd565b91506130418261388b565b604082019050919050565b60006130596022836134bd565b9150613064826138da565b604082019050919050565b600061307c6023836134bd565b915061308782613929565b604082019050919050565b600061309f601b836134bd565b91506130aa82613978565b602082019050919050565b60006130c26021836134bd565b91506130cd826139a1565b604082019050919050565b60006130e56020836134bd565b91506130f0826139f0565b602082019050919050565b60006131086029836134bd565b915061311382613a19565b604082019050919050565b600061312b6025836134bd565b915061313682613a68565b604082019050919050565b600061314e6023836134bd565b915061315982613ab7565b604082019050919050565b60006131716024836134bd565b915061317c82613b06565b604082019050919050565b61319081613621565b82525050565b61319f8161362b565b82525050565b60006020820190506131ba6000830184612f10565b92915050565b60006020820190506131d56000830184612f7d565b92915050565b60006020820190506131f06000830184612f8c565b92915050565b600060208201905081810360008301526132108184612faa565b905092915050565b6000602082019050818103600083015261323181612fe3565b9050919050565b6000602082019050818103600083015261325181613006565b9050919050565b6000602082019050818103600083015261327181613029565b9050919050565b600060208201905081810360008301526132918161304c565b9050919050565b600060208201905081810360008301526132b18161306f565b9050919050565b600060208201905081810360008301526132d181613092565b9050919050565b600060208201905081810360008301526132f1816130b5565b9050919050565b60006020820190508181036000830152613311816130d8565b9050919050565b60006020820190508181036000830152613331816130fb565b9050919050565b600060208201905081810360008301526133518161311e565b9050919050565b6000602082019050818103600083015261337181613141565b9050919050565b6000602082019050818103600083015261339181613164565b9050919050565b60006020820190506133ad6000830184613187565b92915050565b600060a0820190506133c86000830188613187565b6133d56020830187612f9b565b81810360408301526133e78186612f1f565b90506133f66060830185612f10565b6134036080830184613187565b9695505050505050565b60006020820190506134226000830184613196565b92915050565b6000613432613443565b905061343e82826136b3565b919050565b6000604051905090565b600067ffffffffffffffff821115613468576134676137ba565b5b602082029050602081019050919050565b6000819050602082019050919050565b600081519050919050565b600081519050919050565b6000602082019050919050565b600082825260208201905092915050565b600082825260208201905092915050565b60006134d982613621565b91506134e483613621565b9250827fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff038211156135195761351861372d565b5b828201905092915050565b600061352f82613621565b915061353a83613621565b92508261354a5761354961375c565b5b828204905092915050565b600061356082613621565b915061356b83613621565b9250817fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff04831182151516156135a4576135a361372d565b5b828202905092915050565b60006135ba82613621565b91506135c583613621565b9250828210156135d8576135d761372d565b5b828203905092915050565b60006135ee82613601565b9050919050565b60008115159050919050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000819050919050565b600060ff82169050919050565b60006136438261365c565b9050919050565b600061365582613621565b9050919050565b60006136678261366e565b9050919050565b600061367982613601565b9050919050565b60005b8381101561369e578082015181840152602081019050613683565b838111156136ad576000848401525b50505050565b6136bc82613802565b810181811067ffffffffffffffff821117156136db576136da6137ba565b5b80604052505050565b60006136ef82613621565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8214156137225761372161372d565b5b600182019050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b600080fd5b600080fd5b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000600082015250565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460008201527f6564210000000000000000000000000000000000000000000000000000000000602082015250565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b7f544f4b454e3a2042616c616e636520657863656564732077616c6c657420736960008201527f7a65210000000000000000000000000000000000000000000000000000000000602082015250565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b613b5e816135e3565b8114613b6957600080fd5b50565b613b75816135f5565b8114613b8057600080fd5b50565b613b8c81613621565b8114613b9757600080fd5b5056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220b16352dd920237a00b08ac7d1bebf2df4dc800855cb060fd5de2a07d4ffcad1364736f6c63430008070033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b4210000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421
-----Decoded View---------------
Arg [0] : marketingAddress (address): 0x7f8278Ea9107738ee95Ba884C561922CecD6B421
Arg [1] : devAddress (address): 0x7f8278Ea9107738ee95Ba884C561922CecD6B421
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421
Arg [1] : 0000000000000000000000007f8278ea9107738ee95ba884c561922cecd6b421
Deployed Bytecode Sourcemap
5397:15032:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15557:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;9648:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10536:181;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7261:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9925:95;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;10725:446;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7534:51;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9834:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7309:28;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15734:92;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19825:91;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15314:235;;;;;;;;;;;;;:::i;:::-;;10028:129;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2920:148;;;;;;;;;;;;;:::i;:::-;;19953:108;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;7420:44;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2706:79;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7476:46;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;9739:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19634:139;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19289:293;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10165:187;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6965:36;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15070:236;;;;;;;;;;;;;:::i;:::-;;20192:234;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;10360:168;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;20069:115;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;19058:104;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3076:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15557:169;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15633:9:::1;15628:91;15652:5;:12;15648:1;:16;15628:91;;;15703:4;15686;:14;15691:5;15697:1;15691:8;;;;;;;;:::i;:::-;;;;;;;;15686:14;;;;;;;;;;;;;;;;:21;;;;;;;;;;;;;;;;;;15666:3;;;;;:::i;:::-;;;;15628:91;;;;15557:169:::0;:::o;9648:83::-;9685:13;9718:5;;;;;;;;;;;;;;;;;9711:12;;9648:83;:::o;10536:181::-;10626:4;10648:39;10657:12;:10;:12::i;:::-;10671:7;10680:6;10648:8;:39::i;:::-;10705:4;10698:11;;10536:181;;;;:::o;7261:41::-;;;;;;;;;;;;;:::o;9925:95::-;9978:7;6157:16;9998:14;;9925:95;:::o;10725:446::-;10857:4;10874:36;10884:6;10892:9;10903:6;10874:9;:36::i;:::-;10921:220;10944:6;10965:12;:10;:12::i;:::-;10992:138;11048:6;10992:138;;;;;;;;;;;;;;;;;:11;:19;11004:6;10992:19;;;;;;;;;;;;;;;:33;11012:12;:10;:12::i;:::-;10992:33;;;;;;;;;;;;;;;;:37;;:138;;;;;:::i;:::-;10921:8;:220::i;:::-;11159:4;11152:11;;10725:446;;;;;:::o;7534:51::-;;;;:::o;9834:83::-;9875:5;5771:1;9893:16;;9834:83;:::o;7309:28::-;;;;;;;;;;;;;:::o;15734:92::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;15813:5:::1;15798:4;:12;15803:6;15798:12;;;;;;;;;;;;;;;;:20;;;;;;;;;;;;;;;;;;15734:92:::0;:::o;19825:91::-;19896:12;19882:11;;:26;;;;;;;;;;;;;;;;;;19825:91;:::o;15314:235::-;15380:19;;;;;;;;;;;15364:35;;:12;:10;:12::i;:::-;:35;;;:72;;;;15419:17;;;;;;;;;;;15403:33;;:12;:10;:12::i;:::-;:33;;;15364:72;15356:81;;;;;;15448:26;15477:21;15448:50;;15509:32;15522:18;15509:12;:32::i;:::-;15345:204;15314:235::o;10028:129::-;10094:7;10121:28;10141:7;10121:19;:28::i;:::-;10114:35;;10028:129;;;:::o;2920:148::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3027:1:::1;2990:40;;3011:6;::::0;::::1;;;;;;;;2990:40;;;;;;;;;;;;3058:1;3041:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;2920:148::o:0;19953:108::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20042:11:::1;20027:12;:26;;;;19953:108:::0;:::o;7420:44::-;;;;:::o;2706:79::-;2744:7;2771:6;;;;;;;;;;;2764:13;;2706:79;:::o;7476:46::-;;;;:::o;9739:87::-;9778:13;9811:7;;;;;;;;;;;;;;;;;9804:14;;9739:87;:::o;19634:139::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19747:18:::1;19725:19;:40;;;;19634:139:::0;:::o;19289:293::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19440:13:::1;19423:14;:30;;;;19482:14;19464:15;:32;;;;19524:11;19509:12;:26;;;;19562:12;19546:13;:28;;;;19289:293:::0;;;;:::o;10165:187::-;10258:4;10280:42;10290:12;:10;:12::i;:::-;10304:9;10315:6;10280:9;:42::i;:::-;10340:4;10333:11;;10165:187;;;;:::o;6965:36::-;;;;;;;;;;;;;;;;;;;;;;:::o;15070:236::-;15136:19;;;;;;;;;;;15120:35;;:12;:10;:12::i;:::-;:35;;;:72;;;;15175:17;;;;;;;;;;;15159:33;;:12;:10;:12::i;:::-;:33;;;15120:72;15112:81;;;;;;15204:23;15230:24;15248:4;15230:9;:24::i;:::-;15204:50;;15265:33;15282:15;15265:16;:33::i;:::-;15101:205;15070:236::o;20192:234::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20309:9:::1;20305:114;20328:8;;:15;;20324:1;:19;20305:114;;;20399:8;20365:18;:31;20384:8;;20393:1;20384:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;;:::i;:::-;20365:31;;;;;;;;;;;;;;;;:42;;;;;;;;;;;;;;;;;;20345:3;;;;;:::i;:::-;;;;20305:114;;;;20192:234:::0;;;:::o;10360:168::-;10461:7;10493:11;:18;10505:5;10493:18;;;;;;;;;;;;;;;:27;10512:7;10493:27;;;;;;;;;;;;;;;;10486:34;;10360:168;;;;:::o;20069:115::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;20163:13:::1;20146:14;:30;;;;20069:115:::0;:::o;19058:104::-;19148:6;19119:7;:26;19127:17;;;;;;;;;;;19119:26;;;;;;;;;;;;;;;:35;;;;19058:104;:::o;3076:244::-;2843:12;:10;:12::i;:::-;2833:22;;:6;;;;;;;;;;:22;;;2825:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;3185:1:::1;3165:22;;:8;:22;;;;3157:73;;;;;;;;;;;;:::i;:::-;;;;;;;;;3275:8;3246:38;;3267:6;::::0;::::1;;;;;;;;3246:38;;;;;;;;;;;;3304:8;3295:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;3076:244:::0;:::o;1465:98::-;1518:7;1545:10;1538:17;;1465:98;:::o;11869:369::-;12013:1;11996:19;;:5;:19;;;;11988:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12094:1;12075:21;;:7;:21;;;;12067:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12176:6;12146:11;:18;12158:5;12146:18;;;;;;;;;;;;;;;:27;12165:7;12146:27;;;;;;;;;;;;;;;:36;;;;12214:7;12198:32;;12207:5;12198:32;;;12223:6;12198:32;;;;;;:::i;:::-;;;;;;;;11869:369;;;:::o;12246:2157::-;12384:1;12368:18;;:4;:18;;;;12360:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;12461:1;12447:16;;:2;:16;;;;12439:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12531:1;12522:6;:10;12514:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;12603:7;:5;:7::i;:::-;12595:15;;:4;:15;;;;:32;;;;;12620:7;:5;:7::i;:::-;12614:13;;:2;:13;;;;12595:32;12591:1088;;;12662:12;;12652:6;:22;;:50;;;;12678:18;:24;12697:4;12678:24;;;;;;;;;;;;;;;;;;;;;;;;;12652:50;12644:91;;;;;;;;;;;;:::i;:::-;;;;;;;;;12759:4;:10;12764:4;12759:10;;;;;;;;;;;;;;;;;;;;;;;;;12758:11;:24;;;;;12774:4;:8;12779:2;12774:8;;;;;;;;;;;;;;;;;;;;;;;;;12773:9;12758:24;12750:72;;;;;;;;;;;;:::i;:::-;;;;;;;;;12846:13;;;;;;;;;;;12840:19;;:2;:19;;;12837:146;;12913:14;;12904:6;12888:13;12898:2;12888:9;:13::i;:::-;:22;;;;:::i;:::-;:39;12880:87;;;;;;;;;;;;:::i;:::-;;;;;;;;;12837:146;12997:28;13028:24;13046:4;13028:9;:24::i;:::-;12997:55;;13067:12;13106:19;;13082:20;:43;;13067:58;;13169:12;;13145:20;:36;13142:124;;13238:12;;13215:35;;13142:124;13286:7;:18;;;;;13298:6;;;;;;;;;;;13297:7;13286:18;:43;;;;;13316:13;;;;;;;;;;;13308:21;;:4;:21;;;;13286:43;:58;;;;;13333:11;;;;;;;;;;;13286:58;:87;;;;;13349:18;:24;13368:4;13349:24;;;;;;;;;;;;;;;;;;;;;;;;;13348:25;13286:87;:114;;;;;13378:18;:22;13397:2;13378:22;;;;;;;;;;;;;;;;;;;;;;;;;13377:23;13286:114;13282:386;;;13421:38;13438:20;13421:16;:38::i;:::-;13478:26;13507:21;13478:50;;13572:1;13551:18;:22;13547:106;;;13598:35;13611:21;13598:12;:35::i;:::-;13547:106;13402:266;13282:386;12629:1050;;12591:1088;13691:12;13706:4;13691:19;;13755:18;:24;13774:4;13755:24;;;;;;;;;;;;;;;;;;;;;;;;;:50;;;;13783:18;:22;13802:2;13783:22;;;;;;;;;;;;;;;;;;;;;;;;;13755:50;13754:102;;;;13819:13;;;;;;;;;;;13811:21;;:4;:21;;;;:44;;;;;13842:13;;;;;;;;;;;13836:19;;:2;:19;;;;13811:44;13754:102;13750:594;;;13883:5;13873:15;;13750:594;;;13966:13;;;;;;;;;;;13958:21;;:4;:21;;;:55;;;;;13997:15;;;;;;;;;;;13983:30;;:2;:30;;;;13958:55;13955:162;;;14046:14;;14034:9;:26;;;;14089:12;;14079:7;:22;;;;13955:162;14176:13;;;;;;;;;;;14170:19;;:2;:19;;;:55;;;;;14209:15;;;;;;;;;;;14193:32;;:4;:32;;;;14170:55;14166:165;;;14258:15;;14246:9;:27;;;;14302:13;;14292:7;:23;;;;14166:165;13750:594;14354:41;14369:4;14375:2;14379:6;14387:7;14354:14;:41::i;:::-;12349:2054;12246:2157;;;:::o;3684:224::-;3804:7;3837:1;3832;:6;;3840:12;3824:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;3864:9;3880:1;3876;:5;;;;:::i;:::-;3864:17;;3899:1;3892:8;;;3684:224;;;;;:::o;14902:160::-;14959:19;;;;;;;;;;;:28;;:43;14988:13;14999:1;14988:6;:10;;:13;;;;:::i;:::-;14959:43;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15013:17;;;;;;;;;;;:26;;:41;15040:13;15051:1;15040:6;:10;;:13;;;;:::i;:::-;15013:41;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14902:160;:::o;11179:330::-;11262:7;11287:15;11305:7;:16;11313:7;11305:16;;;;;;;;;;;;;;;;11287:34;;11332:19;11354:10;:8;:10::i;:::-;11332:32;;11379:20;:29;11400:7;11379:29;;;;;;;;;;;;;;;;;;;;;;;;;11375:85;;;11439:9;:7;:9::i;:::-;11425:23;;11375:85;11477:24;11489:11;11477:7;:11;;:24;;;;:::i;:::-;11470:31;;;;11179:330;;;:::o;14411:483::-;7693:4;7684:6;;:13;;;;;;;;;;;;;;;;;;14489:21:::1;14527:1;14513:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14489:40;;14558:4;14540;14545:1;14540:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;::::0;::::1;14584:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14574:4;14579:1;14574:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;::::0;::::1;14617:62;14634:4;14649:15;;;;;;;;;;;14667:11;14617:8;:62::i;:::-;14690:15;;;;;;;;;;;:66;;;14771:11;14797:1;14813:4;14840;14860:15;14690:196;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;14478:416;7729:5:::0;7720:6;;:14;;;;;;;;;;;;;;;;;;14411:483;:::o;15834:282::-;15990:7;15985:28;;15999:14;:12;:14::i;:::-;15985:28;16024:44;16042:6;16050:9;16061:6;16024:17;:44::i;:::-;16084:7;16079:29;;16093:15;:13;:15::i;:::-;16079:29;15834:282;;;;:::o;4170:132::-;4228:7;4255:39;4259:1;4262;4255:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;4248:46;;4170:132;;;;:::o;18719:164::-;18761:7;18782:15;18799;18818:19;:17;:19::i;:::-;18781:56;;;;18855:20;18867:7;18855;:11;;:20;;;;:::i;:::-;18848:27;;;;18719:164;:::o;18889:163::-;18930:7;18951:15;18968;18987:19;:17;:19::i;:::-;18950:56;;;;19024:20;19036:7;19024;:11;;:20;;;;:::i;:::-;19017:27;;;;18889:163;:::o;3916:246::-;3974:7;4003:1;3998;:6;3994:47;;;4028:1;4021:8;;;;3994:47;4051:9;4067:1;4063;:5;;;;:::i;:::-;4051:17;;4096:1;4091;4087;:5;;;;:::i;:::-;:10;4079:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;4153:1;4146:8;;;3916:246;;;;;:::o;11517:219::-;11577:1;11564:9;;:14;:30;;;;;11593:1;11582:7;;:12;11564:30;11560:43;;;11596:7;;11560:43;11635:9;;11615:17;:29;;;;11673:7;;11655:15;:25;;;;11705:1;11693:9;:13;;;;11727:1;11717:7;:11;;;;11517:219;:::o;16124:632::-;16267:15;16293:23;16327:12;16350:23;16384:12;16407:13;16434:19;16445:7;16434:10;:19::i;:::-;16256:197;;;;;;;;;;;;16482:17;16492:6;16482:9;:17::i;:::-;16464:7;:15;16472:6;16464:15;;;;;;;;;;;;;;;:35;;;;16528:28;16548:7;16528;:15;16536:6;16528:15;;;;;;;;;;;;;;;;:19;;:28;;;;:::i;:::-;16510:7;:15;16518:6;16510:15;;;;;;;;;;;;;;;:46;;;;16588:39;16611:15;16588:7;:18;16596:9;16588:18;;;;;;;;;;;;;;;;:22;;:39;;;;:::i;:::-;16567:7;:18;16575:9;16567:18;;;;;;;;;;;;;;;:60;;;;16638:16;16648:5;16638:9;:16::i;:::-;16665:23;16677:4;16683;16665:11;:23::i;:::-;16721:9;16704:44;;16713:6;16704:44;;;16732:15;16704:44;;;;;;:::i;:::-;;;;;;;;16245:511;;;;;;16124:632;;;:::o;11744:117::-;11800:17;;11788:9;:29;;;;11838:15;;11828:7;:25;;;;11744:117::o;4310:223::-;4430:7;4462:1;4458;:5;4465:12;4450:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;4489:9;4505:1;4501;:5;;;;:::i;:::-;4489:17;;4524:1;4517:8;;;4310:223;;;;;:::o;19168:113::-;19219:7;19228;19256;;6157:16;19248:25;;;;19168:113;;:::o;17175:569::-;17259:7;17277;17295;17313;17331;17349;17381:23;17406:12;17420:13;17446:40;17458:7;17467:9;;17478:7;;17446:11;:40::i;:::-;17380:106;;;;;;17497:19;17519:10;:8;:10::i;:::-;17497:32;;17541:15;17558:23;17583:12;17608:46;17620:7;17629:4;17635:5;17642:11;17608;:46::i;:::-;17540:114;;;;;;17675:7;17684:15;17701:4;17707:15;17724:4;17730:5;17667:69;;;;;;;;;;;;;;;;;;;17175:569;;;;;;;:::o;3540:136::-;3598:7;3625:43;3629:1;3632;3625:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;3618:50;;3540:136;;;;:::o;3353:179::-;3411:7;3431:9;3447:1;3443;:5;;;;:::i;:::-;3431:17;;3472:1;3467;:6;;3459:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;3523:1;3516:8;;;3353:179;;;;:::o;16764:211::-;16817:19;16839:10;:8;:10::i;:::-;16817:32;;16860:13;16876:22;16886:11;16876:5;:9;;:22;;;;:::i;:::-;16860:38;;16934:33;16961:5;16934:7;:22;16950:4;16934:22;;;;;;;;;;;;;;;;:26;;:33;;;;:::i;:::-;16909:7;:22;16925:4;16909:22;;;;;;;;;;;;;;;:58;;;;16806:169;;16764:211;:::o;16983:147::-;17061:17;17073:4;17061:7;;:11;;:17;;;;:::i;:::-;17051:7;:27;;;;17102:20;17117:4;17102:10;;:14;;:20;;;;:::i;:::-;17089:10;:33;;;;16983:147;;:::o;17752:443::-;17905:7;17923;17941;17972:12;17987:30;18013:3;17987:21;17999:8;17987:7;:11;;:21;;;;:::i;:::-;:25;;:30;;;;:::i;:::-;17972:45;;18028:13;18044:28;18068:3;18044:19;18056:6;18044:7;:11;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;18028:44;;18083:23;18109:28;18131:5;18109:17;18121:4;18109:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;18083:54;;18158:15;18175:4;18181:5;18150:37;;;;;;;;;17752:443;;;;;;;:::o;18203:508::-;18381:7;18399;18417;18448:15;18466:24;18478:11;18466:7;:11;;:24;;;;:::i;:::-;18448:42;;18501:12;18516:21;18525:11;18516:4;:8;;:21;;;;:::i;:::-;18501:36;;18548:13;18564:22;18574:11;18564:5;:9;;:22;;;;:::i;:::-;18548:38;;18597:23;18623:28;18645:5;18623:17;18635:4;18623:7;:11;;:17;;;;:::i;:::-;:21;;:28;;;;:::i;:::-;18597:54;;18672:7;18681:15;18698:4;18664:39;;;;;;;;;;18203:508;;;;;;;;:::o;24:722:1:-;120:5;145:81;161:64;218:6;161:64;:::i;:::-;145:81;:::i;:::-;136:90;;246:5;275:6;268:5;261:21;309:4;302:5;298:16;291:23;;335:6;385:3;377:4;369:6;365:17;360:3;356:27;353:36;350:143;;;404:79;;:::i;:::-;350:143;517:1;502:238;527:6;524:1;521:13;502:238;;;595:3;624:37;657:3;645:10;624:37;:::i;:::-;619:3;612:50;691:4;686:3;682:14;675:21;;725:4;720:3;716:14;709:21;;562:178;549:1;546;542:9;537:14;;502:238;;;506:14;126:620;;24:722;;;;;:::o;752:139::-;798:5;836:6;823:20;814:29;;852:33;879:5;852:33;:::i;:::-;752:139;;;;:::o;897:143::-;954:5;985:6;979:13;970:22;;1001:33;1028:5;1001:33;:::i;:::-;897:143;;;;:::o;1063:568::-;1136:8;1146:6;1196:3;1189:4;1181:6;1177:17;1173:27;1163:122;;1204:79;;:::i;:::-;1163:122;1317:6;1304:20;1294:30;;1347:18;1339:6;1336:30;1333:117;;;1369:79;;:::i;:::-;1333:117;1483:4;1475:6;1471:17;1459:29;;1537:3;1529:4;1521:6;1517:17;1507:8;1503:32;1500:41;1497:128;;;1544:79;;:::i;:::-;1497:128;1063:568;;;;;:::o;1654:370::-;1725:5;1774:3;1767:4;1759:6;1755:17;1751:27;1741:122;;1782:79;;:::i;:::-;1741:122;1899:6;1886:20;1924:94;2014:3;2006:6;1999:4;1991:6;1987:17;1924:94;:::i;:::-;1915:103;;1731:293;1654:370;;;;:::o;2030:133::-;2073:5;2111:6;2098:20;2089:29;;2127:30;2151:5;2127:30;:::i;:::-;2030:133;;;;:::o;2169:139::-;2215:5;2253:6;2240:20;2231:29;;2269:33;2296:5;2269:33;:::i;:::-;2169:139;;;;:::o;2314:329::-;2373:6;2422:2;2410:9;2401:7;2397:23;2393:32;2390:119;;;2428:79;;:::i;:::-;2390:119;2548:1;2573:53;2618:7;2609:6;2598:9;2594:22;2573:53;:::i;:::-;2563:63;;2519:117;2314:329;;;;:::o;2649:351::-;2719:6;2768:2;2756:9;2747:7;2743:23;2739:32;2736:119;;;2774:79;;:::i;:::-;2736:119;2894:1;2919:64;2975:7;2966:6;2955:9;2951:22;2919:64;:::i;:::-;2909:74;;2865:128;2649:351;;;;:::o;3006:474::-;3074:6;3082;3131:2;3119:9;3110:7;3106:23;3102:32;3099:119;;;3137:79;;:::i;:::-;3099:119;3257:1;3282:53;3327:7;3318:6;3307:9;3303:22;3282:53;:::i;:::-;3272:63;;3228:117;3384:2;3410:53;3455:7;3446:6;3435:9;3431:22;3410:53;:::i;:::-;3400:63;;3355:118;3006:474;;;;;:::o;3486:619::-;3563:6;3571;3579;3628:2;3616:9;3607:7;3603:23;3599:32;3596:119;;;3634:79;;:::i;:::-;3596:119;3754:1;3779:53;3824:7;3815:6;3804:9;3800:22;3779:53;:::i;:::-;3769:63;;3725:117;3881:2;3907:53;3952:7;3943:6;3932:9;3928:22;3907:53;:::i;:::-;3897:63;;3852:118;4009:2;4035:53;4080:7;4071:6;4060:9;4056:22;4035:53;:::i;:::-;4025:63;;3980:118;3486:619;;;;;:::o;4111:474::-;4179:6;4187;4236:2;4224:9;4215:7;4211:23;4207:32;4204:119;;;4242:79;;:::i;:::-;4204:119;4362:1;4387:53;4432:7;4423:6;4412:9;4408:22;4387:53;:::i;:::-;4377:63;;4333:117;4489:2;4515:53;4560:7;4551:6;4540:9;4536:22;4515:53;:::i;:::-;4505:63;;4460:118;4111:474;;;;;:::o;4591:698::-;4683:6;4691;4699;4748:2;4736:9;4727:7;4723:23;4719:32;4716:119;;;4754:79;;:::i;:::-;4716:119;4902:1;4891:9;4887:17;4874:31;4932:18;4924:6;4921:30;4918:117;;;4954:79;;:::i;:::-;4918:117;5067:80;5139:7;5130:6;5119:9;5115:22;5067:80;:::i;:::-;5049:98;;;;4845:312;5196:2;5222:50;5264:7;5255:6;5244:9;5240:22;5222:50;:::i;:::-;5212:60;;5167:115;4591:698;;;;;:::o;5295:539::-;5379:6;5428:2;5416:9;5407:7;5403:23;5399:32;5396:119;;;5434:79;;:::i;:::-;5396:119;5582:1;5571:9;5567:17;5554:31;5612:18;5604:6;5601:30;5598:117;;;5634:79;;:::i;:::-;5598:117;5739:78;5809:7;5800:6;5789:9;5785:22;5739:78;:::i;:::-;5729:88;;5525:302;5295:539;;;;:::o;5840:323::-;5896:6;5945:2;5933:9;5924:7;5920:23;5916:32;5913:119;;;5951:79;;:::i;:::-;5913:119;6071:1;6096:50;6138:7;6129:6;6118:9;6114:22;6096:50;:::i;:::-;6086:60;;6042:114;5840:323;;;;:::o;6169:329::-;6228:6;6277:2;6265:9;6256:7;6252:23;6248:32;6245:119;;;6283:79;;:::i;:::-;6245:119;6403:1;6428:53;6473:7;6464:6;6453:9;6449:22;6428:53;:::i;:::-;6418:63;;6374:117;6169:329;;;;:::o;6504:765::-;6590:6;6598;6606;6614;6663:3;6651:9;6642:7;6638:23;6634:33;6631:120;;;6670:79;;:::i;:::-;6631:120;6790:1;6815:53;6860:7;6851:6;6840:9;6836:22;6815:53;:::i;:::-;6805:63;;6761:117;6917:2;6943:53;6988:7;6979:6;6968:9;6964:22;6943:53;:::i;:::-;6933:63;;6888:118;7045:2;7071:53;7116:7;7107:6;7096:9;7092:22;7071:53;:::i;:::-;7061:63;;7016:118;7173:2;7199:53;7244:7;7235:6;7224:9;7220:22;7199:53;:::i;:::-;7189:63;;7144:118;6504:765;;;;;;;:::o;7275:179::-;7344:10;7365:46;7407:3;7399:6;7365:46;:::i;:::-;7443:4;7438:3;7434:14;7420:28;;7275:179;;;;:::o;7460:108::-;7537:24;7555:5;7537:24;:::i;:::-;7532:3;7525:37;7460:108;;:::o;7574:118::-;7661:24;7679:5;7661:24;:::i;:::-;7656:3;7649:37;7574:118;;:::o;7728:732::-;7847:3;7876:54;7924:5;7876:54;:::i;:::-;7946:86;8025:6;8020:3;7946:86;:::i;:::-;7939:93;;8056:56;8106:5;8056:56;:::i;:::-;8135:7;8166:1;8151:284;8176:6;8173:1;8170:13;8151:284;;;8252:6;8246:13;8279:63;8338:3;8323:13;8279:63;:::i;:::-;8272:70;;8365:60;8418:6;8365:60;:::i;:::-;8355:70;;8211:224;8198:1;8195;8191:9;8186:14;;8151:284;;;8155:14;8451:3;8444:10;;7852:608;;;7728:732;;;;:::o;8466:109::-;8547:21;8562:5;8547:21;:::i;:::-;8542:3;8535:34;8466:109;;:::o;8581:183::-;8694:63;8751:5;8694:63;:::i;:::-;8689:3;8682:76;8581:183;;:::o;8770:147::-;8865:45;8904:5;8865:45;:::i;:::-;8860:3;8853:58;8770:147;;:::o;8923:364::-;9011:3;9039:39;9072:5;9039:39;:::i;:::-;9094:71;9158:6;9153:3;9094:71;:::i;:::-;9087:78;;9174:52;9219:6;9214:3;9207:4;9200:5;9196:16;9174:52;:::i;:::-;9251:29;9273:6;9251:29;:::i;:::-;9246:3;9242:39;9235:46;;9015:272;8923:364;;;;:::o;9293:366::-;9435:3;9456:67;9520:2;9515:3;9456:67;:::i;:::-;9449:74;;9532:93;9621:3;9532:93;:::i;:::-;9650:2;9645:3;9641:12;9634:19;;9293:366;;;:::o;9665:::-;9807:3;9828:67;9892:2;9887:3;9828:67;:::i;:::-;9821:74;;9904:93;9993:3;9904:93;:::i;:::-;10022:2;10017:3;10013:12;10006:19;;9665:366;;;:::o;10037:::-;10179:3;10200:67;10264:2;10259:3;10200:67;:::i;:::-;10193:74;;10276:93;10365:3;10276:93;:::i;:::-;10394:2;10389:3;10385:12;10378:19;;10037:366;;;:::o;10409:::-;10551:3;10572:67;10636:2;10631:3;10572:67;:::i;:::-;10565:74;;10648:93;10737:3;10648:93;:::i;:::-;10766:2;10761:3;10757:12;10750:19;;10409:366;;;:::o;10781:::-;10923:3;10944:67;11008:2;11003:3;10944:67;:::i;:::-;10937:74;;11020:93;11109:3;11020:93;:::i;:::-;11138:2;11133:3;11129:12;11122:19;;10781:366;;;:::o;11153:::-;11295:3;11316:67;11380:2;11375:3;11316:67;:::i;:::-;11309:74;;11392:93;11481:3;11392:93;:::i;:::-;11510:2;11505:3;11501:12;11494:19;;11153:366;;;:::o;11525:::-;11667:3;11688:67;11752:2;11747:3;11688:67;:::i;:::-;11681:74;;11764:93;11853:3;11764:93;:::i;:::-;11882:2;11877:3;11873:12;11866:19;;11525:366;;;:::o;11897:::-;12039:3;12060:67;12124:2;12119:3;12060:67;:::i;:::-;12053:74;;12136:93;12225:3;12136:93;:::i;:::-;12254:2;12249:3;12245:12;12238:19;;11897:366;;;:::o;12269:::-;12411:3;12432:67;12496:2;12491:3;12432:67;:::i;:::-;12425:74;;12508:93;12597:3;12508:93;:::i;:::-;12626:2;12621:3;12617:12;12610:19;;12269:366;;;:::o;12641:::-;12783:3;12804:67;12868:2;12863:3;12804:67;:::i;:::-;12797:74;;12880:93;12969:3;12880:93;:::i;:::-;12998:2;12993:3;12989:12;12982:19;;12641:366;;;:::o;13013:::-;13155:3;13176:67;13240:2;13235:3;13176:67;:::i;:::-;13169:74;;13252:93;13341:3;13252:93;:::i;:::-;13370:2;13365:3;13361:12;13354:19;;13013:366;;;:::o;13385:::-;13527:3;13548:67;13612:2;13607:3;13548:67;:::i;:::-;13541:74;;13624:93;13713:3;13624:93;:::i;:::-;13742:2;13737:3;13733:12;13726:19;;13385:366;;;:::o;13757:118::-;13844:24;13862:5;13844:24;:::i;:::-;13839:3;13832:37;13757:118;;:::o;13881:112::-;13964:22;13980:5;13964:22;:::i;:::-;13959:3;13952:35;13881:112;;:::o;13999:222::-;14092:4;14130:2;14119:9;14115:18;14107:26;;14143:71;14211:1;14200:9;14196:17;14187:6;14143:71;:::i;:::-;13999:222;;;;:::o;14227:210::-;14314:4;14352:2;14341:9;14337:18;14329:26;;14365:65;14427:1;14416:9;14412:17;14403:6;14365:65;:::i;:::-;14227:210;;;;:::o;14443:274::-;14562:4;14600:2;14589:9;14585:18;14577:26;;14613:97;14707:1;14696:9;14692:17;14683:6;14613:97;:::i;:::-;14443:274;;;;:::o;14723:313::-;14836:4;14874:2;14863:9;14859:18;14851:26;;14923:9;14917:4;14913:20;14909:1;14898:9;14894:17;14887:47;14951:78;15024:4;15015:6;14951:78;:::i;:::-;14943:86;;14723:313;;;;:::o;15042:419::-;15208:4;15246:2;15235:9;15231:18;15223:26;;15295:9;15289:4;15285:20;15281:1;15270:9;15266:17;15259:47;15323:131;15449:4;15323:131;:::i;:::-;15315:139;;15042:419;;;:::o;15467:::-;15633:4;15671:2;15660:9;15656:18;15648:26;;15720:9;15714:4;15710:20;15706:1;15695:9;15691:17;15684:47;15748:131;15874:4;15748:131;:::i;:::-;15740:139;;15467:419;;;:::o;15892:::-;16058:4;16096:2;16085:9;16081:18;16073:26;;16145:9;16139:4;16135:20;16131:1;16120:9;16116:17;16109:47;16173:131;16299:4;16173:131;:::i;:::-;16165:139;;15892:419;;;:::o;16317:::-;16483:4;16521:2;16510:9;16506:18;16498:26;;16570:9;16564:4;16560:20;16556:1;16545:9;16541:17;16534:47;16598:131;16724:4;16598:131;:::i;:::-;16590:139;;16317:419;;;:::o;16742:::-;16908:4;16946:2;16935:9;16931:18;16923:26;;16995:9;16989:4;16985:20;16981:1;16970:9;16966:17;16959:47;17023:131;17149:4;17023:131;:::i;:::-;17015:139;;16742:419;;;:::o;17167:::-;17333:4;17371:2;17360:9;17356:18;17348:26;;17420:9;17414:4;17410:20;17406:1;17395:9;17391:17;17384:47;17448:131;17574:4;17448:131;:::i;:::-;17440:139;;17167:419;;;:::o;17592:::-;17758:4;17796:2;17785:9;17781:18;17773:26;;17845:9;17839:4;17835:20;17831:1;17820:9;17816:17;17809:47;17873:131;17999:4;17873:131;:::i;:::-;17865:139;;17592:419;;;:::o;18017:::-;18183:4;18221:2;18210:9;18206:18;18198:26;;18270:9;18264:4;18260:20;18256:1;18245:9;18241:17;18234:47;18298:131;18424:4;18298:131;:::i;:::-;18290:139;;18017:419;;;:::o;18442:::-;18608:4;18646:2;18635:9;18631:18;18623:26;;18695:9;18689:4;18685:20;18681:1;18670:9;18666:17;18659:47;18723:131;18849:4;18723:131;:::i;:::-;18715:139;;18442:419;;;:::o;18867:::-;19033:4;19071:2;19060:9;19056:18;19048:26;;19120:9;19114:4;19110:20;19106:1;19095:9;19091:17;19084:47;19148:131;19274:4;19148:131;:::i;:::-;19140:139;;18867:419;;;:::o;19292:::-;19458:4;19496:2;19485:9;19481:18;19473:26;;19545:9;19539:4;19535:20;19531:1;19520:9;19516:17;19509:47;19573:131;19699:4;19573:131;:::i;:::-;19565:139;;19292:419;;;:::o;19717:::-;19883:4;19921:2;19910:9;19906:18;19898:26;;19970:9;19964:4;19960:20;19956:1;19945:9;19941:17;19934:47;19998:131;20124:4;19998:131;:::i;:::-;19990:139;;19717:419;;;:::o;20142:222::-;20235:4;20273:2;20262:9;20258:18;20250:26;;20286:71;20354:1;20343:9;20339:17;20330:6;20286:71;:::i;:::-;20142:222;;;;:::o;20370:831::-;20633:4;20671:3;20660:9;20656:19;20648:27;;20685:71;20753:1;20742:9;20738:17;20729:6;20685:71;:::i;:::-;20766:80;20842:2;20831:9;20827:18;20818:6;20766:80;:::i;:::-;20893:9;20887:4;20883:20;20878:2;20867:9;20863:18;20856:48;20921:108;21024:4;21015:6;20921:108;:::i;:::-;20913:116;;21039:72;21107:2;21096:9;21092:18;21083:6;21039:72;:::i;:::-;21121:73;21189:3;21178:9;21174:19;21165:6;21121:73;:::i;:::-;20370:831;;;;;;;;:::o;21207:214::-;21296:4;21334:2;21323:9;21319:18;21311:26;;21347:67;21411:1;21400:9;21396:17;21387:6;21347:67;:::i;:::-;21207:214;;;;:::o;21427:129::-;21461:6;21488:20;;:::i;:::-;21478:30;;21517:33;21545:4;21537:6;21517:33;:::i;:::-;21427:129;;;:::o;21562:75::-;21595:6;21628:2;21622:9;21612:19;;21562:75;:::o;21643:311::-;21720:4;21810:18;21802:6;21799:30;21796:56;;;21832:18;;:::i;:::-;21796:56;21882:4;21874:6;21870:17;21862:25;;21942:4;21936;21932:15;21924:23;;21643:311;;;:::o;21960:132::-;22027:4;22050:3;22042:11;;22080:4;22075:3;22071:14;22063:22;;21960:132;;;:::o;22098:114::-;22165:6;22199:5;22193:12;22183:22;;22098:114;;;:::o;22218:99::-;22270:6;22304:5;22298:12;22288:22;;22218:99;;;:::o;22323:113::-;22393:4;22425;22420:3;22416:14;22408:22;;22323:113;;;:::o;22442:184::-;22541:11;22575:6;22570:3;22563:19;22615:4;22610:3;22606:14;22591:29;;22442:184;;;;:::o;22632:169::-;22716:11;22750:6;22745:3;22738:19;22790:4;22785:3;22781:14;22766:29;;22632:169;;;;:::o;22807:305::-;22847:3;22866:20;22884:1;22866:20;:::i;:::-;22861:25;;22900:20;22918:1;22900:20;:::i;:::-;22895:25;;23054:1;22986:66;22982:74;22979:1;22976:81;22973:107;;;23060:18;;:::i;:::-;22973:107;23104:1;23101;23097:9;23090:16;;22807:305;;;;:::o;23118:185::-;23158:1;23175:20;23193:1;23175:20;:::i;:::-;23170:25;;23209:20;23227:1;23209:20;:::i;:::-;23204:25;;23248:1;23238:35;;23253:18;;:::i;:::-;23238:35;23295:1;23292;23288:9;23283:14;;23118:185;;;;:::o;23309:348::-;23349:7;23372:20;23390:1;23372:20;:::i;:::-;23367:25;;23406:20;23424:1;23406:20;:::i;:::-;23401:25;;23594:1;23526:66;23522:74;23519:1;23516:81;23511:1;23504:9;23497:17;23493:105;23490:131;;;23601:18;;:::i;:::-;23490:131;23649:1;23646;23642:9;23631:20;;23309:348;;;;:::o;23663:191::-;23703:4;23723:20;23741:1;23723:20;:::i;:::-;23718:25;;23757:20;23775:1;23757:20;:::i;:::-;23752:25;;23796:1;23793;23790:8;23787:34;;;23801:18;;:::i;:::-;23787:34;23846:1;23843;23839:9;23831:17;;23663:191;;;;:::o;23860:96::-;23897:7;23926:24;23944:5;23926:24;:::i;:::-;23915:35;;23860:96;;;:::o;23962:90::-;23996:7;24039:5;24032:13;24025:21;24014:32;;23962:90;;;:::o;24058:126::-;24095:7;24135:42;24128:5;24124:54;24113:65;;24058:126;;;:::o;24190:77::-;24227:7;24256:5;24245:16;;24190:77;;;:::o;24273:86::-;24308:7;24348:4;24341:5;24337:16;24326:27;;24273:86;;;:::o;24365:152::-;24441:9;24474:37;24505:5;24474:37;:::i;:::-;24461:50;;24365:152;;;:::o;24523:121::-;24581:9;24614:24;24632:5;24614:24;:::i;:::-;24601:37;;24523:121;;;:::o;24650:126::-;24700:9;24733:37;24764:5;24733:37;:::i;:::-;24720:50;;24650:126;;;:::o;24782:113::-;24832:9;24865:24;24883:5;24865:24;:::i;:::-;24852:37;;24782:113;;;:::o;24901:307::-;24969:1;24979:113;24993:6;24990:1;24987:13;24979:113;;;25078:1;25073:3;25069:11;25063:18;25059:1;25054:3;25050:11;25043:39;25015:2;25012:1;25008:10;25003:15;;24979:113;;;25110:6;25107:1;25104:13;25101:101;;;25190:1;25181:6;25176:3;25172:16;25165:27;25101:101;24950:258;24901:307;;;:::o;25214:281::-;25297:27;25319:4;25297:27;:::i;:::-;25289:6;25285:40;25427:6;25415:10;25412:22;25391:18;25379:10;25376:34;25373:62;25370:88;;;25438:18;;:::i;:::-;25370:88;25478:10;25474:2;25467:22;25257:238;25214:281;;:::o;25501:233::-;25540:3;25563:24;25581:5;25563:24;:::i;:::-;25554:33;;25609:66;25602:5;25599:77;25596:103;;;25679:18;;:::i;:::-;25596:103;25726:1;25719:5;25715:13;25708:20;;25501:233;;;:::o;25740:180::-;25788:77;25785:1;25778:88;25885:4;25882:1;25875:15;25909:4;25906:1;25899:15;25926:180;25974:77;25971:1;25964:88;26071:4;26068:1;26061:15;26095:4;26092:1;26085:15;26112:180;26160:77;26157:1;26150:88;26257:4;26254:1;26247:15;26281:4;26278:1;26271:15;26298:180;26346:77;26343:1;26336:88;26443:4;26440:1;26433:15;26467:4;26464:1;26457:15;26484:117;26593:1;26590;26583:12;26607:117;26716:1;26713;26706:12;26730:117;26839:1;26836;26829:12;26853:117;26962:1;26959;26952:12;26976:117;27085:1;27082;27075:12;27099:102;27140:6;27191:2;27187:7;27182:2;27175:5;27171:14;27167:28;27157:38;;27099:102;;;:::o;27207:222::-;27347:34;27343:1;27335:6;27331:14;27324:58;27416:5;27411:2;27403:6;27399:15;27392:30;27207:222;:::o;27435:178::-;27575:30;27571:1;27563:6;27559:14;27552:54;27435:178;:::o;27619:225::-;27759:34;27755:1;27747:6;27743:14;27736:58;27828:8;27823:2;27815:6;27811:15;27804:33;27619:225;:::o;27850:221::-;27990:34;27986:1;27978:6;27974:14;27967:58;28059:4;28054:2;28046:6;28042:15;28035:29;27850:221;:::o;28077:222::-;28217:34;28213:1;28205:6;28201:14;28194:58;28286:5;28281:2;28273:6;28269:15;28262:30;28077:222;:::o;28305:177::-;28445:29;28441:1;28433:6;28429:14;28422:53;28305:177;:::o;28488:220::-;28628:34;28624:1;28616:6;28612:14;28605:58;28697:3;28692:2;28684:6;28680:15;28673:28;28488:220;:::o;28714:182::-;28854:34;28850:1;28842:6;28838:14;28831:58;28714:182;:::o;28902:228::-;29042:34;29038:1;29030:6;29026:14;29019:58;29111:11;29106:2;29098:6;29094:15;29087:36;28902:228;:::o;29136:224::-;29276:34;29272:1;29264:6;29260:14;29253:58;29345:7;29340:2;29332:6;29328:15;29321:32;29136:224;:::o;29366:222::-;29506:34;29502:1;29494:6;29490:14;29483:58;29575:5;29570:2;29562:6;29558:15;29551:30;29366:222;:::o;29594:223::-;29734:34;29730:1;29722:6;29718:14;29711:58;29803:6;29798:2;29790:6;29786:15;29779:31;29594:223;:::o;29823:122::-;29896:24;29914:5;29896:24;:::i;:::-;29889:5;29886:35;29876:63;;29935:1;29932;29925:12;29876:63;29823:122;:::o;29951:116::-;30021:21;30036:5;30021:21;:::i;:::-;30014:5;30011:32;30001:60;;30057:1;30054;30047:12;30001:60;29951:116;:::o;30073:122::-;30146:24;30164:5;30146:24;:::i;:::-;30139:5;30136:35;30126:63;;30185:1;30182;30175:12;30126:63;30073:122;:::o
Swarm Source
ipfs://b16352dd920237a00b08ac7d1bebf2df4dc800855cb060fd5de2a07d4ffcad13
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.