Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
4,000,000,000,000 J3P8
Holders
17
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
61,840,850,120.2932423 J3P8Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
J3P8
Compiler Version
v0.8.16+commit.07a7930e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-12-14 */ /** // J3P8 - Step Into the Unknown // Telegram - https://t.me/J3P8_Unknown // Twitter - https://twitter.com/J3P8_Unknown // And so, it began. */ pragma solidity ^0.8.16; // SPDX-License-Identifier: Unlicensed 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 J3P8 is Context, IERC20, Ownable { using SafeMath for uint256; string private constant _name = "Step Into the Uknown"; string private constant _symbol = "J3P8"; 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; uint256 private constant MAX = ~uint256(0); uint256 private constant _tTotal = 4000000000000 * 10**_decimals; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _redisFeeOnBuy = 0; uint256 private _taxFeeOnBuy = 10; uint256 private _redisFeeOnSell = 0; uint256 private _taxFeeOnSell = 10; //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) public _buyMap; mapping (address => bool) public preTrader; address private developmentAddress; address private marketingAddress; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = true; uint256 public _maxTxAmount = 80000000000 * 10**_decimals; uint256 public _maxWalletSize = 80000000000 * 10**_decimals; uint256 public _swapTokensAtAmount = 100000000 * 10**_decimals; struct Distribution { uint256 development; uint256 marketing; } Distribution public distribution; event MaxTxAmountUpdated(uint256 _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor(address developmentAddr, address marketingAddr) { developmentAddress = developmentAddr; marketingAddress = marketingAddr; _rOwned[_msgSender()] = _rTotal; IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);// uniswapV2Router = _uniswapV2Router; uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[marketingAddress] = true; _isExcludedFromFee[developmentAddress] = true; distribution = Distribution(37, 38); 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(_rOwned[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(uint256 rAmount) private view returns (uint256) { require( rAmount <= _rTotal, "Amount must be less than total reflections" ); uint256 currentRate = _getRate(); return rAmount.div(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() && !preTrader[from] && !preTrader[to]) { //Trade start check if (!tradingOpen) { require(preTrader[from], "TOKEN: This account cannot send tokens until trading is enabled"); } require(amount <= _maxTxAmount, "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 lockTheSwap { uint256 distributionEth = amount; uint256 marketingShare = distributionEth.mul(distribution.marketing).div(100); uint256 developmentShare = distributionEth.mul(distribution.development).div(100); payable(marketingAddress).transfer(marketingShare); payable(developmentAddress).transfer(developmentShare); } function setTrading(bool _tradingOpen) public onlyOwner { tradingOpen = _tradingOpen; } 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] = _rOwned[sender].sub(rAmount); _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount); _takeTeam(tTeam); _reflectFee(rFee, tFee); emit Transfer(sender, recipient, tTransferAmount); } function setDistribution(uint256 development, uint256 marketing) external onlyOwner { distribution.development = development; distribution.marketing = marketing; } 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 rSupply.div(tSupply); } function _getCurrentSupply() private view returns (uint256, uint256) { uint256 rSupply = _rTotal; uint256 tSupply = _tTotal; if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal); return (rSupply, tSupply); } 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 onlyOwner { swapEnabled = _swapEnabled; } //Set maximum 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; } } function allowPreTrading(address[] calldata accounts) public onlyOwner { for(uint256 i = 0; i < accounts.length; i++) { preTrader[accounts[i]] = true; } } function removePreTrading(address[] calldata accounts) public onlyOwner { for(uint256 i = 0; i < accounts.length; i++) { delete preTrader[accounts[i]]; } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"address","name":"developmentAddr","type":"address"},{"internalType":"address","name":"marketingAddr","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":"address","name":"","type":"address"}],"name":"_buyMap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_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":"accounts","type":"address[]"}],"name":"allowPreTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"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":[],"name":"distribution","outputs":[{"internalType":"uint256","name":"development","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"}],"stateMutability":"view","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":[{"internalType":"address","name":"","type":"address"}],"name":"preTrader","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"}],"name":"removePreTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"development","type":"uint256"},{"internalType":"uint256","name":"marketing","type":"uint256"}],"name":"setDistribution","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":[{"internalType":"bool","name":"_tradingOpen","type":"bool"}],"name":"setTrading","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
6080604052620000126009600a62000529565b62000024906503a35294400062000541565b620000329060001962000563565b620000409060001962000586565b60065560006008819055600a6009818155828255600b829055600c839055600d829055600e92909255600f8190556016805461ffff60a81b1916600160b01b1790556200008e919062000529565b6200009f906412a05f200062000541565b601755620000b06009600a62000529565b620000c1906412a05f200062000541565b601855620000d26009600a62000529565b620000e2906305f5e10062000541565b601955348015620000f257600080fd5b5060405162002948380380620029488339810160408190526200011591620005b9565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601380546001600160a01b038085166001600160a01b031992831617909255601480549284169290911691909117905560065460026000620001953390565b6001600160a01b03168152602080820192909252604090810160002092909255601580546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155825163c45a015560e01b815292519092839263c45a0155926004808401938290030181865afa15801562000216573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023c9190620005f1565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200028a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002b09190620005f1565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002fe573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003249190620005f1565b601680546001600160a01b0319166001600160a01b039283161790556000805482168152600560209081526040808320805460ff1990811660019081179092553085528285208054821683179055601454861685528285208054821683179055601354909516845281842080549095161790935582518084019093526025808452602693909101839052601a55601b9190915533907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003e86009600a62000529565b620003fa906503a35294400062000541565b60405190815260200160405180910390a35050506200060f565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200046b5781600019048211156200044f576200044f62000414565b808516156200045d57918102915b93841c93908002906200042f565b509250929050565b600082620004845750600162000523565b81620004935750600062000523565b8160018114620004ac5760028114620004b757620004d7565b600191505062000523565b60ff841115620004cb57620004cb62000414565b50506001821b62000523565b5060208310610133831016604e8410600b8410161715620004fc575081810a62000523565b6200050883836200042a565b80600019048211156200051f576200051f62000414565b0290505b92915050565b60006200053a60ff84168362000473565b9392505050565b60008160001904831182151516156200055e576200055e62000414565b500290565b6000826200058157634e487b7160e01b600052601260045260246000fd5b500690565b8181038181111562000523576200052362000414565b80516001600160a01b0381168114620005b457600080fd5b919050565b60008060408385031215620005cd57600080fd5b620005d8836200059c565b9150620005e8602084016200059c565b90509250929050565b6000602082840312156200060457600080fd5b6200053a826200059c565b612329806200061f6000396000f3fe6080604052600436106102075760003560e01c80637d1db4a511610118578063b5a65223116100a0578063c492f0461161006f578063c492f04614610634578063dd62ed3e14610654578063ea1644d51461069a578063f18dba26146106ba578063f2fde38b146106da57600080fd5b8063b5a652231461059f578063bdd795ef146105bf578063bfd79284146105ef578063c3c8cd801461061f57600080fd5b80638f9a55c0116100e75780638f9a55c0146104fc57806395d89b411461051257806398a5c3151461053f578063a2a957bb1461055f578063a9059cbb1461057f57600080fd5b80637d1db4a51461047b5780637f2feddc146104915780638da5cb5b146104be5780638f70ccf7146104dc57600080fd5b806349bd5a5e1161019b5780636d8aa8f81161016a5780636d8aa8f8146103f15780636fc3eaec1461041157806370a0823114610426578063715018a61461044657806374010ece1461045b57600080fd5b806349bd5a5e146103615780635ee58efc1461038157806367aadb7e146103b15780636b999053146103d157600080fd5b806318160ddd116101d757806318160ddd146102ec57806323b872dd1461030f5780632fd689e31461032f578063313ce5671461034557600080fd5b8062b8cf2a1461021357806306fdde0314610235578063095ea7b3146102845780631694505e146102b457600080fd5b3661020e57005b600080fd5b34801561021f57600080fd5b5061023361022e366004611d19565b6106fa565b005b34801561024157600080fd5b5060408051808201909152601481527329ba32b81024b73a37903a3432902ab5b737bbb760611b60208201525b60405161027b9190611dde565b60405180910390f35b34801561029057600080fd5b506102a461029f366004611e2c565b610799565b604051901515815260200161027b565b3480156102c057600080fd5b506015546102d4906001600160a01b031681565b6040516001600160a01b03909116815260200161027b565b3480156102f857600080fd5b506103016107b0565b60405190815260200161027b565b34801561031b57600080fd5b506102a461032a366004611e58565b6107d3565b34801561033b57600080fd5b5061030160195481565b34801561035157600080fd5b506040516009815260200161027b565b34801561036d57600080fd5b506016546102d4906001600160a01b031681565b34801561038d57600080fd5b50601a54601b5461039c919082565b6040805192835260208301919091520161027b565b3480156103bd57600080fd5b506102336103cc366004611ee5565b61083c565b3480156103dd57600080fd5b506102336103ec366004611f27565b6108d4565b3480156103fd57600080fd5b5061023361040c366004611f54565b61091f565b34801561041d57600080fd5b50610233610967565b34801561043257600080fd5b50610301610441366004611f27565b6109b2565b34801561045257600080fd5b506102336109d4565b34801561046757600080fd5b50610233610476366004611f6f565b610a48565b34801561048757600080fd5b5061030160175481565b34801561049d57600080fd5b506103016104ac366004611f27565b60116020526000908152604090205481565b3480156104ca57600080fd5b506000546001600160a01b03166102d4565b3480156104e857600080fd5b506102336104f7366004611f54565b610a77565b34801561050857600080fd5b5061030160185481565b34801561051e57600080fd5b5060408051808201909152600481526309466a0760e31b602082015261026e565b34801561054b57600080fd5b5061023361055a366004611f6f565b610abf565b34801561056b57600080fd5b5061023361057a366004611f88565b610aee565b34801561058b57600080fd5b506102a461059a366004611e2c565b610b2c565b3480156105ab57600080fd5b506102336105ba366004611ee5565b610b39565b3480156105cb57600080fd5b506102a46105da366004611f27565b60126020526000908152604090205460ff1681565b3480156105fb57600080fd5b506102a461060a366004611f27565b60106020526000908152604090205460ff1681565b34801561062b57600080fd5b50610233610bd5565b34801561064057600080fd5b5061023361064f366004611fba565b610c29565b34801561066057600080fd5b5061030161066f36600461200e565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156106a657600080fd5b506102336106b5366004611f6f565b610cca565b3480156106c657600080fd5b506102336106d5366004612047565b610cf9565b3480156106e657600080fd5b506102336106f5366004611f27565b610d2e565b6000546001600160a01b0316331461072d5760405162461bcd60e51b815260040161072490612069565b60405180910390fd5b60005b8151811015610795576001601060008484815181106107515761075161209e565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061078d816120ca565b915050610730565b5050565b60006107a6338484610e18565b5060015b92915050565b60006107be6009600a6121c7565b6107ce906503a3529440006121d6565b905090565b60006107e0848484610f3c565b610832843361082d856040518060600160405280602881526020016122cc602891396001600160a01b038a16600090815260046020908152604080832033845290915290205491906114cd565b610e18565b5060019392505050565b6000546001600160a01b031633146108665760405162461bcd60e51b815260040161072490612069565b60005b818110156108cf57601260008484848181106108875761088761209e565b905060200201602081019061089c9190611f27565b6001600160a01b031681526020810191909152604001600020805460ff19169055806108c7816120ca565b915050610869565b505050565b6000546001600160a01b031633146108fe5760405162461bcd60e51b815260040161072490612069565b6001600160a01b03166000908152601060205260409020805460ff19169055565b6000546001600160a01b031633146109495760405162461bcd60e51b815260040161072490612069565b60168054911515600160b01b0260ff60b01b19909216919091179055565b6013546001600160a01b0316336001600160a01b0316148061099c57506014546001600160a01b0316336001600160a01b0316145b6109a557600080fd5b476109af81611507565b50565b6001600160a01b0381166000908152600260205260408120546107aa906115e5565b6000546001600160a01b031633146109fe5760405162461bcd60e51b815260040161072490612069565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610a725760405162461bcd60e51b815260040161072490612069565b601755565b6000546001600160a01b03163314610aa15760405162461bcd60e51b815260040161072490612069565b60168054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b03163314610ae95760405162461bcd60e51b815260040161072490612069565b601955565b6000546001600160a01b03163314610b185760405162461bcd60e51b815260040161072490612069565b600893909355600a91909155600955600b55565b60006107a6338484610f3c565b6000546001600160a01b03163314610b635760405162461bcd60e51b815260040161072490612069565b60005b818110156108cf57600160126000858585818110610b8657610b8661209e565b9050602002016020810190610b9b9190611f27565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610bcd816120ca565b915050610b66565b6013546001600160a01b0316336001600160a01b03161480610c0a57506014546001600160a01b0316336001600160a01b0316145b610c1357600080fd5b6000610c1e306109b2565b90506109af81611669565b6000546001600160a01b03163314610c535760405162461bcd60e51b815260040161072490612069565b60005b82811015610cc4578160056000868685818110610c7557610c7561209e565b9050602002016020810190610c8a9190611f27565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610cbc816120ca565b915050610c56565b50505050565b6000546001600160a01b03163314610cf45760405162461bcd60e51b815260040161072490612069565b601855565b6000546001600160a01b03163314610d235760405162461bcd60e51b815260040161072490612069565b601a91909155601b55565b6000546001600160a01b03163314610d585760405162461bcd60e51b815260040161072490612069565b6001600160a01b038116610dbd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610724565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e7a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610724565b6001600160a01b038216610edb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610724565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610fa05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610724565b6001600160a01b0382166110025760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610724565b600081116110645760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610724565b6000546001600160a01b0384811691161480159061109057506000546001600160a01b03838116911614155b80156110b557506001600160a01b03831660009081526012602052604090205460ff16155b80156110da57506001600160a01b03821660009081526012602052604090205460ff16155b156113c657601654600160a01b900460ff1661117e576001600160a01b03831660009081526012602052604090205460ff1661117e5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c6564006064820152608401610724565b6017548111156111d05760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d6974000000006044820152606401610724565b6001600160a01b03831660009081526010602052604090205460ff1615801561121257506001600160a01b03821660009081526010602052604090205460ff16155b61126a5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460448201526265642160e81b6064820152608401610724565b6016546001600160a01b038381169116146112ef576018548161128c846109b2565b61129691906121f5565b106112ef5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b6064820152608401610724565b60006112fa306109b2565b6019546017549192508210159082106113135760175491505b80801561132a5750601654600160a81b900460ff16155b801561134457506016546001600160a01b03868116911614155b80156113595750601654600160b01b900460ff165b801561137e57506001600160a01b03851660009081526005602052604090205460ff16155b80156113a357506001600160a01b03841660009081526005602052604090205460ff16155b156113c3576113b182611669565b4780156113c1576113c147611507565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff168061140857506001600160a01b03831660009081526005602052604090205460ff165b8061143a57506016546001600160a01b0385811691161480159061143a57506016546001600160a01b03848116911614155b15611447575060006114c1565b6016546001600160a01b03858116911614801561147257506015546001600160a01b03848116911614155b1561148457600854600c55600954600d555b6016546001600160a01b0384811691161480156114af57506015546001600160a01b03858116911614155b156114c157600a54600c55600b54600d555b610cc4848484846117e3565b600081848411156114f15760405162461bcd60e51b81526004016107249190611dde565b5060006114fe8486612208565b95945050505050565b6016805460ff60a81b1916600160a81b179055601b54819060009061153a90606490611534908590611811565b90611893565b9050600061155b6064611534601a600001548661181190919063ffffffff16565b6014546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015611596573d6000803e3d6000fd5b506013546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156115d1573d6000803e3d6000fd5b50506016805460ff60a81b19169055505050565b600060065482111561164c5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610724565b60006116566118d5565b90506116628382611893565b9392505050565b6016805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106116b1576116b161209e565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561170a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061172e919061221b565b816001815181106117415761174161209e565b6001600160a01b0392831660209182029290920101526015546117679130911684610e18565b60155460405163791ac94760e01b81526001600160a01b039091169063791ac947906117a0908590600090869030904290600401612238565b600060405180830381600087803b1580156117ba57600080fd5b505af11580156117ce573d6000803e3d6000fd5b50506016805460ff60a81b1916905550505050565b806117f0576117f06118f8565b6117fb848484611926565b80610cc457610cc4600e54600c55600f54600d55565b600082600003611823575060006107aa565b600061182f83856121d6565b90508261183c85836122a9565b146116625760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610724565b600061166283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a1d565b60008060006118e2611a4b565b90925090506118f18282611893565b9250505090565b600c541580156119085750600d54155b1561190f57565b600c8054600e55600d8054600f5560009182905555565b60008060008060008061193887611ad3565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061196a9087611b30565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546119999086611b72565b6001600160a01b0389166000908152600260205260409020556119bb81611bd1565b6119c58483611c1b565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611a0a91815260200190565b60405180910390a3505050505050505050565b60008183611a3e5760405162461bcd60e51b81526004016107249190611dde565b5060006114fe84866122a9565b600654600090819081611a606009600a6121c7565b611a70906503a3529440006121d6565b9050611a9a611a816009600a6121c7565b611a91906503a3529440006121d6565b60065490611893565b821015611aca57600654611ab06009600a6121c7565b611ac0906503a3529440006121d6565b9350935050509091565b90939092509050565b6000806000806000806000806000611af08a600c54600d54611c3f565b9250925092506000611b006118d5565b90506000806000611b138e878787611c8e565b919e509c509a509598509396509194505050505091939550919395565b600061166283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114cd565b600080611b7f83856121f5565b9050838110156116625760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610724565b6000611bdb6118d5565b90506000611be98383611811565b30600090815260026020526040902054909150611c069082611b72565b30600090815260026020526040902055505050565b600654611c289083611b30565b600655600754611c389082611b72565b6007555050565b6000808080611c5360646115348989611811565b90506000611c6660646115348a89611811565b90506000611c7e82611c788b86611b30565b90611b30565b9992985090965090945050505050565b6000808080611c9d8886611811565b90506000611cab8887611811565b90506000611cb98888611811565b90506000611ccb82611c788686611b30565b939b939a50919850919650505050505050565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146109af57600080fd5b8035611d1481611cf4565b919050565b60006020808385031215611d2c57600080fd5b823567ffffffffffffffff80821115611d4457600080fd5b818501915085601f830112611d5857600080fd5b813581811115611d6a57611d6a611cde565b8060051b604051601f19603f83011681018181108582111715611d8f57611d8f611cde565b604052918252848201925083810185019188831115611dad57600080fd5b938501935b82851015611dd257611dc385611d09565b84529385019392850192611db2565b98975050505050505050565b600060208083528351808285015260005b81811015611e0b57858101830151858201604001528201611def565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215611e3f57600080fd5b8235611e4a81611cf4565b946020939093013593505050565b600080600060608486031215611e6d57600080fd5b8335611e7881611cf4565b92506020840135611e8881611cf4565b929592945050506040919091013590565b60008083601f840112611eab57600080fd5b50813567ffffffffffffffff811115611ec357600080fd5b6020830191508360208260051b8501011115611ede57600080fd5b9250929050565b60008060208385031215611ef857600080fd5b823567ffffffffffffffff811115611f0f57600080fd5b611f1b85828601611e99565b90969095509350505050565b600060208284031215611f3957600080fd5b813561166281611cf4565b80358015158114611d1457600080fd5b600060208284031215611f6657600080fd5b61166282611f44565b600060208284031215611f8157600080fd5b5035919050565b60008060008060808587031215611f9e57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060408486031215611fcf57600080fd5b833567ffffffffffffffff811115611fe657600080fd5b611ff286828701611e99565b9094509250612005905060208501611f44565b90509250925092565b6000806040838503121561202157600080fd5b823561202c81611cf4565b9150602083013561203c81611cf4565b809150509250929050565b6000806040838503121561205a57600080fd5b50508035926020909101359150565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120dc576120dc6120b4565b5060010190565b600181815b8085111561211e578160001904821115612104576121046120b4565b8085161561211157918102915b93841c93908002906120e8565b509250929050565b600082612135575060016107aa565b81612142575060006107aa565b816001811461215857600281146121625761217e565b60019150506107aa565b60ff841115612173576121736120b4565b50506001821b6107aa565b5060208310610133831016604e8410600b84101617156121a1575081810a6107aa565b6121ab83836120e3565b80600019048211156121bf576121bf6120b4565b029392505050565b600061166260ff841683612126565b60008160001904831182151516156121f0576121f06120b4565b500290565b808201808211156107aa576107aa6120b4565b818103818111156107aa576107aa6120b4565b60006020828403121561222d57600080fd5b815161166281611cf4565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122885784516001600160a01b031683529383019391830191600101612263565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826122c657634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220489177010c3fc59a3fec85241b80b9b946fb53d20feb9505c5387635661f270e64736f6c6343000810003300000000000000000000000074c0bfd16c3e3abea4fffdba4768427fcad38c3c000000000000000000000000f582faa90866828fe5fb298322e10651ebfd3428
Deployed Bytecode
0x6080604052600436106102075760003560e01c80637d1db4a511610118578063b5a65223116100a0578063c492f0461161006f578063c492f04614610634578063dd62ed3e14610654578063ea1644d51461069a578063f18dba26146106ba578063f2fde38b146106da57600080fd5b8063b5a652231461059f578063bdd795ef146105bf578063bfd79284146105ef578063c3c8cd801461061f57600080fd5b80638f9a55c0116100e75780638f9a55c0146104fc57806395d89b411461051257806398a5c3151461053f578063a2a957bb1461055f578063a9059cbb1461057f57600080fd5b80637d1db4a51461047b5780637f2feddc146104915780638da5cb5b146104be5780638f70ccf7146104dc57600080fd5b806349bd5a5e1161019b5780636d8aa8f81161016a5780636d8aa8f8146103f15780636fc3eaec1461041157806370a0823114610426578063715018a61461044657806374010ece1461045b57600080fd5b806349bd5a5e146103615780635ee58efc1461038157806367aadb7e146103b15780636b999053146103d157600080fd5b806318160ddd116101d757806318160ddd146102ec57806323b872dd1461030f5780632fd689e31461032f578063313ce5671461034557600080fd5b8062b8cf2a1461021357806306fdde0314610235578063095ea7b3146102845780631694505e146102b457600080fd5b3661020e57005b600080fd5b34801561021f57600080fd5b5061023361022e366004611d19565b6106fa565b005b34801561024157600080fd5b5060408051808201909152601481527329ba32b81024b73a37903a3432902ab5b737bbb760611b60208201525b60405161027b9190611dde565b60405180910390f35b34801561029057600080fd5b506102a461029f366004611e2c565b610799565b604051901515815260200161027b565b3480156102c057600080fd5b506015546102d4906001600160a01b031681565b6040516001600160a01b03909116815260200161027b565b3480156102f857600080fd5b506103016107b0565b60405190815260200161027b565b34801561031b57600080fd5b506102a461032a366004611e58565b6107d3565b34801561033b57600080fd5b5061030160195481565b34801561035157600080fd5b506040516009815260200161027b565b34801561036d57600080fd5b506016546102d4906001600160a01b031681565b34801561038d57600080fd5b50601a54601b5461039c919082565b6040805192835260208301919091520161027b565b3480156103bd57600080fd5b506102336103cc366004611ee5565b61083c565b3480156103dd57600080fd5b506102336103ec366004611f27565b6108d4565b3480156103fd57600080fd5b5061023361040c366004611f54565b61091f565b34801561041d57600080fd5b50610233610967565b34801561043257600080fd5b50610301610441366004611f27565b6109b2565b34801561045257600080fd5b506102336109d4565b34801561046757600080fd5b50610233610476366004611f6f565b610a48565b34801561048757600080fd5b5061030160175481565b34801561049d57600080fd5b506103016104ac366004611f27565b60116020526000908152604090205481565b3480156104ca57600080fd5b506000546001600160a01b03166102d4565b3480156104e857600080fd5b506102336104f7366004611f54565b610a77565b34801561050857600080fd5b5061030160185481565b34801561051e57600080fd5b5060408051808201909152600481526309466a0760e31b602082015261026e565b34801561054b57600080fd5b5061023361055a366004611f6f565b610abf565b34801561056b57600080fd5b5061023361057a366004611f88565b610aee565b34801561058b57600080fd5b506102a461059a366004611e2c565b610b2c565b3480156105ab57600080fd5b506102336105ba366004611ee5565b610b39565b3480156105cb57600080fd5b506102a46105da366004611f27565b60126020526000908152604090205460ff1681565b3480156105fb57600080fd5b506102a461060a366004611f27565b60106020526000908152604090205460ff1681565b34801561062b57600080fd5b50610233610bd5565b34801561064057600080fd5b5061023361064f366004611fba565b610c29565b34801561066057600080fd5b5061030161066f36600461200e565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156106a657600080fd5b506102336106b5366004611f6f565b610cca565b3480156106c657600080fd5b506102336106d5366004612047565b610cf9565b3480156106e657600080fd5b506102336106f5366004611f27565b610d2e565b6000546001600160a01b0316331461072d5760405162461bcd60e51b815260040161072490612069565b60405180910390fd5b60005b8151811015610795576001601060008484815181106107515761075161209e565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061078d816120ca565b915050610730565b5050565b60006107a6338484610e18565b5060015b92915050565b60006107be6009600a6121c7565b6107ce906503a3529440006121d6565b905090565b60006107e0848484610f3c565b610832843361082d856040518060600160405280602881526020016122cc602891396001600160a01b038a16600090815260046020908152604080832033845290915290205491906114cd565b610e18565b5060019392505050565b6000546001600160a01b031633146108665760405162461bcd60e51b815260040161072490612069565b60005b818110156108cf57601260008484848181106108875761088761209e565b905060200201602081019061089c9190611f27565b6001600160a01b031681526020810191909152604001600020805460ff19169055806108c7816120ca565b915050610869565b505050565b6000546001600160a01b031633146108fe5760405162461bcd60e51b815260040161072490612069565b6001600160a01b03166000908152601060205260409020805460ff19169055565b6000546001600160a01b031633146109495760405162461bcd60e51b815260040161072490612069565b60168054911515600160b01b0260ff60b01b19909216919091179055565b6013546001600160a01b0316336001600160a01b0316148061099c57506014546001600160a01b0316336001600160a01b0316145b6109a557600080fd5b476109af81611507565b50565b6001600160a01b0381166000908152600260205260408120546107aa906115e5565b6000546001600160a01b031633146109fe5760405162461bcd60e51b815260040161072490612069565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610a725760405162461bcd60e51b815260040161072490612069565b601755565b6000546001600160a01b03163314610aa15760405162461bcd60e51b815260040161072490612069565b60168054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b03163314610ae95760405162461bcd60e51b815260040161072490612069565b601955565b6000546001600160a01b03163314610b185760405162461bcd60e51b815260040161072490612069565b600893909355600a91909155600955600b55565b60006107a6338484610f3c565b6000546001600160a01b03163314610b635760405162461bcd60e51b815260040161072490612069565b60005b818110156108cf57600160126000858585818110610b8657610b8661209e565b9050602002016020810190610b9b9190611f27565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610bcd816120ca565b915050610b66565b6013546001600160a01b0316336001600160a01b03161480610c0a57506014546001600160a01b0316336001600160a01b0316145b610c1357600080fd5b6000610c1e306109b2565b90506109af81611669565b6000546001600160a01b03163314610c535760405162461bcd60e51b815260040161072490612069565b60005b82811015610cc4578160056000868685818110610c7557610c7561209e565b9050602002016020810190610c8a9190611f27565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610cbc816120ca565b915050610c56565b50505050565b6000546001600160a01b03163314610cf45760405162461bcd60e51b815260040161072490612069565b601855565b6000546001600160a01b03163314610d235760405162461bcd60e51b815260040161072490612069565b601a91909155601b55565b6000546001600160a01b03163314610d585760405162461bcd60e51b815260040161072490612069565b6001600160a01b038116610dbd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610724565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610e7a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610724565b6001600160a01b038216610edb5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610724565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610fa05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610724565b6001600160a01b0382166110025760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610724565b600081116110645760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610724565b6000546001600160a01b0384811691161480159061109057506000546001600160a01b03838116911614155b80156110b557506001600160a01b03831660009081526012602052604090205460ff16155b80156110da57506001600160a01b03821660009081526012602052604090205460ff16155b156113c657601654600160a01b900460ff1661117e576001600160a01b03831660009081526012602052604090205460ff1661117e5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c6564006064820152608401610724565b6017548111156111d05760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d6974000000006044820152606401610724565b6001600160a01b03831660009081526010602052604090205460ff1615801561121257506001600160a01b03821660009081526010602052604090205460ff16155b61126a5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460448201526265642160e81b6064820152608401610724565b6016546001600160a01b038381169116146112ef576018548161128c846109b2565b61129691906121f5565b106112ef5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b6064820152608401610724565b60006112fa306109b2565b6019546017549192508210159082106113135760175491505b80801561132a5750601654600160a81b900460ff16155b801561134457506016546001600160a01b03868116911614155b80156113595750601654600160b01b900460ff165b801561137e57506001600160a01b03851660009081526005602052604090205460ff16155b80156113a357506001600160a01b03841660009081526005602052604090205460ff16155b156113c3576113b182611669565b4780156113c1576113c147611507565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff168061140857506001600160a01b03831660009081526005602052604090205460ff165b8061143a57506016546001600160a01b0385811691161480159061143a57506016546001600160a01b03848116911614155b15611447575060006114c1565b6016546001600160a01b03858116911614801561147257506015546001600160a01b03848116911614155b1561148457600854600c55600954600d555b6016546001600160a01b0384811691161480156114af57506015546001600160a01b03858116911614155b156114c157600a54600c55600b54600d555b610cc4848484846117e3565b600081848411156114f15760405162461bcd60e51b81526004016107249190611dde565b5060006114fe8486612208565b95945050505050565b6016805460ff60a81b1916600160a81b179055601b54819060009061153a90606490611534908590611811565b90611893565b9050600061155b6064611534601a600001548661181190919063ffffffff16565b6014546040519192506001600160a01b03169083156108fc029084906000818181858888f19350505050158015611596573d6000803e3d6000fd5b506013546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156115d1573d6000803e3d6000fd5b50506016805460ff60a81b19169055505050565b600060065482111561164c5760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610724565b60006116566118d5565b90506116628382611893565b9392505050565b6016805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106116b1576116b161209e565b6001600160a01b03928316602091820292909201810191909152601554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561170a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061172e919061221b565b816001815181106117415761174161209e565b6001600160a01b0392831660209182029290920101526015546117679130911684610e18565b60155460405163791ac94760e01b81526001600160a01b039091169063791ac947906117a0908590600090869030904290600401612238565b600060405180830381600087803b1580156117ba57600080fd5b505af11580156117ce573d6000803e3d6000fd5b50506016805460ff60a81b1916905550505050565b806117f0576117f06118f8565b6117fb848484611926565b80610cc457610cc4600e54600c55600f54600d55565b600082600003611823575060006107aa565b600061182f83856121d6565b90508261183c85836122a9565b146116625760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610724565b600061166283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611a1d565b60008060006118e2611a4b565b90925090506118f18282611893565b9250505090565b600c541580156119085750600d54155b1561190f57565b600c8054600e55600d8054600f5560009182905555565b60008060008060008061193887611ad3565b6001600160a01b038f16600090815260026020526040902054959b5093995091975095509350915061196a9087611b30565b6001600160a01b03808b1660009081526002602052604080822093909355908a16815220546119999086611b72565b6001600160a01b0389166000908152600260205260409020556119bb81611bd1565b6119c58483611c1b565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611a0a91815260200190565b60405180910390a3505050505050505050565b60008183611a3e5760405162461bcd60e51b81526004016107249190611dde565b5060006114fe84866122a9565b600654600090819081611a606009600a6121c7565b611a70906503a3529440006121d6565b9050611a9a611a816009600a6121c7565b611a91906503a3529440006121d6565b60065490611893565b821015611aca57600654611ab06009600a6121c7565b611ac0906503a3529440006121d6565b9350935050509091565b90939092509050565b6000806000806000806000806000611af08a600c54600d54611c3f565b9250925092506000611b006118d5565b90506000806000611b138e878787611c8e565b919e509c509a509598509396509194505050505091939550919395565b600061166283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506114cd565b600080611b7f83856121f5565b9050838110156116625760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610724565b6000611bdb6118d5565b90506000611be98383611811565b30600090815260026020526040902054909150611c069082611b72565b30600090815260026020526040902055505050565b600654611c289083611b30565b600655600754611c389082611b72565b6007555050565b6000808080611c5360646115348989611811565b90506000611c6660646115348a89611811565b90506000611c7e82611c788b86611b30565b90611b30565b9992985090965090945050505050565b6000808080611c9d8886611811565b90506000611cab8887611811565b90506000611cb98888611811565b90506000611ccb82611c788686611b30565b939b939a50919850919650505050505050565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b03811681146109af57600080fd5b8035611d1481611cf4565b919050565b60006020808385031215611d2c57600080fd5b823567ffffffffffffffff80821115611d4457600080fd5b818501915085601f830112611d5857600080fd5b813581811115611d6a57611d6a611cde565b8060051b604051601f19603f83011681018181108582111715611d8f57611d8f611cde565b604052918252848201925083810185019188831115611dad57600080fd5b938501935b82851015611dd257611dc385611d09565b84529385019392850192611db2565b98975050505050505050565b600060208083528351808285015260005b81811015611e0b57858101830151858201604001528201611def565b506000604082860101526040601f19601f8301168501019250505092915050565b60008060408385031215611e3f57600080fd5b8235611e4a81611cf4565b946020939093013593505050565b600080600060608486031215611e6d57600080fd5b8335611e7881611cf4565b92506020840135611e8881611cf4565b929592945050506040919091013590565b60008083601f840112611eab57600080fd5b50813567ffffffffffffffff811115611ec357600080fd5b6020830191508360208260051b8501011115611ede57600080fd5b9250929050565b60008060208385031215611ef857600080fd5b823567ffffffffffffffff811115611f0f57600080fd5b611f1b85828601611e99565b90969095509350505050565b600060208284031215611f3957600080fd5b813561166281611cf4565b80358015158114611d1457600080fd5b600060208284031215611f6657600080fd5b61166282611f44565b600060208284031215611f8157600080fd5b5035919050565b60008060008060808587031215611f9e57600080fd5b5050823594602084013594506040840135936060013592509050565b600080600060408486031215611fcf57600080fd5b833567ffffffffffffffff811115611fe657600080fd5b611ff286828701611e99565b9094509250612005905060208501611f44565b90509250925092565b6000806040838503121561202157600080fd5b823561202c81611cf4565b9150602083013561203c81611cf4565b809150509250929050565b6000806040838503121561205a57600080fd5b50508035926020909101359150565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016120dc576120dc6120b4565b5060010190565b600181815b8085111561211e578160001904821115612104576121046120b4565b8085161561211157918102915b93841c93908002906120e8565b509250929050565b600082612135575060016107aa565b81612142575060006107aa565b816001811461215857600281146121625761217e565b60019150506107aa565b60ff841115612173576121736120b4565b50506001821b6107aa565b5060208310610133831016604e8410600b84101617156121a1575081810a6107aa565b6121ab83836120e3565b80600019048211156121bf576121bf6120b4565b029392505050565b600061166260ff841683612126565b60008160001904831182151516156121f0576121f06120b4565b500290565b808201808211156107aa576107aa6120b4565b818103818111156107aa576107aa6120b4565b60006020828403121561222d57600080fd5b815161166281611cf4565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156122885784516001600160a01b031683529383019391830191600101612263565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826122c657634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220489177010c3fc59a3fec85241b80b9b946fb53d20feb9505c5387635661f270e64736f6c63430008100033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
00000000000000000000000074c0bfd16c3e3abea4fffdba4768427fcad38c3c000000000000000000000000f582faa90866828fe5fb298322e10651ebfd3428
-----Decoded View---------------
Arg [0] : developmentAddr (address): 0x74C0BFD16c3E3abeA4fFFDbA4768427Fcad38C3c
Arg [1] : marketingAddr (address): 0xF582fAa90866828fe5FB298322e10651EbfD3428
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 00000000000000000000000074c0bfd16c3e3abea4fffdba4768427fcad38c3c
Arg [1] : 000000000000000000000000f582faa90866828fe5fb298322e10651ebfd3428
Deployed Bytecode Sourcemap
4225:14752:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13537:169;;;;;;;;;;-1:-1:-1;13537:169:0;;;;;:::i;:::-;;:::i;:::-;;7015:83;;;;;;;;;;-1:-1:-1;7085:5:0;;;;;;;;;;;;-1:-1:-1;;;7085:5:0;;;;7015:83;;;;;;;:::i;:::-;;;;;;;;7940:193;;;;;;;;;;-1:-1:-1;7940:193:0;;;;;:::i;:::-;;:::i;:::-;;;2585:14:1;;2578:22;2560:41;;2548:2;2533:18;7940:193:0;2420:187:1;5516:41:0;;;;;;;;;;-1:-1:-1;5516:41:0;;;;-1:-1:-1;;;;;5516:41:0;;;;;;-1:-1:-1;;;;;2802:32:1;;;2784:51;;2772:2;2757:18;5516:41:0;2612:229:1;7292:95:0;;;;;;;;;;;;;:::i;:::-;;;2992:25:1;;;2980:2;2965:18;7292:95:0;2846:177:1;8141:446:0;;;;;;;;;;-1:-1:-1;8141:446:0;;;;;:::i;:::-;;:::i;5836:62::-;;;;;;;;;;;;;;;;7201:83;;;;;;;;;;-1:-1:-1;7201:83:0;;4454:1;3631:36:1;;3619:2;3604:18;7201:83:0;3489:184:1;5564:28:0;;;;;;;;;;-1:-1:-1;5564:28:0;;;;-1:-1:-1;;;;;5564:28:0;;;6001:32;;;;;;;;;;-1:-1:-1;6001:32:0;;;;;;;;;;;;;4060:25:1;;;4116:2;4101:18;;4094:34;;;;4033:18;6001:32:0;3886:248:1;18778:196:0;;;;;;;;;;-1:-1:-1;18778:196:0;;;;;:::i;:::-;;:::i;13714:92::-;;;;;;;;;;-1:-1:-1;13714:92:0;;;;;:::i;:::-;;:::i;17954:101::-;;;;;;;;;;-1:-1:-1;17954:101:0;;;;;:::i;:::-;;:::i;13296:233::-;;;;;;;;;;;;;:::i;7395:138::-;;;;;;;;;;-1:-1:-1;7395:138:0;;;;;:::i;:::-;;:::i;1712:148::-;;;;;;;;;;;;;:::i;18094:108::-;;;;;;;;;;-1:-1:-1;18094:108:0;;;;;:::i;:::-;;:::i;5706:57::-;;;;;;;;;;;;;;;;5335:43;;;;;;;;;;-1:-1:-1;5335:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;1498:79;;;;;;;;;;-1:-1:-1;1536:7:0;1563:6;-1:-1:-1;;;;;1563:6:0;1498:79;;12945:101;;;;;;;;;;-1:-1:-1;12945:101:0;;;;;:::i;:::-;;:::i;5770:59::-;;;;;;;;;;;;;;;;7106:87;;;;;;;;;;-1:-1:-1;7178:7:0;;;;;;;;;;;;-1:-1:-1;;;7178:7:0;;;;7106:87;;17763:139;;;;;;;;;;-1:-1:-1;17763:139:0;;;;;:::i;:::-;;:::i;17420:291::-;;;;;;;;;;-1:-1:-1;17420:291:0;;;;;:::i;:::-;;:::i;7541:199::-;;;;;;;;;;-1:-1:-1;7541:199:0;;;;;:::i;:::-;;:::i;18575:195::-;;;;;;;;;;-1:-1:-1;18575:195:0;;;;;:::i;:::-;;:::i;5385:42::-;;;;;;;;;;-1:-1:-1;5385:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5291:36;;;;;;;;;;-1:-1:-1;5291:36:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;13054:234;;;;;;;;;;;;;:::i;18333:::-;;;;;;;;;;-1:-1:-1;18333:234:0;;;;;:::i;:::-;;:::i;7748:184::-;;;;;;;;;;-1:-1:-1;7748:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;7897:18:0;;;7865:7;7897:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7748:184;18210:115;;;;;;;;;;-1:-1:-1;18210:115:0;;;;;:::i;:::-;;:::i;14722:194::-;;;;;;;;;;-1:-1:-1;14722:194:0;;;;;:::i;:::-;;:::i;1868:244::-;;;;;;;;;;-1:-1:-1;1868:244:0;;;;;:::i;:::-;;:::i;13537:169::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;;;;;;;;;13613:9:::1;13608:91;13632:5;:12;13628:1;:16;13608:91;;;13683:4;13666;:14;13671:5;13677:1;13671:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;13666:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;13666:14:0;:21;;-1:-1:-1;;13666:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13646:3;::::1;::::0;::::1;:::i;:::-;;;;13608:91;;;;13537:169:::0;:::o;7940:193::-;8042:4;8064:39;337:10;8087:7;8096:6;8064:8;:39::i;:::-;-1:-1:-1;8121:4:0;7940:193;;;;;:::o;7292:95::-;7345:7;4796:13;4454:1;4796:2;:13;:::i;:::-;4780:29;;:13;:29;:::i;:::-;7365:14;;7292:95;:::o;8141:446::-;8273:4;8290:36;8300:6;8308:9;8319:6;8290:9;:36::i;:::-;8337:220;8360:6;337:10;8408:138;8464:6;8408:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8408:19:0;;;;;;:11;:19;;;;;;;;337:10;8408:33;;;;;;;;;;:37;:138::i;:::-;8337:8;:220::i;:::-;-1:-1:-1;8575:4:0;8141:446;;;;;:::o;18778:196::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;18865:9:::1;18861:106;18880:19:::0;;::::1;18861:106;;;18933:9;:22;18943:8;;18952:1;18943:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18933:22:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;18933:22:0;18926:29;;-1:-1:-1;;18926:29:0::1;::::0;;18901:3;::::1;::::0;::::1;:::i;:::-;;;;18861:106;;;;18778:196:::0;;:::o;13714:92::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;13778:12:0::1;13793:5;13778:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;13778:20:0::1;::::0;;13714:92::o;17954:101::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;18021:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;18021:26:0::1;-1:-1:-1::0;;;;18021:26:0;;::::1;::::0;;;::::1;::::0;;17954:101::o;13296:233::-;13362:18;;-1:-1:-1;;;;;13362:18:0;337:10;-1:-1:-1;;;;;13346:34:0;;:70;;;-1:-1:-1;13400:16:0;;-1:-1:-1;;;;;13400:16:0;337:10;-1:-1:-1;;;;;13384:32:0;;13346:70;13338:79;;;;;;13457:21;13489:32;13457:21;13489:12;:32::i;:::-;13327:202;13296:233::o;7395:138::-;-1:-1:-1;;;;;7508:16:0;;7461:7;7508:16;;;:7;:16;;;;;;7488:37;;:19;:37::i;1712:148::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;1819:1:::1;1803:6:::0;;1782:40:::1;::::0;-1:-1:-1;;;;;1803:6:0;;::::1;::::0;1782:40:::1;::::0;1819:1;;1782:40:::1;1850:1;1833:19:::0;;-1:-1:-1;;;;;;1833:19:0::1;::::0;;1712:148::o;18094:108::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;18168:12:::1;:26:::0;18094:108::o;12945:101::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;13012:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;13012:26:0::1;-1:-1:-1::0;;;;13012:26:0;;::::1;::::0;;;::::1;::::0;;12945:101::o;17763:139::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;17854:19:::1;:40:::0;17763:139::o;17420:291::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;17554:14:::1;:30:::0;;;;17595:15:::1;:32:::0;;;;17638:12:::1;:26:::0;17675:13:::1;:28:::0;17420:291::o;7541:199::-;7646:4;7668:42;337:10;7692:9;7703:6;7668:9;:42::i;18575:195::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;18661:9:::1;18657:106;18676:19:::0;;::::1;18657:106;;;18747:4;18722:9;:22;18732:8;;18741:1;18732:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18722:22:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;18722:22:0;:29;;-1:-1:-1;;18722:29:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18697:3;::::1;::::0;::::1;:::i;:::-;;;;18657:106;;13054:234:::0;13120:18;;-1:-1:-1;;;;;13120:18:0;337:10;-1:-1:-1;;;;;13104:34:0;;:70;;;-1:-1:-1;13158:16:0;;-1:-1:-1;;;;;13158:16:0;337:10;-1:-1:-1;;;;;13142:32:0;;13104:70;13096:79;;;;;;13186:23;13212:24;13230:4;13212:9;:24::i;:::-;13186:50;;13247:33;13264:15;13247:16;:33::i;18333:234::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;18450:9:::1;18446:114;18465:19:::0;;::::1;18446:114;;;18540:8;18506:18;:31;18525:8;;18534:1;18525:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;18506:31:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;18506:31:0;:42;;-1:-1:-1;;18506:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18486:3;::::1;::::0;::::1;:::i;:::-;;;;18446:114;;;;18333:234:::0;;;:::o;18210:115::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;18287:14:::1;:30:::0;18210:115::o;14722:194::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;14825:12:::1;:38:::0;;;;14874:22;:34;14722:194::o;1868:244::-;1625:6;;-1:-1:-1;;;;;1625:6:0;337:10;1625:22;1617:67;;;;-1:-1:-1;;;1617:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1957:22:0;::::1;1949:73;;;::::0;-1:-1:-1;;;1949:73:0;;9809:2:1;1949:73:0::1;::::0;::::1;9791:21:1::0;9848:2;9828:18;;;9821:30;9887:34;9867:18;;;9860:62;-1:-1:-1;;;9938:18:1;;;9931:36;9984:19;;1949:73:0::1;9607:402:1::0;1949:73:0::1;2059:6;::::0;;2038:38:::1;::::0;-1:-1:-1;;;;;2038:38:0;;::::1;::::0;2059:6;::::1;::::0;2038:38:::1;::::0;::::1;2087:6;:17:::0;;-1:-1:-1;;;;;;2087:17:0::1;-1:-1:-1::0;;;;;2087:17:0;;;::::1;::::0;;;::::1;::::0;;1868:244::o;9278:369::-;-1:-1:-1;;;;;9405:19:0;;9397:68;;;;-1:-1:-1;;;9397:68:0;;10216:2:1;9397:68:0;;;10198:21:1;10255:2;10235:18;;;10228:30;10294:34;10274:18;;;10267:62;-1:-1:-1;;;10345:18:1;;;10338:34;10389:19;;9397:68:0;10014:400:1;9397:68:0;-1:-1:-1;;;;;9484:21:0;;9476:68;;;;-1:-1:-1;;;9476:68:0;;10621:2:1;9476:68:0;;;10603:21:1;10660:2;10640:18;;;10633:30;10699:34;10679:18;;;10672:62;-1:-1:-1;;;10750:18:1;;;10743:32;10792:19;;9476:68:0;10419:398:1;9476:68:0;-1:-1:-1;;;;;9555:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9607:32;;2992:25:1;;;9607:32:0;;2965:18:1;9607:32:0;;;;;;;9278:369;;;:::o;9655:2368::-;-1:-1:-1;;;;;9777:18:0;;9769:68;;;;-1:-1:-1;;;9769:68:0;;11024:2:1;9769:68:0;;;11006:21:1;11063:2;11043:18;;;11036:30;11102:34;11082:18;;;11075:62;-1:-1:-1;;;11153:18:1;;;11146:35;11198:19;;9769:68:0;10822:401:1;9769:68:0;-1:-1:-1;;;;;9856:16:0;;9848:64;;;;-1:-1:-1;;;9848:64:0;;11430:2:1;9848:64:0;;;11412:21:1;11469:2;11449:18;;;11442:30;11508:34;11488:18;;;11481:62;-1:-1:-1;;;11559:18:1;;;11552:33;11602:19;;9848:64:0;11228:399:1;9848:64:0;9940:1;9931:6;:10;9923:64;;;;-1:-1:-1;;;9923:64:0;;11834:2:1;9923:64:0;;;11816:21:1;11873:2;11853:18;;;11846:30;11912:34;11892:18;;;11885:62;-1:-1:-1;;;11963:18:1;;;11956:39;12012:19;;9923:64:0;11632:405:1;9923:64:0;1536:7;1563:6;-1:-1:-1;;;;;10004:15:0;;;1563:6;;10004:15;;;;:32;;-1:-1:-1;1536:7:0;1563:6;-1:-1:-1;;;;;10023:13:0;;;1563:6;;10023:13;;10004:32;:52;;;;-1:-1:-1;;;;;;10041:15:0;;;;;;:9;:15;;;;;;;;10040:16;10004:52;:70;;;;-1:-1:-1;;;;;;10061:13:0;;;;;;:9;:13;;;;;;;;10060:14;10004:70;10000:1297;;;10131:11;;-1:-1:-1;;;10131:11:0;;;;10126:144;;-1:-1:-1;;;;;10171:15:0;;;;;;:9;:15;;;;;;;;10163:91;;;;-1:-1:-1;;;10163:91:0;;12244:2:1;10163:91:0;;;12226:21:1;12283:2;12263:18;;;12256:30;12322:34;12302:18;;;12295:62;12393:33;12373:18;;;12366:61;12444:19;;10163:91:0;12042:427:1;10163:91:0;10304:12;;10294:6;:22;;10286:63;;;;-1:-1:-1;;;10286:63:0;;12676:2:1;10286:63:0;;;12658:21:1;12715:2;12695:18;;;12688:30;12754;12734:18;;;12727:58;12802:18;;10286:63:0;12474:352:1;10286:63:0;-1:-1:-1;;;;;10373:10:0;;;;;;:4;:10;;;;;;;;10372:11;:24;;;;-1:-1:-1;;;;;;10388:8:0;;;;;;:4;:8;;;;;;;;10387:9;10372:24;10364:72;;;;-1:-1:-1;;;10364:72:0;;13033:2:1;10364:72:0;;;13015:21:1;13072:2;13052:18;;;13045:30;13111:34;13091:18;;;13084:62;-1:-1:-1;;;13162:18:1;;;13155:33;13205:19;;10364:72:0;12831:399:1;10364:72:0;10462:13;;-1:-1:-1;;;;;10456:19:0;;;10462:13;;10456:19;10453:146;;10529:14;;10520:6;10504:13;10514:2;10504:9;:13::i;:::-;:22;;;;:::i;:::-;:39;10496:87;;;;-1:-1:-1;;;10496:87:0;;13567:2:1;10496:87:0;;;13549:21:1;13606:2;13586:18;;;13579:30;13645:34;13625:18;;;13618:62;-1:-1:-1;;;13696:18:1;;;13689:33;13739:19;;10496:87:0;13365:399:1;10496:87:0;10615:28;10646:24;10664:4;10646:9;:24::i;:::-;10724:19;;10787:12;;10615:55;;-1:-1:-1;10700:43:0;;;;10763:36;;10760:124;;10856:12;;10833:35;;10760:124;10904:7;:18;;;;-1:-1:-1;10916:6:0;;-1:-1:-1;;;10916:6:0;;;;10915:7;10904:18;:43;;;;-1:-1:-1;10934:13:0;;-1:-1:-1;;;;;10926:21:0;;;10934:13;;10926:21;;10904:43;:58;;;;-1:-1:-1;10951:11:0;;-1:-1:-1;;;10951:11:0;;;;10904:58;:87;;;;-1:-1:-1;;;;;;10967:24:0;;;;;;:18;:24;;;;;;;;10966:25;10904:87;:114;;;;-1:-1:-1;;;;;;10996:22:0;;;;;;:18;:22;;;;;;;;10995:23;10904:114;10900:386;;;11039:38;11056:20;11039:16;:38::i;:::-;11125:21;11169:22;;11165:106;;11216:35;11229:21;11216:12;:35::i;:::-;11020:266;10900:386;10076:1221;;10000:1297;-1:-1:-1;;;;;11373:24:0;;11309:12;11373:24;;;:18;:24;;;;;;11324:4;;11373:24;;;:50;;-1:-1:-1;;;;;;11401:22:0;;;;;;:18;:22;;;;;;;;11373:50;11372:102;;;-1:-1:-1;11437:13:0;;-1:-1:-1;;;;;11429:21:0;;;11437:13;;11429:21;;;;:44;;-1:-1:-1;11460:13:0;;-1:-1:-1;;;;;11454:19:0;;;11460:13;;11454:19;;11429:44;11368:594;;;-1:-1:-1;11501:5:0;11368:594;;;11584:13;;-1:-1:-1;;;;;11576:21:0;;;11584:13;;11576:21;:55;;;;-1:-1:-1;11615:15:0;;-1:-1:-1;;;;;11601:30:0;;;11615:15;;11601:30;;11576:55;11573:162;;;11664:14;;11652:9;:26;11707:12;;11697:7;:22;11573:162;11794:13;;-1:-1:-1;;;;;11788:19:0;;;11794:13;;11788:19;:55;;;;-1:-1:-1;11827:15:0;;-1:-1:-1;;;;;11811:32:0;;;11827:15;;11811:32;;11788:55;11784:165;;;11876:15;;11864:9;:27;11920:13;;11910:7;:23;11784:165;11974:41;11989:4;11995:2;11999:6;12007:7;11974:14;:41::i;2476:224::-;2596:7;2632:12;2624:6;;;;2616:29;;;;-1:-1:-1;;;2616:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2656:9:0;2668:5;2672:1;2668;:5;:::i;:::-;2656:17;2476:224;-1:-1:-1;;;;;2476:224:0:o;12522:415::-;6127:6;:13;;-1:-1:-1;;;;6127:13:0;-1:-1:-1;;;6127:13:0;;;12679:22;;12617:6;;6127:13;;12659:52:::1;::::0;12707:3:::1;::::0;12659:43:::1;::::0;12617:6;;12659:19:::1;:43::i;:::-;:47:::0;::::1;:52::i;:::-;12634:77;;12722:24;12749:54;12799:3;12749:45;12769:12;:24;;;12749:15;:19;;:45;;;;:::i;:54::-;12822:16;::::0;12814:50:::1;::::0;12722:81;;-1:-1:-1;;;;;;12822:16:0::1;::::0;12814:50;::::1;;;::::0;12849:14;;12822:16:::1;12814:50:::0;12822:16;12814:50;12849:14;12822:16;12814:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;12883:18:0::1;::::0;12875:54:::1;::::0;-1:-1:-1;;;;;12883:18:0;;::::1;::::0;12875:54;::::1;;;::::0;12912:16;;12883:18:::1;12875:54:::0;12883:18;12875:54;12912:16;12883:18;12875:54;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6163:6:0;:14;;-1:-1:-1;;;;6163:14:0;;;-1:-1:-1;;;12522:415:0:o;8595:323::-;8690:7;8748;;8737;:18;;8715:110;;;;-1:-1:-1;;;8715:110:0;;14104:2:1;8715:110:0;;;14086:21:1;14143:2;14123:18;;;14116:30;14182:34;14162:18;;;14155:62;-1:-1:-1;;;14233:18:1;;;14226:40;14283:19;;8715:110:0;13902:406:1;8715:110:0;8836:19;8858:10;:8;:10::i;:::-;8836:32;-1:-1:-1;8886:24:0;:7;8836:32;8886:11;:24::i;:::-;8879:31;8595:323;-1:-1:-1;;;8595:323:0:o;12031:483::-;6127:6;:13;;-1:-1:-1;;;;6127:13:0;-1:-1:-1;;;6127:13:0;;;12133:16:::1;::::0;;12147:1:::1;12133:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12133:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12133:16:0::1;12109:40;;12178:4;12160;12165:1;12160:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12160:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12204:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12204:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12160:7;;12204:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12194:4;12199:1;12194:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12194:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12269:15:::1;::::0;12237:62:::1;::::0;12254:4:::1;::::0;12269:15:::1;12287:11:::0;12237:8:::1;:62::i;:::-;12310:15;::::0;:196:::1;::::0;-1:-1:-1;;;12310:196:0;;-1:-1:-1;;;;;12310:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12391:11;;12310:15:::1;::::0;12433:4;;12460::::1;::::0;12480:15:::1;::::0;12310:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6163:6:0;:14;;-1:-1:-1;;;;6163:14:0;;;-1:-1:-1;;;;12031:483:0:o;13814:282::-;13970:7;13965:28;;13979:14;:12;:14::i;:::-;14004:44;14022:6;14030:9;14041:6;14004:17;:44::i;:::-;14064:7;14059:29;;14073:15;9209:17;;9197:9;:29;9247:15;;9237:7;:25;9153:117;2708:246;2766:7;2790:1;2795;2790:6;2786:47;;-1:-1:-1;2820:1:0;2813:8;;2786:47;2843:9;2855:5;2859:1;2855;:5;:::i;:::-;2843:17;-1:-1:-1;2888:1:0;2879:5;2883:1;2843:17;2879:5;:::i;:::-;:10;2871:56;;;;-1:-1:-1;;;2871:56:0;;15978:2:1;2871:56:0;;;15960:21:1;16017:2;15997:18;;;15990:30;16056:34;16036:18;;;16029:62;-1:-1:-1;;;16107:18:1;;;16100:31;16148:19;;2871:56:0;15776:397:1;2962:132:0;3020:7;3047:39;3051:1;3054;3047:39;;;;;;;;;;;;;;;;;:3;:39::i;16983:164::-;17025:7;17046:15;17063;17082:19;:17;:19::i;:::-;17045:56;;-1:-1:-1;17045:56:0;-1:-1:-1;17119:20:0;17045:56;;17119:11;:20::i;:::-;17112:27;;;;16983:164;:::o;8926:219::-;8973:9;;:14;:30;;;;-1:-1:-1;8991:7:0;;:12;8973:30;8969:43;;;8926:219::o;8969:43::-;9044:9;;;9024:17;:29;9082:7;;;9064:15;:25;-1:-1:-1;9102:13:0;;;;9126:11;8926:219::o;14104:610::-;14251:15;14281:23;14319:12;14346:23;14384:12;14411:13;14438:19;14449:7;14438:10;:19::i;:::-;-1:-1:-1;;;;;14486:15:0;;;;;;:7;:15;;;;;;14236:221;;-1:-1:-1;14236:221:0;;-1:-1:-1;14236:221:0;;-1:-1:-1;14236:221:0;-1:-1:-1;14236:221:0;-1:-1:-1;14236:221:0;-1:-1:-1;14486:28:0;;14236:221;14486:19;:28::i;:::-;-1:-1:-1;;;;;14468:15:0;;;;;;;:7;:15;;;;;;:46;;;;14546:18;;;;;;;:39;;14569:15;14546:22;:39::i;:::-;-1:-1:-1;;;;;14525:18:0;;;;;;:7;:18;;;;;:60;14596:16;14606:5;14596:9;:16::i;:::-;14623:23;14635:4;14641;14623:11;:23::i;:::-;14679:9;-1:-1:-1;;;;;14662:44:0;14671:6;-1:-1:-1;;;;;14662:44:0;;14690:15;14662:44;;;;2992:25:1;;2980:2;2965:18;;2846:177;14662:44:0;;;;;;;;14225:489;;;;;;14104:610;;;:::o;3102:223::-;3222:7;3257:12;3250:5;3242:28;;;;-1:-1:-1;;;3242:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3281:9:0;3293:5;3297:1;3293;:5;:::i;17155:257::-;17253:7;;17206;;;;;4796:13;4454:1;4796:2;:13;:::i;:::-;4780:29;;:13;:29;:::i;:::-;17271:25;-1:-1:-1;17321:20:0;4796:13;4454:1;4796:2;:13;:::i;:::-;4780:29;;:13;:29;:::i;:::-;17321:7;;;:11;:20::i;:::-;17311:7;:30;17307:61;;;17351:7;;4796:13;4454:1;4796:2;:13;:::i;:::-;4780:29;;:13;:29;:::i;:::-;17343:25;;;;;;17155:257;;:::o;17307:61::-;17387:7;;17396;;-1:-1:-1;17155:257:0;-1:-1:-1;17155:257:0:o;15341:615::-;15441:7;15463;15485;15507;15529;15551;15587:23;15612:12;15626:13;15656:40;15668:7;15677:9;;15688:7;;15656:11;:40::i;:::-;15586:110;;;;;;15707:19;15729:10;:8;:10::i;:::-;15707:32;;15751:15;15768:23;15793:12;15822:46;15834:7;15843:4;15849:5;15856:11;15822;:46::i;:::-;15750:118;;-1:-1:-1;15750:118:0;-1:-1:-1;15750:118:0;-1:-1:-1;15919:15:0;;-1:-1:-1;15936:4:0;;-1:-1:-1;15942:5:0;;-1:-1:-1;;;;;15341:615:0;;;;;;;:::o;2332:136::-;2390:7;2417:43;2421:1;2424;2417:43;;;;;;;;;;;;;;;;;:3;:43::i;2145:179::-;2203:7;;2235:5;2239:1;2235;:5;:::i;:::-;2223:17;;2264:1;2259;:6;;2251:46;;;;-1:-1:-1;;;2251:46:0;;16380:2:1;2251:46:0;;;16362:21:1;16419:2;16399:18;;;16392:30;16458:29;16438:18;;;16431:57;16505:18;;2251:46:0;16178:351:1;14924:211:0;14977:19;14999:10;:8;:10::i;:::-;14977:32;-1:-1:-1;15020:13:0;15036:22;:5;14977:32;15036:9;:22::i;:::-;15110:4;15094:22;;;;:7;:22;;;;;;15020:38;;-1:-1:-1;15094:33:0;;15020:38;15094:26;:33::i;:::-;15085:4;15069:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;14924:211:0:o;15143:147::-;15221:7;;:17;;15233:4;15221:11;:17::i;:::-;15211:7;:27;15262:10;;:20;;15277:4;15262:14;:20::i;:::-;15249:10;:33;-1:-1:-1;;15143:147:0:o;15964:469::-;16133:7;;;;16227:30;16253:3;16227:21;:7;16239:8;16227:11;:21::i;:30::-;16212:45;-1:-1:-1;16268:13:0;16284:28;16308:3;16284:19;:7;16296:6;16284:11;:19::i;:28::-;16268:44;-1:-1:-1;16323:23:0;16349:28;16268:44;16349:17;:7;16361:4;16349:11;:17::i;:::-;:21;;:28::i;:::-;16323:54;16413:4;;-1:-1:-1;16419:5:0;;-1:-1:-1;15964:469:0;;-1:-1:-1;;;;;15964:469:0:o;16441:534::-;16635:7;;;;16732:24;:7;16744:11;16732;:24::i;:::-;16714:42;-1:-1:-1;16767:12:0;16782:21;:4;16791:11;16782:8;:21::i;:::-;16767:36;-1:-1:-1;16814:13:0;16830:22;:5;16840:11;16830:9;:22::i;:::-;16814:38;-1:-1:-1;16863:23:0;16889:28;16814:38;16889:17;:7;16901:4;16889:11;:17::i;:28::-;16936:7;;;;-1:-1:-1;16962:4:0;;-1:-1:-1;16441:534:0;;-1:-1:-1;;;;;;;16441:534:0:o;14:127:1:-;75:10;70:3;66:20;63:1;56:31;106:4;103:1;96:15;130:4;127:1;120:15;146:131;-1:-1:-1;;;;;221:31:1;;211:42;;201:70;;267:1;264;257:12;282:134;350:20;;379:31;350:20;379:31;:::i;:::-;282:134;;;:::o;421:1121::-;505:6;536:2;579;567:9;558:7;554:23;550:32;547:52;;;595:1;592;585:12;547:52;635:9;622:23;664:18;705:2;697:6;694:14;691:34;;;721:1;718;711:12;691:34;759:6;748:9;744:22;734:32;;804:7;797:4;793:2;789:13;785:27;775:55;;826:1;823;816:12;775:55;862:2;849:16;884:2;880;877:10;874:36;;;890:18;;:::i;:::-;936:2;933:1;929:10;968:2;962:9;1031:2;1027:7;1022:2;1018;1014:11;1010:25;1002:6;998:38;1086:6;1074:10;1071:22;1066:2;1054:10;1051:18;1048:46;1045:72;;;1097:18;;:::i;:::-;1133:2;1126:22;1183:18;;;1217:15;;;;-1:-1:-1;1259:11:1;;;1255:20;;;1287:19;;;1284:39;;;1319:1;1316;1309:12;1284:39;1343:11;;;;1363:148;1379:6;1374:3;1371:15;1363:148;;;1445:23;1464:3;1445:23;:::i;:::-;1433:36;;1396:12;;;;1489;;;;1363:148;;;1530:6;421:1121;-1:-1:-1;;;;;;;;421:1121:1:o;1547:548::-;1659:4;1688:2;1717;1706:9;1699:21;1749:6;1743:13;1792:6;1787:2;1776:9;1772:18;1765:34;1817:1;1827:140;1841:6;1838:1;1835:13;1827:140;;;1936:14;;;1932:23;;1926:30;1902:17;;;1921:2;1898:26;1891:66;1856:10;;1827:140;;;1831:3;2016:1;2011:2;2002:6;1991:9;1987:22;1983:31;1976:42;2086:2;2079;2075:7;2070:2;2062:6;2058:15;2054:29;2043:9;2039:45;2035:54;2027:62;;;;1547:548;;;;:::o;2100:315::-;2168:6;2176;2229:2;2217:9;2208:7;2204:23;2200:32;2197:52;;;2245:1;2242;2235:12;2197:52;2284:9;2271:23;2303:31;2328:5;2303:31;:::i;:::-;2353:5;2405:2;2390:18;;;;2377:32;;-1:-1:-1;;;2100:315:1:o;3028:456::-;3105:6;3113;3121;3174:2;3162:9;3153:7;3149:23;3145:32;3142:52;;;3190:1;3187;3180:12;3142:52;3229:9;3216:23;3248:31;3273:5;3248:31;:::i;:::-;3298:5;-1:-1:-1;3355:2:1;3340:18;;3327:32;3368:33;3327:32;3368:33;:::i;:::-;3028:456;;3420:7;;-1:-1:-1;;;3474:2:1;3459:18;;;;3446:32;;3028:456::o;4139:367::-;4202:8;4212:6;4266:3;4259:4;4251:6;4247:17;4243:27;4233:55;;4284:1;4281;4274:12;4233:55;-1:-1:-1;4307:20:1;;4350:18;4339:30;;4336:50;;;4382:1;4379;4372:12;4336:50;4419:4;4411:6;4407:17;4395:29;;4479:3;4472:4;4462:6;4459:1;4455:14;4447:6;4443:27;4439:38;4436:47;4433:67;;;4496:1;4493;4486:12;4433:67;4139:367;;;;;:::o;4511:437::-;4597:6;4605;4658:2;4646:9;4637:7;4633:23;4629:32;4626:52;;;4674:1;4671;4664:12;4626:52;4714:9;4701:23;4747:18;4739:6;4736:30;4733:50;;;4779:1;4776;4769:12;4733:50;4818:70;4880:7;4871:6;4860:9;4856:22;4818:70;:::i;:::-;4907:8;;4792:96;;-1:-1:-1;4511:437:1;-1:-1:-1;;;;4511:437:1:o;4953:247::-;5012:6;5065:2;5053:9;5044:7;5040:23;5036:32;5033:52;;;5081:1;5078;5071:12;5033:52;5120:9;5107:23;5139:31;5164:5;5139:31;:::i;5205:160::-;5270:20;;5326:13;;5319:21;5309:32;;5299:60;;5355:1;5352;5345:12;5370:180;5426:6;5479:2;5467:9;5458:7;5454:23;5450:32;5447:52;;;5495:1;5492;5485:12;5447:52;5518:26;5534:9;5518:26;:::i;5555:180::-;5614:6;5667:2;5655:9;5646:7;5642:23;5638:32;5635:52;;;5683:1;5680;5673:12;5635:52;-1:-1:-1;5706:23:1;;5555:180;-1:-1:-1;5555:180:1:o;5740:385::-;5826:6;5834;5842;5850;5903:3;5891:9;5882:7;5878:23;5874:33;5871:53;;;5920:1;5917;5910:12;5871:53;-1:-1:-1;;5943:23:1;;;6013:2;5998:18;;5985:32;;-1:-1:-1;6064:2:1;6049:18;;6036:32;;6115:2;6100:18;6087:32;;-1:-1:-1;5740:385:1;-1:-1:-1;5740:385:1:o;6130:505::-;6222:6;6230;6238;6291:2;6279:9;6270:7;6266:23;6262:32;6259:52;;;6307:1;6304;6297:12;6259:52;6347:9;6334:23;6380:18;6372:6;6369:30;6366:50;;;6412:1;6409;6402:12;6366:50;6451:70;6513:7;6504:6;6493:9;6489:22;6451:70;:::i;:::-;6540:8;;-1:-1:-1;6425:96:1;-1:-1:-1;6594:35:1;;-1:-1:-1;6625:2:1;6610:18;;6594:35;:::i;:::-;6584:45;;6130:505;;;;;:::o;6640:388::-;6708:6;6716;6769:2;6757:9;6748:7;6744:23;6740:32;6737:52;;;6785:1;6782;6775:12;6737:52;6824:9;6811:23;6843:31;6868:5;6843:31;:::i;:::-;6893:5;-1:-1:-1;6950:2:1;6935:18;;6922:32;6963:33;6922:32;6963:33;:::i;:::-;7015:7;7005:17;;;6640:388;;;;;:::o;7033:248::-;7101:6;7109;7162:2;7150:9;7141:7;7137:23;7133:32;7130:52;;;7178:1;7175;7168:12;7130:52;-1:-1:-1;;7201:23:1;;;7271:2;7256:18;;;7243:32;;-1:-1:-1;7033:248:1:o;7286:356::-;7488:2;7470:21;;;7507:18;;;7500:30;7566:34;7561:2;7546:18;;7539:62;7633:2;7618:18;;7286:356::o;7647:127::-;7708:10;7703:3;7699:20;7696:1;7689:31;7739:4;7736:1;7729:15;7763:4;7760:1;7753:15;7779:127;7840:10;7835:3;7831:20;7828:1;7821:31;7871:4;7868:1;7861:15;7895:4;7892:1;7885:15;7911:135;7950:3;7971:17;;;7968:43;;7991:18;;:::i;:::-;-1:-1:-1;8038:1:1;8027:13;;7911:135::o;8051:422::-;8140:1;8183:5;8140:1;8197:270;8218:7;8208:8;8205:21;8197:270;;;8277:4;8273:1;8269:6;8265:17;8259:4;8256:27;8253:53;;;8286:18;;:::i;:::-;8336:7;8326:8;8322:22;8319:55;;;8356:16;;;;8319:55;8435:22;;;;8395:15;;;;8197:270;;;8201:3;8051:422;;;;;:::o;8478:806::-;8527:5;8557:8;8547:80;;-1:-1:-1;8598:1:1;8612:5;;8547:80;8646:4;8636:76;;-1:-1:-1;8683:1:1;8697:5;;8636:76;8728:4;8746:1;8741:59;;;;8814:1;8809:130;;;;8721:218;;8741:59;8771:1;8762:10;;8785:5;;;8809:130;8846:3;8836:8;8833:17;8830:43;;;8853:18;;:::i;:::-;-1:-1:-1;;8909:1:1;8895:16;;8924:5;;8721:218;;9023:2;9013:8;9010:16;9004:3;8998:4;8995:13;8991:36;8985:2;8975:8;8972:16;8967:2;8961:4;8958:12;8954:35;8951:77;8948:159;;;-1:-1:-1;9060:19:1;;;9092:5;;8948:159;9139:34;9164:8;9158:4;9139:34;:::i;:::-;9209:6;9205:1;9201:6;9197:19;9188:7;9185:32;9182:58;;;9220:18;;:::i;:::-;9258:20;;8478:806;-1:-1:-1;;;8478:806:1:o;9289:140::-;9347:5;9376:47;9417:4;9407:8;9403:19;9397:4;9376:47;:::i;9434:168::-;9474:7;9540:1;9536;9532:6;9528:14;9525:1;9522:21;9517:1;9510:9;9503:17;9499:45;9496:71;;;9547:18;;:::i;:::-;-1:-1:-1;9587:9:1;;9434:168::o;13235:125::-;13300:9;;;13321:10;;;13318:36;;;13334:18;;:::i;13769:128::-;13836:9;;;13857:11;;;13854:37;;;13871:18;;:::i;14313:251::-;14383:6;14436:2;14424:9;14415:7;14411:23;14407:32;14404:52;;;14452:1;14449;14442:12;14404:52;14484:9;14478:16;14503:31;14528:5;14503:31;:::i;14569:980::-;14831:4;14879:3;14868:9;14864:19;14910:6;14899:9;14892:25;14936:2;14974:6;14969:2;14958:9;14954:18;14947:34;15017:3;15012:2;15001:9;14997:18;14990:31;15041:6;15076;15070:13;15107:6;15099;15092:22;15145:3;15134:9;15130:19;15123:26;;15184:2;15176:6;15172:15;15158:29;;15205:1;15215:195;15229:6;15226:1;15223:13;15215:195;;;15294:13;;-1:-1:-1;;;;;15290:39:1;15278:52;;15385:15;;;;15350:12;;;;15326:1;15244:9;15215:195;;;-1:-1:-1;;;;;;;15466:32:1;;;;15461:2;15446:18;;15439:60;-1:-1:-1;;;15530:3:1;15515:19;15508:35;15427:3;14569:980;-1:-1:-1;;;14569:980:1:o;15554:217::-;15594:1;15620;15610:132;;15664:10;15659:3;15655:20;15652:1;15645:31;15699:4;15696:1;15689:15;15727:4;15724:1;15717:15;15610:132;-1:-1:-1;15756:9:1;;15554:217::o
Swarm Source
ipfs://489177010c3fc59a3fec85241b80b9b946fb53d20feb9505c5387635661f270e
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.