Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
2,000,000,000 KGK
Holders
68
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
10,880,000 KGKValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Karen
Compiler Version
v0.8.14+commit.80d49f37
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-11-29 */ /** // TG - https://t.me/karenkoin // Website - https://karenkoineth.com // Litepaper - https://karenkoineth.com/wp-content/uploads/2022/11/KGK_Lite_Paper.pdf */ pragma solidity ^0.8.14; // 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 Karen is Context, IERC20, Ownable { using SafeMath for uint256; string private constant _name = "Karens Gonna Karen"; string private constant _symbol = "KGK"; 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 = 2000000000 * 10**_decimals; uint256 private _rTotal = (MAX - (MAX % _tTotal)); uint256 private _tFeeTotal; uint256 private _redisFeeOnBuy = 0; uint256 private _taxFeeOnBuy = 6; uint256 private _redisFeeOnSell = 0; uint256 private _taxFeeOnSell = 15; //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; address private devFeeAddress1; address private devFeeAddress2; IUniswapV2Router02 public uniswapV2Router; address public uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = true; uint256 public _maxTxAmount = 40000000 * 10**_decimals; uint256 public _maxWalletSize = 40000000 * 10**_decimals; uint256 public _swapTokensAtAmount = 100000 * 10**_decimals; struct Distribution { uint256 development; uint256 marketing; uint256 devFee; } Distribution public distribution; event MaxTxAmountUpdated(uint256 _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor(address developmentAddr, address marketingAddr, address devFeeAddr1, address devFeeAddr2) { developmentAddress = developmentAddr; marketingAddress = marketingAddr; devFeeAddress1 = devFeeAddr1; devFeeAddress2 = devFeeAddr2; _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[devFeeAddress1] = true; _isExcludedFromFee[devFeeAddress2] = true; _isExcludedFromFee[marketingAddress] = true; _isExcludedFromFee[developmentAddress] = true; distribution = Distribution(37, 38, 25); 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 devFeeShare = distributionEth.mul(distribution.devFee).div(100).div(2); uint256 developmentShare = distributionEth.mul(distribution.development).div(100); payable(marketingAddress).transfer(marketingShare); payable(devFeeAddress1).transfer(devFeeShare); payable(devFeeAddress2).transfer(devFeeShare); payable(developmentAddress).transfer(developmentShare); } function setTrading(bool _tradingOpen) public onlyOwner { tradingOpen = _tradingOpen; } function manualswap() external { require(_msgSender() == developmentAddress || _msgSender() == marketingAddress || _msgSender() == devFeeAddress1 || _msgSender() == devFeeAddress2); uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function manualsend() external { require(_msgSender() == developmentAddress || _msgSender() == marketingAddress || _msgSender() == devFeeAddress1 || _msgSender() == devFeeAddress2); 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, uint256 devFee) external onlyOwner { distribution.development = development; distribution.marketing = marketing; distribution.devFee = devFee; } 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"},{"internalType":"address","name":"devFeeAddr1","type":"address"},{"internalType":"address","name":"devFeeAddr2","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"},{"internalType":"uint256","name":"devFee","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"},{"internalType":"uint256","name":"devFee","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
6080604052620000126009600a62000552565b620000229063773594006200056a565b62000030906000196200058c565b6200003e90600019620005af565b6006908155600060088190556009918255600a818155600f600b819055600c839055600d819055600e929092559080556018805461ffff60a81b1916600160b01b1790556200008e919062000552565b6200009e906302625a006200056a565b601955620000af6009600a62000552565b620000bf906302625a006200056a565b601a55620000d06009600a62000552565b620000df90620186a06200056a565b601b55348015620000ef57600080fd5b5060405162002ab638038062002ab68339810160408190526200011291620005e6565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350601380546001600160a01b038681166001600160a01b03199283161790925560148054868416908316179055601580548584169083161790556016805492841692821692909217909155600654336000908152600260209081526040918290209290925560178054737a250d5630b4cf539739df2c5dacb4c659f2488d941684179055805163c45a015560e01b81529051839263c45a015592600480820193918290030181865afa1580156200020d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000233919062000643565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000281573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a7919062000643565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200031b919062000643565b601880546001600160a01b0319166001600160a01b039283161790556000805482168152600560209081526040808320805460ff19908116600190811790925530855282852080548216831790556015548616855282852080548216831790556016548616855282852080548216831790556014548616855282852080548216831790556013549095168452818420805490951617909355825160608101845260258082526026928201839052601991909401819052601c93909355601d55601e9190915533907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620004116009600a62000552565b620004219063773594006200056a565b60405190815260200160405180910390a3505050505062000661565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004945781600019048211156200047857620004786200043d565b808516156200048657918102915b93841c939080029062000458565b509250929050565b600082620004ad575060016200054c565b81620004bc575060006200054c565b8160018114620004d55760028114620004e05762000500565b60019150506200054c565b60ff841115620004f457620004f46200043d565b50506001821b6200054c565b5060208310610133831016604e8410600b841016171562000525575081810a6200054c565b62000531838362000453565b80600019048211156200054857620005486200043d565b0290505b92915050565b60006200056360ff8416836200049c565b9392505050565b60008160001904831182151516156200058757620005876200043d565b500290565b600082620005aa57634e487b7160e01b600052601260045260246000fd5b500690565b600082821015620005c457620005c46200043d565b500390565b80516001600160a01b0381168114620005e157600080fd5b919050565b60008060008060808587031215620005fd57600080fd5b6200060885620005c9565b93506200061860208601620005c9565b92506200062860408601620005c9565b91506200063860608601620005c9565b905092959194509250565b6000602082840312156200065657600080fd5b6200056382620005c9565b61244580620006716000396000f3fe6080604052600436106102075760003560e01c806374010ece11610118578063a9059cbb116100a0578063c3c8cd801161006f578063c3c8cd8014610646578063c492f0461461065b578063dd62ed3e1461067b578063ea1644d5146106c1578063f2fde38b146106e157600080fd5b8063a9059cbb146105a6578063b5a65223146105c6578063bdd795ef146105e6578063bfd792841461061657600080fd5b80638f70ccf7116100e75780638f70ccf7146105045780638f9a55c01461052457806395d89b411461053a57806398a5c31514610566578063a2a957bb1461058657600080fd5b806374010ece146104835780637d1db4a5146104a35780637f2feddc146104b95780638da5cb5b146104e657600080fd5b806349bd5a5e1161019b5780636d8aa8f81161016a5780636d8aa8f8146103f95780636f343052146104195780636fc3eaec1461043957806370a082311461044e578063715018a61461046e57600080fd5b806349bd5a5e1461035f5780635ee58efc1461037f57806367aadb7e146103b95780636b999053146103d957600080fd5b806318160ddd116101d757806318160ddd146102ea57806323b872dd1461030d5780632fd689e31461032d578063313ce5671461034357600080fd5b8062b8cf2a1461021357806306fdde0314610235578063095ea7b3146102825780631694505e146102b257600080fd5b3661020e57005b600080fd5b34801561021f57600080fd5b5061023361022e366004611e1b565b610701565b005b34801561024157600080fd5b5060408051808201909152601281527125b0b932b7399023b7b737309025b0b932b760711b60208201525b6040516102799190611ee0565b60405180910390f35b34801561028e57600080fd5b506102a261029d366004611f35565b6107a0565b6040519015158152602001610279565b3480156102be57600080fd5b506017546102d2906001600160a01b031681565b6040516001600160a01b039091168152602001610279565b3480156102f657600080fd5b506102ff6107b7565b604051908152602001610279565b34801561031957600080fd5b506102a2610328366004611f61565b6107d8565b34801561033957600080fd5b506102ff601b5481565b34801561034f57600080fd5b5060405160098152602001610279565b34801561036b57600080fd5b506018546102d2906001600160a01b031681565b34801561038b57600080fd5b50601c54601d54601e5461039e92919083565b60408051938452602084019290925290820152606001610279565b3480156103c557600080fd5b506102336103d4366004611fee565b610841565b3480156103e557600080fd5b506102336103f4366004612030565b6108d9565b34801561040557600080fd5b5061023361041436600461205d565b610924565b34801561042557600080fd5b50610233610434366004612078565b61096c565b34801561044557600080fd5b506102336109a4565b34801561045a57600080fd5b506102ff610469366004612030565b610a2b565b34801561047a57600080fd5b50610233610a4d565b34801561048f57600080fd5b5061023361049e3660046120a4565b610ac1565b3480156104af57600080fd5b506102ff60195481565b3480156104c557600080fd5b506102ff6104d4366004612030565b60116020526000908152604090205481565b3480156104f257600080fd5b506000546001600160a01b03166102d2565b34801561051057600080fd5b5061023361051f36600461205d565b610af0565b34801561053057600080fd5b506102ff601a5481565b34801561054657600080fd5b506040805180820190915260038152624b474b60e81b602082015261026c565b34801561057257600080fd5b506102336105813660046120a4565b610b38565b34801561059257600080fd5b506102336105a13660046120bd565b610b67565b3480156105b257600080fd5b506102a26105c1366004611f35565b610ba5565b3480156105d257600080fd5b506102336105e1366004611fee565b610bb2565b3480156105f257600080fd5b506102a2610601366004612030565b60126020526000908152604090205460ff1681565b34801561062257600080fd5b506102a2610631366004612030565b60106020526000908152604090205460ff1681565b34801561065257600080fd5b50610233610c4e565b34801561066757600080fd5b506102336106763660046120ef565b610cde565b34801561068757600080fd5b506102ff610696366004612143565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156106cd57600080fd5b506102336106dc3660046120a4565b610d7f565b3480156106ed57600080fd5b506102336106fc366004612030565b610dae565b6000546001600160a01b031633146107345760405162461bcd60e51b815260040161072b9061217c565b60405180910390fd5b60005b815181101561079c57600160106000848481518110610758576107586121b1565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610794816121dd565b915050610737565b5050565b60006107ad338484610e98565b5060015b92915050565b60006107c56009600a6122da565b6107d39063773594006122e9565b905090565b60006107e5848484610fbc565b6108378433610832856040518060600160405280602881526020016123e8602891396001600160a01b038a166000908152600460209081526040808320338452909152902054919061154d565b610e98565b5060019392505050565b6000546001600160a01b0316331461086b5760405162461bcd60e51b815260040161072b9061217c565b60005b818110156108d4576012600084848481811061088c5761088c6121b1565b90506020020160208101906108a19190612030565b6001600160a01b031681526020810191909152604001600020805460ff19169055806108cc816121dd565b91505061086e565b505050565b6000546001600160a01b031633146109035760405162461bcd60e51b815260040161072b9061217c565b6001600160a01b03166000908152601060205260409020805460ff19169055565b6000546001600160a01b0316331461094e5760405162461bcd60e51b815260040161072b9061217c565b60188054911515600160b01b0260ff60b01b19909216919091179055565b6000546001600160a01b031633146109965760405162461bcd60e51b815260040161072b9061217c565b601c92909255601d55601e55565b6013546001600160a01b0316336001600160a01b031614806109d957506014546001600160a01b0316336001600160a01b0316145b806109f757506015546001600160a01b0316336001600160a01b0316145b80610a1557506016546001600160a01b0316336001600160a01b0316145b610a1e57600080fd5b47610a2881611587565b50565b6001600160a01b0381166000908152600260205260408120546107b190611702565b6000546001600160a01b03163314610a775760405162461bcd60e51b815260040161072b9061217c565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610aeb5760405162461bcd60e51b815260040161072b9061217c565b601955565b6000546001600160a01b03163314610b1a5760405162461bcd60e51b815260040161072b9061217c565b60188054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b03163314610b625760405162461bcd60e51b815260040161072b9061217c565b601b55565b6000546001600160a01b03163314610b915760405162461bcd60e51b815260040161072b9061217c565b600893909355600a91909155600955600b55565b60006107ad338484610fbc565b6000546001600160a01b03163314610bdc5760405162461bcd60e51b815260040161072b9061217c565b60005b818110156108d457600160126000858585818110610bff57610bff6121b1565b9050602002016020810190610c149190612030565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610c46816121dd565b915050610bdf565b6013546001600160a01b0316336001600160a01b03161480610c8357506014546001600160a01b0316336001600160a01b0316145b80610ca157506015546001600160a01b0316336001600160a01b0316145b80610cbf57506016546001600160a01b0316336001600160a01b0316145b610cc857600080fd5b6000610cd330610a2b565b9050610a2881611786565b6000546001600160a01b03163314610d085760405162461bcd60e51b815260040161072b9061217c565b60005b82811015610d79578160056000868685818110610d2a57610d2a6121b1565b9050602002016020810190610d3f9190612030565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610d71816121dd565b915050610d0b565b50505050565b6000546001600160a01b03163314610da95760405162461bcd60e51b815260040161072b9061217c565b601a55565b6000546001600160a01b03163314610dd85760405162461bcd60e51b815260040161072b9061217c565b6001600160a01b038116610e3d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161072b565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610efa5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161072b565b6001600160a01b038216610f5b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161072b565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166110205760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161072b565b6001600160a01b0382166110825760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161072b565b600081116110e45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161072b565b6000546001600160a01b0384811691161480159061111057506000546001600160a01b03838116911614155b801561113557506001600160a01b03831660009081526012602052604090205460ff16155b801561115a57506001600160a01b03821660009081526012602052604090205460ff16155b1561144657601854600160a01b900460ff166111fe576001600160a01b03831660009081526012602052604090205460ff166111fe5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400606482015260840161072b565b6019548111156112505760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000604482015260640161072b565b6001600160a01b03831660009081526010602052604090205460ff1615801561129257506001600160a01b03821660009081526010602052604090205460ff16155b6112ea5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460448201526265642160e81b606482015260840161072b565b6018546001600160a01b0383811691161461136f57601a548161130c84610a2b565b6113169190612308565b1061136f5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b606482015260840161072b565b600061137a30610a2b565b601b546019549192508210159082106113935760195491505b8080156113aa5750601854600160a81b900460ff16155b80156113c457506018546001600160a01b03868116911614155b80156113d95750601854600160b01b900460ff165b80156113fe57506001600160a01b03851660009081526005602052604090205460ff16155b801561142357506001600160a01b03841660009081526005602052604090205460ff16155b156114435761143182611786565b4780156114415761144147611587565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff168061148857506001600160a01b03831660009081526005602052604090205460ff165b806114ba57506018546001600160a01b038581169116148015906114ba57506018546001600160a01b03848116911614155b156114c757506000611541565b6018546001600160a01b0385811691161480156114f257506017546001600160a01b03848116911614155b1561150457600854600c55600954600d555b6018546001600160a01b03848116911614801561152f57506017546001600160a01b03858116911614155b1561154157600a54600c55600b54600d555b610d79848484846118eb565b600081848411156115715760405162461bcd60e51b815260040161072b9190611ee0565b50600061157e8486612320565b95945050505050565b6018805460ff60a81b1916600160a81b179055601d5481906000906115ba906064906115b4908590611919565b9061199b565b905060006115e060026115b460646115b4601c600201548861191990919063ffffffff16565b9050600061160160646115b4601c600001548761191990919063ffffffff16565b6014546040519192506001600160a01b03169084156108fc029085906000818181858888f1935050505015801561163c573d6000803e3d6000fd5b506015546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015611677573d6000803e3d6000fd5b506016546040516001600160a01b039091169083156108fc029084906000818181858888f193505050501580156116b2573d6000803e3d6000fd5b506013546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156116ed573d6000803e3d6000fd5b50506018805460ff60a81b1916905550505050565b60006006548211156117695760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161072b565b60006117736119dd565b905061177f838261199b565b9392505050565b6018805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106117ce576117ce6121b1565b6001600160a01b03928316602091820292909201810191909152601754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611827573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061184b9190612337565b8160018151811061185e5761185e6121b1565b6001600160a01b0392831660209182029290920101526017546118849130911684610e98565b60175460405163791ac94760e01b81526001600160a01b039091169063791ac947906118bd908590600090869030904290600401612354565b600060405180830381600087803b1580156118d757600080fd5b505af11580156116ed573d6000803e3d6000fd5b806118f8576118f8611a00565b611903848484611a2e565b80610d7957610d79600e54600c55600f54600d55565b60008260000361192b575060006107b1565b600061193783856122e9565b90508261194485836123c5565b1461177f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161072b565b600061177f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b25565b60008060006119ea611b53565b90925090506119f9828261199b565b9250505090565b600c54158015611a105750600d54155b15611a1757565b600c8054600e55600d8054600f5560009182905555565b600080600080600080611a4087611bd5565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150611a729087611c32565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054611aa19086611c74565b6001600160a01b038916600090815260026020526040902055611ac381611cd3565b611acd8483611d1d565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b1291815260200190565b60405180910390a3505050505050505050565b60008183611b465760405162461bcd60e51b815260040161072b9190611ee0565b50600061157e84866123c5565b600654600090819081611b686009600a6122da565b611b769063773594006122e9565b9050611b9e611b876009600a6122da565b611b959063773594006122e9565b6006549061199b565b821015611bcc57600654611bb46009600a6122da565b611bc29063773594006122e9565b9350935050509091565b90939092509050565b6000806000806000806000806000611bf28a600c54600d54611d41565b9250925092506000611c026119dd565b90506000806000611c158e878787611d90565b919e509c509a509598509396509194505050505091939550919395565b600061177f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061154d565b600080611c818385612308565b90508381101561177f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161072b565b6000611cdd6119dd565b90506000611ceb8383611919565b30600090815260026020526040902054909150611d089082611c74565b30600090815260026020526040902055505050565b600654611d2a9083611c32565b600655600754611d3a9082611c74565b6007555050565b6000808080611d5560646115b48989611919565b90506000611d6860646115b48a89611919565b90506000611d8082611d7a8b86611c32565b90611c32565b9992985090965090945050505050565b6000808080611d9f8886611919565b90506000611dad8887611919565b90506000611dbb8888611919565b90506000611dcd82611d7a8686611c32565b939b939a50919850919650505050505050565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610a2857600080fd5b8035611e1681611df6565b919050565b60006020808385031215611e2e57600080fd5b823567ffffffffffffffff80821115611e4657600080fd5b818501915085601f830112611e5a57600080fd5b813581811115611e6c57611e6c611de0565b8060051b604051601f19603f83011681018181108582111715611e9157611e91611de0565b604052918252848201925083810185019188831115611eaf57600080fd5b938501935b82851015611ed457611ec585611e0b565b84529385019392850192611eb4565b98975050505050505050565b600060208083528351808285015260005b81811015611f0d57858101830151858201604001528201611ef1565b81811115611f1f576000604083870101525b50601f01601f1916929092016040019392505050565b60008060408385031215611f4857600080fd5b8235611f5381611df6565b946020939093013593505050565b600080600060608486031215611f7657600080fd5b8335611f8181611df6565b92506020840135611f9181611df6565b929592945050506040919091013590565b60008083601f840112611fb457600080fd5b50813567ffffffffffffffff811115611fcc57600080fd5b6020830191508360208260051b8501011115611fe757600080fd5b9250929050565b6000806020838503121561200157600080fd5b823567ffffffffffffffff81111561201857600080fd5b61202485828601611fa2565b90969095509350505050565b60006020828403121561204257600080fd5b813561177f81611df6565b80358015158114611e1657600080fd5b60006020828403121561206f57600080fd5b61177f8261204d565b60008060006060848603121561208d57600080fd5b505081359360208301359350604090920135919050565b6000602082840312156120b657600080fd5b5035919050565b600080600080608085870312156120d357600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006040848603121561210457600080fd5b833567ffffffffffffffff81111561211b57600080fd5b61212786828701611fa2565b909450925061213a90506020850161204d565b90509250925092565b6000806040838503121561215657600080fd5b823561216181611df6565b9150602083013561217181611df6565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016121ef576121ef6121c7565b5060010190565b600181815b80851115612231578160001904821115612217576122176121c7565b8085161561222457918102915b93841c93908002906121fb565b509250929050565b600082612248575060016107b1565b81612255575060006107b1565b816001811461226b576002811461227557612291565b60019150506107b1565b60ff841115612286576122866121c7565b50506001821b6107b1565b5060208310610133831016604e8410600b84101617156122b4575081810a6107b1565b6122be83836121f6565b80600019048211156122d2576122d26121c7565b029392505050565b600061177f60ff841683612239565b6000816000190483118215151615612303576123036121c7565b500290565b6000821982111561231b5761231b6121c7565b500190565b600082821015612332576123326121c7565b500390565b60006020828403121561234957600080fd5b815161177f81611df6565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156123a45784516001600160a01b03168352938301939183019160010161237f565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826123e257634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ff3dd9a4d4bcef03bb935d3def6c6ea4ced8b5d3f92e84c8248241163dc3b65b64736f6c634300080e0033000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835
Deployed Bytecode
0x6080604052600436106102075760003560e01c806374010ece11610118578063a9059cbb116100a0578063c3c8cd801161006f578063c3c8cd8014610646578063c492f0461461065b578063dd62ed3e1461067b578063ea1644d5146106c1578063f2fde38b146106e157600080fd5b8063a9059cbb146105a6578063b5a65223146105c6578063bdd795ef146105e6578063bfd792841461061657600080fd5b80638f70ccf7116100e75780638f70ccf7146105045780638f9a55c01461052457806395d89b411461053a57806398a5c31514610566578063a2a957bb1461058657600080fd5b806374010ece146104835780637d1db4a5146104a35780637f2feddc146104b95780638da5cb5b146104e657600080fd5b806349bd5a5e1161019b5780636d8aa8f81161016a5780636d8aa8f8146103f95780636f343052146104195780636fc3eaec1461043957806370a082311461044e578063715018a61461046e57600080fd5b806349bd5a5e1461035f5780635ee58efc1461037f57806367aadb7e146103b95780636b999053146103d957600080fd5b806318160ddd116101d757806318160ddd146102ea57806323b872dd1461030d5780632fd689e31461032d578063313ce5671461034357600080fd5b8062b8cf2a1461021357806306fdde0314610235578063095ea7b3146102825780631694505e146102b257600080fd5b3661020e57005b600080fd5b34801561021f57600080fd5b5061023361022e366004611e1b565b610701565b005b34801561024157600080fd5b5060408051808201909152601281527125b0b932b7399023b7b737309025b0b932b760711b60208201525b6040516102799190611ee0565b60405180910390f35b34801561028e57600080fd5b506102a261029d366004611f35565b6107a0565b6040519015158152602001610279565b3480156102be57600080fd5b506017546102d2906001600160a01b031681565b6040516001600160a01b039091168152602001610279565b3480156102f657600080fd5b506102ff6107b7565b604051908152602001610279565b34801561031957600080fd5b506102a2610328366004611f61565b6107d8565b34801561033957600080fd5b506102ff601b5481565b34801561034f57600080fd5b5060405160098152602001610279565b34801561036b57600080fd5b506018546102d2906001600160a01b031681565b34801561038b57600080fd5b50601c54601d54601e5461039e92919083565b60408051938452602084019290925290820152606001610279565b3480156103c557600080fd5b506102336103d4366004611fee565b610841565b3480156103e557600080fd5b506102336103f4366004612030565b6108d9565b34801561040557600080fd5b5061023361041436600461205d565b610924565b34801561042557600080fd5b50610233610434366004612078565b61096c565b34801561044557600080fd5b506102336109a4565b34801561045a57600080fd5b506102ff610469366004612030565b610a2b565b34801561047a57600080fd5b50610233610a4d565b34801561048f57600080fd5b5061023361049e3660046120a4565b610ac1565b3480156104af57600080fd5b506102ff60195481565b3480156104c557600080fd5b506102ff6104d4366004612030565b60116020526000908152604090205481565b3480156104f257600080fd5b506000546001600160a01b03166102d2565b34801561051057600080fd5b5061023361051f36600461205d565b610af0565b34801561053057600080fd5b506102ff601a5481565b34801561054657600080fd5b506040805180820190915260038152624b474b60e81b602082015261026c565b34801561057257600080fd5b506102336105813660046120a4565b610b38565b34801561059257600080fd5b506102336105a13660046120bd565b610b67565b3480156105b257600080fd5b506102a26105c1366004611f35565b610ba5565b3480156105d257600080fd5b506102336105e1366004611fee565b610bb2565b3480156105f257600080fd5b506102a2610601366004612030565b60126020526000908152604090205460ff1681565b34801561062257600080fd5b506102a2610631366004612030565b60106020526000908152604090205460ff1681565b34801561065257600080fd5b50610233610c4e565b34801561066757600080fd5b506102336106763660046120ef565b610cde565b34801561068757600080fd5b506102ff610696366004612143565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156106cd57600080fd5b506102336106dc3660046120a4565b610d7f565b3480156106ed57600080fd5b506102336106fc366004612030565b610dae565b6000546001600160a01b031633146107345760405162461bcd60e51b815260040161072b9061217c565b60405180910390fd5b60005b815181101561079c57600160106000848481518110610758576107586121b1565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610794816121dd565b915050610737565b5050565b60006107ad338484610e98565b5060015b92915050565b60006107c56009600a6122da565b6107d39063773594006122e9565b905090565b60006107e5848484610fbc565b6108378433610832856040518060600160405280602881526020016123e8602891396001600160a01b038a166000908152600460209081526040808320338452909152902054919061154d565b610e98565b5060019392505050565b6000546001600160a01b0316331461086b5760405162461bcd60e51b815260040161072b9061217c565b60005b818110156108d4576012600084848481811061088c5761088c6121b1565b90506020020160208101906108a19190612030565b6001600160a01b031681526020810191909152604001600020805460ff19169055806108cc816121dd565b91505061086e565b505050565b6000546001600160a01b031633146109035760405162461bcd60e51b815260040161072b9061217c565b6001600160a01b03166000908152601060205260409020805460ff19169055565b6000546001600160a01b0316331461094e5760405162461bcd60e51b815260040161072b9061217c565b60188054911515600160b01b0260ff60b01b19909216919091179055565b6000546001600160a01b031633146109965760405162461bcd60e51b815260040161072b9061217c565b601c92909255601d55601e55565b6013546001600160a01b0316336001600160a01b031614806109d957506014546001600160a01b0316336001600160a01b0316145b806109f757506015546001600160a01b0316336001600160a01b0316145b80610a1557506016546001600160a01b0316336001600160a01b0316145b610a1e57600080fd5b47610a2881611587565b50565b6001600160a01b0381166000908152600260205260408120546107b190611702565b6000546001600160a01b03163314610a775760405162461bcd60e51b815260040161072b9061217c565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b03163314610aeb5760405162461bcd60e51b815260040161072b9061217c565b601955565b6000546001600160a01b03163314610b1a5760405162461bcd60e51b815260040161072b9061217c565b60188054911515600160a01b0260ff60a01b19909216919091179055565b6000546001600160a01b03163314610b625760405162461bcd60e51b815260040161072b9061217c565b601b55565b6000546001600160a01b03163314610b915760405162461bcd60e51b815260040161072b9061217c565b600893909355600a91909155600955600b55565b60006107ad338484610fbc565b6000546001600160a01b03163314610bdc5760405162461bcd60e51b815260040161072b9061217c565b60005b818110156108d457600160126000858585818110610bff57610bff6121b1565b9050602002016020810190610c149190612030565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610c46816121dd565b915050610bdf565b6013546001600160a01b0316336001600160a01b03161480610c8357506014546001600160a01b0316336001600160a01b0316145b80610ca157506015546001600160a01b0316336001600160a01b0316145b80610cbf57506016546001600160a01b0316336001600160a01b0316145b610cc857600080fd5b6000610cd330610a2b565b9050610a2881611786565b6000546001600160a01b03163314610d085760405162461bcd60e51b815260040161072b9061217c565b60005b82811015610d79578160056000868685818110610d2a57610d2a6121b1565b9050602002016020810190610d3f9190612030565b6001600160a01b031681526020810191909152604001600020805460ff191691151591909117905580610d71816121dd565b915050610d0b565b50505050565b6000546001600160a01b03163314610da95760405162461bcd60e51b815260040161072b9061217c565b601a55565b6000546001600160a01b03163314610dd85760405162461bcd60e51b815260040161072b9061217c565b6001600160a01b038116610e3d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161072b565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610efa5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161072b565b6001600160a01b038216610f5b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161072b565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166110205760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161072b565b6001600160a01b0382166110825760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161072b565b600081116110e45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161072b565b6000546001600160a01b0384811691161480159061111057506000546001600160a01b03838116911614155b801561113557506001600160a01b03831660009081526012602052604090205460ff16155b801561115a57506001600160a01b03821660009081526012602052604090205460ff16155b1561144657601854600160a01b900460ff166111fe576001600160a01b03831660009081526012602052604090205460ff166111fe5760405162461bcd60e51b815260206004820152603f60248201527f544f4b454e3a2054686973206163636f756e742063616e6e6f742073656e642060448201527f746f6b656e7320756e74696c2074726164696e6720697320656e61626c656400606482015260840161072b565b6019548111156112505760405162461bcd60e51b815260206004820152601c60248201527f544f4b454e3a204d6178205472616e73616374696f6e204c696d697400000000604482015260640161072b565b6001600160a01b03831660009081526010602052604090205460ff1615801561129257506001600160a01b03821660009081526010602052604090205460ff16155b6112ea5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a20596f7572206163636f756e7420697320626c61636b6c69737460448201526265642160e81b606482015260840161072b565b6018546001600160a01b0383811691161461136f57601a548161130c84610a2b565b6113169190612308565b1061136f5760405162461bcd60e51b815260206004820152602360248201527f544f4b454e3a2042616c616e636520657863656564732077616c6c65742073696044820152627a652160e81b606482015260840161072b565b600061137a30610a2b565b601b546019549192508210159082106113935760195491505b8080156113aa5750601854600160a81b900460ff16155b80156113c457506018546001600160a01b03868116911614155b80156113d95750601854600160b01b900460ff165b80156113fe57506001600160a01b03851660009081526005602052604090205460ff16155b801561142357506001600160a01b03841660009081526005602052604090205460ff16155b156114435761143182611786565b4780156114415761144147611587565b505b50505b6001600160a01b03831660009081526005602052604090205460019060ff168061148857506001600160a01b03831660009081526005602052604090205460ff165b806114ba57506018546001600160a01b038581169116148015906114ba57506018546001600160a01b03848116911614155b156114c757506000611541565b6018546001600160a01b0385811691161480156114f257506017546001600160a01b03848116911614155b1561150457600854600c55600954600d555b6018546001600160a01b03848116911614801561152f57506017546001600160a01b03858116911614155b1561154157600a54600c55600b54600d555b610d79848484846118eb565b600081848411156115715760405162461bcd60e51b815260040161072b9190611ee0565b50600061157e8486612320565b95945050505050565b6018805460ff60a81b1916600160a81b179055601d5481906000906115ba906064906115b4908590611919565b9061199b565b905060006115e060026115b460646115b4601c600201548861191990919063ffffffff16565b9050600061160160646115b4601c600001548761191990919063ffffffff16565b6014546040519192506001600160a01b03169084156108fc029085906000818181858888f1935050505015801561163c573d6000803e3d6000fd5b506015546040516001600160a01b039091169083156108fc029084906000818181858888f19350505050158015611677573d6000803e3d6000fd5b506016546040516001600160a01b039091169083156108fc029084906000818181858888f193505050501580156116b2573d6000803e3d6000fd5b506013546040516001600160a01b039091169082156108fc029083906000818181858888f193505050501580156116ed573d6000803e3d6000fd5b50506018805460ff60a81b1916905550505050565b60006006548211156117695760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b606482015260840161072b565b60006117736119dd565b905061177f838261199b565b9392505050565b6018805460ff60a81b1916600160a81b17905560408051600280825260608201835260009260208301908036833701905050905030816000815181106117ce576117ce6121b1565b6001600160a01b03928316602091820292909201810191909152601754604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611827573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061184b9190612337565b8160018151811061185e5761185e6121b1565b6001600160a01b0392831660209182029290920101526017546118849130911684610e98565b60175460405163791ac94760e01b81526001600160a01b039091169063791ac947906118bd908590600090869030904290600401612354565b600060405180830381600087803b1580156118d757600080fd5b505af11580156116ed573d6000803e3d6000fd5b806118f8576118f8611a00565b611903848484611a2e565b80610d7957610d79600e54600c55600f54600d55565b60008260000361192b575060006107b1565b600061193783856122e9565b90508261194485836123c5565b1461177f5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161072b565b600061177f83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611b25565b60008060006119ea611b53565b90925090506119f9828261199b565b9250505090565b600c54158015611a105750600d54155b15611a1757565b600c8054600e55600d8054600f5560009182905555565b600080600080600080611a4087611bd5565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150611a729087611c32565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054611aa19086611c74565b6001600160a01b038916600090815260026020526040902055611ac381611cd3565b611acd8483611d1d565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051611b1291815260200190565b60405180910390a3505050505050505050565b60008183611b465760405162461bcd60e51b815260040161072b9190611ee0565b50600061157e84866123c5565b600654600090819081611b686009600a6122da565b611b769063773594006122e9565b9050611b9e611b876009600a6122da565b611b959063773594006122e9565b6006549061199b565b821015611bcc57600654611bb46009600a6122da565b611bc29063773594006122e9565b9350935050509091565b90939092509050565b6000806000806000806000806000611bf28a600c54600d54611d41565b9250925092506000611c026119dd565b90506000806000611c158e878787611d90565b919e509c509a509598509396509194505050505091939550919395565b600061177f83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061154d565b600080611c818385612308565b90508381101561177f5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161072b565b6000611cdd6119dd565b90506000611ceb8383611919565b30600090815260026020526040902054909150611d089082611c74565b30600090815260026020526040902055505050565b600654611d2a9083611c32565b600655600754611d3a9082611c74565b6007555050565b6000808080611d5560646115b48989611919565b90506000611d6860646115b48a89611919565b90506000611d8082611d7a8b86611c32565b90611c32565b9992985090965090945050505050565b6000808080611d9f8886611919565b90506000611dad8887611919565b90506000611dbb8888611919565b90506000611dcd82611d7a8686611c32565b939b939a50919850919650505050505050565b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610a2857600080fd5b8035611e1681611df6565b919050565b60006020808385031215611e2e57600080fd5b823567ffffffffffffffff80821115611e4657600080fd5b818501915085601f830112611e5a57600080fd5b813581811115611e6c57611e6c611de0565b8060051b604051601f19603f83011681018181108582111715611e9157611e91611de0565b604052918252848201925083810185019188831115611eaf57600080fd5b938501935b82851015611ed457611ec585611e0b565b84529385019392850192611eb4565b98975050505050505050565b600060208083528351808285015260005b81811015611f0d57858101830151858201604001528201611ef1565b81811115611f1f576000604083870101525b50601f01601f1916929092016040019392505050565b60008060408385031215611f4857600080fd5b8235611f5381611df6565b946020939093013593505050565b600080600060608486031215611f7657600080fd5b8335611f8181611df6565b92506020840135611f9181611df6565b929592945050506040919091013590565b60008083601f840112611fb457600080fd5b50813567ffffffffffffffff811115611fcc57600080fd5b6020830191508360208260051b8501011115611fe757600080fd5b9250929050565b6000806020838503121561200157600080fd5b823567ffffffffffffffff81111561201857600080fd5b61202485828601611fa2565b90969095509350505050565b60006020828403121561204257600080fd5b813561177f81611df6565b80358015158114611e1657600080fd5b60006020828403121561206f57600080fd5b61177f8261204d565b60008060006060848603121561208d57600080fd5b505081359360208301359350604090920135919050565b6000602082840312156120b657600080fd5b5035919050565b600080600080608085870312156120d357600080fd5b5050823594602084013594506040840135936060013592509050565b60008060006040848603121561210457600080fd5b833567ffffffffffffffff81111561211b57600080fd5b61212786828701611fa2565b909450925061213a90506020850161204d565b90509250925092565b6000806040838503121561215657600080fd5b823561216181611df6565b9150602083013561217181611df6565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b6000600182016121ef576121ef6121c7565b5060010190565b600181815b80851115612231578160001904821115612217576122176121c7565b8085161561222457918102915b93841c93908002906121fb565b509250929050565b600082612248575060016107b1565b81612255575060006107b1565b816001811461226b576002811461227557612291565b60019150506107b1565b60ff841115612286576122866121c7565b50506001821b6107b1565b5060208310610133831016604e8410600b84101617156122b4575081810a6107b1565b6122be83836121f6565b80600019048211156122d2576122d26121c7565b029392505050565b600061177f60ff841683612239565b6000816000190483118215151615612303576123036121c7565b500290565b6000821982111561231b5761231b6121c7565b500190565b600082821015612332576123326121c7565b500390565b60006020828403121561234957600080fd5b815161177f81611df6565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156123a45784516001600160a01b03168352938301939183019160010161237f565b50506001600160a01b03969096166060850152505050608001529392505050565b6000826123e257634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ff3dd9a4d4bcef03bb935d3def6c6ea4ced8b5d3f92e84c8248241163dc3b65b64736f6c634300080e0033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835
-----Decoded View---------------
Arg [0] : developmentAddr (address): 0xCa5b8049F76B9dFEE3F900369229F3298f5a7835
Arg [1] : marketingAddr (address): 0xCa5b8049F76B9dFEE3F900369229F3298f5a7835
Arg [2] : devFeeAddr1 (address): 0xCa5b8049F76B9dFEE3F900369229F3298f5a7835
Arg [3] : devFeeAddr2 (address): 0xCa5b8049F76B9dFEE3F900369229F3298f5a7835
-----Encoded View---------------
4 Constructor Arguments found :
Arg [0] : 000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835
Arg [1] : 000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835
Arg [2] : 000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835
Arg [3] : 000000000000000000000000ca5b8049f76b9dfee3f900369229f3298f5a7835
Deployed Bytecode Sourcemap
4240:15456:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14201:169;;;;;;;;;;-1:-1:-1;14201:169:0;;;;;:::i;:::-;;:::i;:::-;;7342:83;;;;;;;;;;-1:-1:-1;7412:5:0;;;;;;;;;;;;-1:-1:-1;;;7412:5:0;;;;7342:83;;;;;;;:::i;:::-;;;;;;;;8267:193;;;;;;;;;;-1:-1:-1;8267:193:0;;;;;:::i;:::-;;:::i;:::-;;;2634:14:1;;2627:22;2609:41;;2597:2;2582:18;8267:193:0;2469:187:1;5599:41:0;;;;;;;;;;-1:-1:-1;5599:41:0;;;;-1:-1:-1;;;;;5599:41:0;;;;;;-1:-1:-1;;;;;2851:32:1;;;2833:51;;2821:2;2806:18;5599:41:0;2661:229:1;7619:95:0;;;;;;;;;;;;;:::i;:::-;;;3041:25:1;;;3029:2;3014:18;7619:95:0;2895:177:1;8468:446:0;;;;;;;;;;-1:-1:-1;8468:446:0;;;;;:::i;:::-;;:::i;5913:59::-;;;;;;;;;;;;;;;;7528:83;;;;;;;;;;-1:-1:-1;7528:83:0;;4467:1;3680:36:1;;3668:2;3653:18;7528:83:0;3538:184:1;5647:28:0;;;;;;;;;;-1:-1:-1;5647:28:0;;;;-1:-1:-1;;;;;5647:28:0;;;6100:32;;;;;;;;;;-1:-1:-1;6100:32:0;;;;;;;;;;;;;;;;4137:25:1;;;4193:2;4178:18;;4171:34;;;;4221:18;;;4214:34;4125:2;4110:18;6100:32:0;3935:319:1;19497:196:0;;;;;;;;;;-1:-1:-1;19497:196:0;;;;;:::i;:::-;;:::i;14378:92::-;;;;;;;;;;-1:-1:-1;14378:92:0;;;;;:::i;:::-;;:::i;18673:101::-;;;;;;;;;;-1:-1:-1;18673:101:0;;;;;:::i;:::-;;:::i;15386:249::-;;;;;;;;;;-1:-1:-1;15386:249:0;;;;;:::i;:::-;;:::i;13892:301::-;;;;;;;;;;;;;:::i;7722:138::-;;;;;;;;;;-1:-1:-1;7722:138:0;;;;;:::i;:::-;;:::i;1727:148::-;;;;;;;;;;;;;:::i;18813:108::-;;;;;;;;;;-1:-1:-1;18813:108:0;;;;;:::i;:::-;;:::i;5789:54::-;;;;;;;;;;;;;;;;5344:43;;;;;;;;;;-1:-1:-1;5344:43:0;;;;;:::i;:::-;;;;;;;;;;;;;;1513:79;;;;;;;;;;-1:-1:-1;1551:7:0;1578:6;-1:-1:-1;;;;;1578:6:0;1513:79;;13473:101;;;;;;;;;;-1:-1:-1;13473:101:0;;;;;:::i;:::-;;:::i;5850:56::-;;;;;;;;;;;;;;;;7433:87;;;;;;;;;;-1:-1:-1;7505:7:0;;;;;;;;;;;;-1:-1:-1;;;7505:7:0;;;;7433:87;;18482:139;;;;;;;;;;-1:-1:-1;18482:139:0;;;;;:::i;:::-;;:::i;18139:291::-;;;;;;;;;;-1:-1:-1;18139:291:0;;;;;:::i;:::-;;:::i;7868:199::-;;;;;;;;;;-1:-1:-1;7868:199:0;;;;;:::i;:::-;;:::i;19294:195::-;;;;;;;;;;-1:-1:-1;19294:195:0;;;;;:::i;:::-;;:::i;5394:42::-;;;;;;;;;;-1:-1:-1;5394:42:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5300:36;;;;;;;;;;-1:-1:-1;5300:36:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;13582:302;;;;;;;;;;;;;:::i;19052:234::-;;;;;;;;;;-1:-1:-1;19052:234:0;;;;;:::i;:::-;;:::i;8075:184::-;;;;;;;;;;-1:-1:-1;8075:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;8224:18:0;;;8192:7;8224:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8075:184;18929:115;;;;;;;;;;-1:-1:-1;18929:115:0;;;;;:::i;:::-;;:::i;1883:244::-;;;;;;;;;;-1:-1:-1;1883:244:0;;;;;:::i;:::-;;:::i;14201:169::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;;;;;;;;;14277:9:::1;14272:91;14296:5;:12;14292:1;:16;14272:91;;;14347:4;14330;:14;14335:5;14341:1;14335:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;14330:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;14330:14:0;:21;;-1:-1:-1;;14330:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;14310:3;::::1;::::0;::::1;:::i;:::-;;;;14272:91;;;;14201:169:::0;:::o;8267:193::-;8369:4;8391:39;352:10;8414:7;8423:6;8391:8;:39::i;:::-;-1:-1:-1;8448:4:0;8267:193;;;;;:::o;7619:95::-;7672:7;4806:13;4467:1;4806:2;:13;:::i;:::-;4793:26;;:10;:26;:::i;:::-;7692:14;;7619:95;:::o;8468:446::-;8600:4;8617:36;8627:6;8635:9;8646:6;8617:9;:36::i;:::-;8664:220;8687:6;352:10;8735:138;8791:6;8735:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8735:19:0;;;;;;:11;:19;;;;;;;;352:10;8735:33;;;;;;;;;;:37;:138::i;:::-;8664:8;:220::i;:::-;-1:-1:-1;8902:4:0;8468:446;;;;;:::o;19497:196::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;19584:9:::1;19580:106;19599:19:::0;;::::1;19580:106;;;19652:9;:22;19662:8;;19671:1;19662:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19652:22:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;19652:22:0;19645:29;;-1:-1:-1;;19645:29:0::1;::::0;;19620:3;::::1;::::0;::::1;:::i;:::-;;;;19580:106;;;;19497:196:::0;;:::o;14378:92::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;14442:12:0::1;14457:5;14442:12:::0;;;:4:::1;:12;::::0;;;;:20;;-1:-1:-1;;14442:20:0::1;::::0;;14378:92::o;18673:101::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;18740:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;18740:26:0::1;-1:-1:-1::0;;;;18740:26:0;;::::1;::::0;;;::::1;::::0;;18673:101::o;15386:249::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;15505:12:::1;:38:::0;;;;15554:22;:34;15599:19;:28;15386:249::o;13892:301::-;13958:18;;-1:-1:-1;;;;;13958:18:0;352:10;-1:-1:-1;;;;;13942:34:0;;:70;;;-1:-1:-1;13996:16:0;;-1:-1:-1;;;;;13996:16:0;352:10;-1:-1:-1;;;;;13980:32:0;;13942:70;:104;;;-1:-1:-1;14032:14:0;;-1:-1:-1;;;;;14032:14:0;352:10;-1:-1:-1;;;;;14016:30:0;;13942:104;:138;;;-1:-1:-1;14066:14:0;;-1:-1:-1;;;;;14066:14:0;352:10;-1:-1:-1;;;;;14050:30:0;;13942:138;13934:147;;;;;;14121:21;14153:32;14121:21;14153:12;:32::i;:::-;13923:270;13892:301::o;7722:138::-;-1:-1:-1;;;;;7835:16:0;;7788:7;7835:16;;;:7;:16;;;;;;7815:37;;:19;:37::i;1727:148::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;1834:1:::1;1818:6:::0;;1797:40:::1;::::0;-1:-1:-1;;;;;1818:6:0;;::::1;::::0;1797:40:::1;::::0;1834:1;;1797:40:::1;1865:1;1848:19:::0;;-1:-1:-1;;;;;;1848:19:0::1;::::0;;1727:148::o;18813:108::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;18887:12:::1;:26:::0;18813:108::o;13473:101::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;13540:11:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;13540:26:0::1;-1:-1:-1::0;;;;13540:26:0;;::::1;::::0;;;::::1;::::0;;13473:101::o;18482:139::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;18573:19:::1;:40:::0;18482:139::o;18139:291::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;18273:14:::1;:30:::0;;;;18314:15:::1;:32:::0;;;;18357:12:::1;:26:::0;18394:13:::1;:28:::0;18139:291::o;7868:199::-;7973:4;7995:42;352:10;8019:9;8030:6;7995:9;:42::i;19294:195::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;19380:9:::1;19376:106;19395:19:::0;;::::1;19376:106;;;19466:4;19441:9;:22;19451:8;;19460:1;19451:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19441:22:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;19441:22:0;:29;;-1:-1:-1;;19441:29:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19416:3;::::1;::::0;::::1;:::i;:::-;;;;19376:106;;13582:302:::0;13648:18;;-1:-1:-1;;;;;13648:18:0;352:10;-1:-1:-1;;;;;13632:34:0;;:70;;;-1:-1:-1;13686:16:0;;-1:-1:-1;;;;;13686:16:0;352:10;-1:-1:-1;;;;;13670:32:0;;13632:70;:104;;;-1:-1:-1;13722:14:0;;-1:-1:-1;;;;;13722:14:0;352:10;-1:-1:-1;;;;;13706:30:0;;13632:104;:138;;;-1:-1:-1;13756:14:0;;-1:-1:-1;;;;;13756:14:0;352:10;-1:-1:-1;;;;;13740:30:0;;13632:138;13624:147;;;;;;13782:23;13808:24;13826:4;13808:9;:24::i;:::-;13782:50;;13843:33;13860:15;13843:16;:33::i;19052:234::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;19169:9:::1;19165:114;19184:19:::0;;::::1;19165:114;;;19259:8;19225:18;:31;19244:8;;19253:1;19244:11;;;;;;;:::i;:::-;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;19225:31:0::1;::::0;;::::1;::::0;::::1;::::0;;;;;;-1:-1:-1;19225:31:0;:42;;-1:-1:-1;;19225:42:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19205:3;::::1;::::0;::::1;:::i;:::-;;;;19165:114;;;;19052:234:::0;;;:::o;18929:115::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;19006:14:::1;:30:::0;18929:115::o;1883:244::-;1640:6;;-1:-1:-1;;;;;1640:6:0;352:10;1640:22;1632:67;;;;-1:-1:-1;;;1632:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;1972:22:0;::::1;1964:73;;;::::0;-1:-1:-1;;;1964:73:0;;9997:2:1;1964:73:0::1;::::0;::::1;9979:21:1::0;10036:2;10016:18;;;10009:30;10075:34;10055:18;;;10048:62;-1:-1:-1;;;10126:18:1;;;10119:36;10172:19;;1964:73:0::1;9795:402:1::0;1964:73:0::1;2074:6;::::0;;2053:38:::1;::::0;-1:-1:-1;;;;;2053:38:0;;::::1;::::0;2074:6;::::1;::::0;2053:38:::1;::::0;::::1;2102:6;:17:::0;;-1:-1:-1;;;;;;2102:17:0::1;-1:-1:-1::0;;;;;2102:17:0;;;::::1;::::0;;;::::1;::::0;;1883:244::o;9605:369::-;-1:-1:-1;;;;;9732:19:0;;9724:68;;;;-1:-1:-1;;;9724:68:0;;10404:2:1;9724:68:0;;;10386:21:1;10443:2;10423:18;;;10416:30;10482:34;10462:18;;;10455:62;-1:-1:-1;;;10533:18:1;;;10526:34;10577:19;;9724:68:0;10202:400:1;9724:68:0;-1:-1:-1;;;;;9811:21:0;;9803:68;;;;-1:-1:-1;;;9803:68:0;;10809:2:1;9803:68:0;;;10791:21:1;10848:2;10828:18;;;10821:30;10887:34;10867:18;;;10860:62;-1:-1:-1;;;10938:18:1;;;10931:32;10980:19;;9803:68:0;10607:398:1;9803:68:0;-1:-1:-1;;;;;9882:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9934:32;;3041:25:1;;;9934:32:0;;3014:18:1;9934:32:0;;;;;;;9605:369;;;:::o;9982:2368::-;-1:-1:-1;;;;;10104:18:0;;10096:68;;;;-1:-1:-1;;;10096:68:0;;11212:2:1;10096:68:0;;;11194:21:1;11251:2;11231:18;;;11224:30;11290:34;11270:18;;;11263:62;-1:-1:-1;;;11341:18:1;;;11334:35;11386:19;;10096:68:0;11010:401:1;10096:68:0;-1:-1:-1;;;;;10183:16:0;;10175:64;;;;-1:-1:-1;;;10175:64:0;;11618:2:1;10175:64:0;;;11600:21:1;11657:2;11637:18;;;11630:30;11696:34;11676:18;;;11669:62;-1:-1:-1;;;11747:18:1;;;11740:33;11790:19;;10175:64:0;11416:399:1;10175:64:0;10267:1;10258:6;:10;10250:64;;;;-1:-1:-1;;;10250:64:0;;12022:2:1;10250:64:0;;;12004:21:1;12061:2;12041:18;;;12034:30;12100:34;12080:18;;;12073:62;-1:-1:-1;;;12151:18:1;;;12144:39;12200:19;;10250:64:0;11820:405:1;10250:64:0;1551:7;1578:6;-1:-1:-1;;;;;10331:15:0;;;1578:6;;10331:15;;;;:32;;-1:-1:-1;1551:7:0;1578:6;-1:-1:-1;;;;;10350:13:0;;;1578:6;;10350:13;;10331:32;:52;;;;-1:-1:-1;;;;;;10368:15:0;;;;;;:9;:15;;;;;;;;10367:16;10331:52;:70;;;;-1:-1:-1;;;;;;10388:13:0;;;;;;:9;:13;;;;;;;;10387:14;10331:70;10327:1297;;;10458:11;;-1:-1:-1;;;10458:11:0;;;;10453:144;;-1:-1:-1;;;;;10498:15:0;;;;;;:9;:15;;;;;;;;10490:91;;;;-1:-1:-1;;;10490:91:0;;12432:2:1;10490:91:0;;;12414:21:1;12471:2;12451:18;;;12444:30;12510:34;12490:18;;;12483:62;12581:33;12561:18;;;12554:61;12632:19;;10490:91:0;12230:427:1;10490:91:0;10631:12;;10621:6;:22;;10613:63;;;;-1:-1:-1;;;10613:63:0;;12864:2:1;10613:63:0;;;12846:21:1;12903:2;12883:18;;;12876:30;12942;12922:18;;;12915:58;12990:18;;10613:63:0;12662:352:1;10613:63:0;-1:-1:-1;;;;;10700:10:0;;;;;;:4;:10;;;;;;;;10699:11;:24;;;;-1:-1:-1;;;;;;10715:8:0;;;;;;:4;:8;;;;;;;;10714:9;10699:24;10691:72;;;;-1:-1:-1;;;10691:72:0;;13221:2:1;10691:72:0;;;13203:21:1;13260:2;13240:18;;;13233:30;13299:34;13279:18;;;13272:62;-1:-1:-1;;;13350:18:1;;;13343:33;13393:19;;10691:72:0;13019:399:1;10691:72:0;10789:13;;-1:-1:-1;;;;;10783:19:0;;;10789:13;;10783:19;10780:146;;10856:14;;10847:6;10831:13;10841:2;10831:9;:13::i;:::-;:22;;;;:::i;:::-;:39;10823:87;;;;-1:-1:-1;;;10823:87:0;;13758:2:1;10823:87:0;;;13740:21:1;13797:2;13777:18;;;13770:30;13836:34;13816:18;;;13809:62;-1:-1:-1;;;13887:18:1;;;13880:33;13930:19;;10823:87:0;13556:399:1;10823:87:0;10942:28;10973:24;10991:4;10973:9;:24::i;:::-;11051:19;;11114:12;;10942:55;;-1:-1:-1;11027:43:0;;;;11090:36;;11087:124;;11183:12;;11160:35;;11087:124;11231:7;:18;;;;-1:-1:-1;11243:6:0;;-1:-1:-1;;;11243:6:0;;;;11242:7;11231:18;:43;;;;-1:-1:-1;11261:13:0;;-1:-1:-1;;;;;11253:21:0;;;11261:13;;11253:21;;11231:43;:58;;;;-1:-1:-1;11278:11:0;;-1:-1:-1;;;11278:11:0;;;;11231:58;:87;;;;-1:-1:-1;;;;;;11294:24:0;;;;;;:18;:24;;;;;;;;11293:25;11231:87;:114;;;;-1:-1:-1;;;;;;11323:22:0;;;;;;:18;:22;;;;;;;;11322:23;11231:114;11227:386;;;11366:38;11383:20;11366:16;:38::i;:::-;11452:21;11496:22;;11492:106;;11543:35;11556:21;11543:12;:35::i;:::-;11347:266;11227:386;10403:1221;;10327:1297;-1:-1:-1;;;;;11700:24:0;;11636:12;11700:24;;;:18;:24;;;;;;11651:4;;11700:24;;;:50;;-1:-1:-1;;;;;;11728:22:0;;;;;;:18;:22;;;;;;;;11700:50;11699:102;;;-1:-1:-1;11764:13:0;;-1:-1:-1;;;;;11756:21:0;;;11764:13;;11756:21;;;;:44;;-1:-1:-1;11787:13:0;;-1:-1:-1;;;;;11781:19:0;;;11787:13;;11781:19;;11756:44;11695:594;;;-1:-1:-1;11828:5:0;11695:594;;;11911:13;;-1:-1:-1;;;;;11903:21:0;;;11911:13;;11903:21;:55;;;;-1:-1:-1;11942:15:0;;-1:-1:-1;;;;;11928:30:0;;;11942:15;;11928:30;;11903:55;11900:162;;;11991:14;;11979:9;:26;12034:12;;12024:7;:22;11900:162;12121:13;;-1:-1:-1;;;;;12115:19:0;;;12121:13;;12115:19;:55;;;;-1:-1:-1;12154:15:0;;-1:-1:-1;;;;;12138:32:0;;;12154:15;;12138:32;;12115:55;12111:165;;;12203:15;;12191:9;:27;12247:13;;12237:7;:23;12111:165;12301:41;12316:4;12322:2;12326:6;12334:7;12301:14;:41::i;2491:224::-;2611:7;2647:12;2639:6;;;;2631:29;;;;-1:-1:-1;;;2631:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2671:9:0;2683:5;2687:1;2683;:5;:::i;:::-;2671:17;2491:224;-1:-1:-1;;;;;2491:224:0:o;12849:616::-;6226:6;:13;;-1:-1:-1;;;;6226:13:0;-1:-1:-1;;;6226:13:0;;;13006:22;;12944:6;;6226:13;;12986:52:::1;::::0;13034:3:::1;::::0;12986:43:::1;::::0;12944:6;;12986:19:::1;:43::i;:::-;:47:::0;::::1;:52::i;:::-;12961:77;;13049:19;13071:56;13125:1;13071:49;13116:3;13071:40;13091:12;:19;;;13071:15;:19;;:40;;;;:::i;:56::-;13049:78;;13138:24;13165:54;13215:3;13165:45;13185:12;:24;;;13165:15;:19;;:45;;;;:::i;:54::-;13238:16;::::0;13230:50:::1;::::0;13138:81;;-1:-1:-1;;;;;;13238:16:0::1;::::0;13230:50;::::1;;;::::0;13265:14;;13238:16:::1;13230:50:::0;13238:16;13230:50;13265:14;13238:16;13230:50;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;13299:14:0::1;::::0;13291:45:::1;::::0;-1:-1:-1;;;;;13299:14:0;;::::1;::::0;13291:45;::::1;;;::::0;13324:11;;13299:14:::1;13291:45:::0;13299:14;13291:45;13324:11;13299:14;13291:45;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;13355:14:0::1;::::0;13347:45:::1;::::0;-1:-1:-1;;;;;13355:14:0;;::::1;::::0;13347:45;::::1;;;::::0;13380:11;;13355:14:::1;13347:45:::0;13355:14;13347:45;13380:11;13355:14;13347:45;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;13411:18:0::1;::::0;13403:54:::1;::::0;-1:-1:-1;;;;;13411:18:0;;::::1;::::0;13403:54;::::1;;;::::0;13440:16;;13411:18:::1;13403:54:::0;13411:18;13403:54;13440:16;13411:18;13403:54;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6262:6:0;:14;;-1:-1:-1;;;;6262:14:0;;;-1:-1:-1;;;;12849:616:0:o;8922:323::-;9017:7;9075;;9064;:18;;9042:110;;;;-1:-1:-1;;;9042:110:0;;14292:2:1;9042:110:0;;;14274:21:1;14331:2;14311:18;;;14304:30;14370:34;14350:18;;;14343:62;-1:-1:-1;;;14421:18:1;;;14414:40;14471:19;;9042:110:0;14090:406:1;9042:110:0;9163:19;9185:10;:8;:10::i;:::-;9163:32;-1:-1:-1;9213:24:0;:7;9163:32;9213:11;:24::i;:::-;9206:31;8922:323;-1:-1:-1;;;8922:323:0:o;12358:483::-;6226:6;:13;;-1:-1:-1;;;;6226:13:0;-1:-1:-1;;;6226:13:0;;;12460:16:::1;::::0;;12474:1:::1;12460:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12460:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12460:16:0::1;12436:40;;12505:4;12487;12492:1;12487:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12487:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12531:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12531:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12487:7;;12531:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12521:4;12526:1;12521:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12521:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12596:15:::1;::::0;12564:62:::1;::::0;12581:4:::1;::::0;12596:15:::1;12614:11:::0;12564:8:::1;:62::i;:::-;12637:15;::::0;:196:::1;::::0;-1:-1:-1;;;12637:196:0;;-1:-1:-1;;;;;12637:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12718:11;;12637:15:::1;::::0;12760:4;;12787::::1;::::0;12807:15:::1;::::0;12637:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;14478:282:::0;14634:7;14629:28;;14643:14;:12;:14::i;:::-;14668:44;14686:6;14694:9;14705:6;14668:17;:44::i;:::-;14728:7;14723:29;;14737:15;9536:17;;9524:9;:29;9574:15;;9564:7;:25;9480:117;2723:246;2781:7;2805:1;2810;2805:6;2801:47;;-1:-1:-1;2835:1:0;2828:8;;2801:47;2858:9;2870:5;2874:1;2870;:5;:::i;:::-;2858:17;-1:-1:-1;2903:1:0;2894:5;2898:1;2858:17;2894:5;:::i;:::-;:10;2886:56;;;;-1:-1:-1;;;2886:56:0;;16166:2:1;2886:56:0;;;16148:21:1;16205:2;16185:18;;;16178:30;16244:34;16224:18;;;16217:62;-1:-1:-1;;;16295:18:1;;;16288:31;16336:19;;2886:56:0;15964:397:1;2977:132:0;3035:7;3062:39;3066:1;3069;3062:39;;;;;;;;;;;;;;;;;:3;:39::i;17702:164::-;17744:7;17765:15;17782;17801:19;:17;:19::i;:::-;17764:56;;-1:-1:-1;17764:56:0;-1:-1:-1;17838:20:0;17764:56;;17838:11;:20::i;:::-;17831:27;;;;17702:164;:::o;9253:219::-;9300:9;;:14;:30;;;;-1:-1:-1;9318:7:0;;:12;9300:30;9296:43;;;9253:219::o;9296:43::-;9371:9;;;9351:17;:29;9409:7;;;9391:15;:25;-1:-1:-1;9429:13:0;;;;9453:11;9253:219::o;14768:610::-;14915:15;14945:23;14983:12;15010:23;15048:12;15075:13;15102:19;15113:7;15102:10;:19::i;:::-;-1:-1:-1;;;;;15150:15:0;;;;;;:7;:15;;;;;;14900:221;;-1:-1:-1;14900:221:0;;-1:-1:-1;14900:221:0;;-1:-1:-1;14900:221:0;-1:-1:-1;14900:221:0;-1:-1:-1;14900:221:0;-1:-1:-1;15150:28:0;;14900:221;15150:19;:28::i;:::-;-1:-1:-1;;;;;15132:15:0;;;;;;;:7;:15;;;;;;:46;;;;15210:18;;;;;;;:39;;15233:15;15210:22;:39::i;:::-;-1:-1:-1;;;;;15189:18:0;;;;;;:7;:18;;;;;:60;15260:16;15270:5;15260:9;:16::i;:::-;15287:23;15299:4;15305;15287:11;:23::i;:::-;15343:9;-1:-1:-1;;;;;15326:44:0;15335:6;-1:-1:-1;;;;;15326:44:0;;15354:15;15326:44;;;;3041:25:1;;3029:2;3014:18;;2895:177;15326:44:0;;;;;;;;14889:489;;;;;;14768:610;;;:::o;3117:223::-;3237:7;3272:12;3265:5;3257:28;;;;-1:-1:-1;;;3257:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3296:9:0;3308:5;3312:1;3308;:5;:::i;17874:257::-;17972:7;;17925;;;;;4806:13;4467:1;4806:2;:13;:::i;:::-;4793:26;;:10;:26;:::i;:::-;17990:25;-1:-1:-1;18040:20:0;4806:13;4467:1;4806:2;:13;:::i;:::-;4793:26;;:10;:26;:::i;:::-;18040:7;;;:11;:20::i;:::-;18030:7;:30;18026:61;;;18070:7;;4806:13;4467:1;4806:2;:13;:::i;:::-;4793:26;;:10;:26;:::i;:::-;18062:25;;;;;;17874:257;;:::o;18026:61::-;18106:7;;18115;;-1:-1:-1;17874:257:0;-1:-1:-1;17874:257:0:o;16060:615::-;16160:7;16182;16204;16226;16248;16270;16306:23;16331:12;16345:13;16375:40;16387:7;16396:9;;16407:7;;16375:11;:40::i;:::-;16305:110;;;;;;16426:19;16448:10;:8;:10::i;:::-;16426:32;;16470:15;16487:23;16512:12;16541:46;16553:7;16562:4;16568:5;16575:11;16541;:46::i;:::-;16469:118;;-1:-1:-1;16469:118:0;-1:-1:-1;16469:118:0;-1:-1:-1;16638:15:0;;-1:-1:-1;16655:4:0;;-1:-1:-1;16661:5:0;;-1:-1:-1;;;;;16060:615:0;;;;;;;:::o;2347:136::-;2405:7;2432:43;2436:1;2439;2432:43;;;;;;;;;;;;;;;;;:3;:43::i;2160:179::-;2218:7;;2250:5;2254:1;2250;:5;:::i;:::-;2238:17;;2279:1;2274;:6;;2266:46;;;;-1:-1:-1;;;2266:46:0;;16568:2:1;2266:46:0;;;16550:21:1;16607:2;16587:18;;;16580:30;16646:29;16626:18;;;16619:57;16693:18;;2266:46:0;16366:351:1;15643:211:0;15696:19;15718:10;:8;:10::i;:::-;15696:32;-1:-1:-1;15739:13:0;15755:22;:5;15696:32;15755:9;:22::i;:::-;15829:4;15813:22;;;;:7;:22;;;;;;15739:38;;-1:-1:-1;15813:33:0;;15739:38;15813:26;:33::i;:::-;15804:4;15788:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;15643:211:0:o;15862:147::-;15940:7;;:17;;15952:4;15940:11;:17::i;:::-;15930:7;:27;15981:10;;:20;;15996:4;15981:14;:20::i;:::-;15968:10;:33;-1:-1:-1;;15862:147:0:o;16683:469::-;16852:7;;;;16946:30;16972:3;16946:21;:7;16958:8;16946:11;:21::i;:30::-;16931:45;-1:-1:-1;16987:13:0;17003:28;17027:3;17003:19;:7;17015:6;17003:11;:19::i;:28::-;16987:44;-1:-1:-1;17042:23:0;17068:28;16987:44;17068:17;:7;17080:4;17068:11;:17::i;:::-;:21;;:28::i;:::-;17042:54;17132:4;;-1:-1:-1;17138:5:0;;-1:-1:-1;16683:469:0;;-1:-1:-1;;;;;16683:469:0:o;17160:534::-;17354:7;;;;17451:24;:7;17463:11;17451;:24::i;:::-;17433:42;-1:-1:-1;17486:12:0;17501:21;:4;17510:11;17501:8;:21::i;:::-;17486:36;-1:-1:-1;17533:13:0;17549:22;:5;17559:11;17549:9;:22::i;:::-;17533:38;-1:-1:-1;17582:23:0;17608:28;17533:38;17608:17;:7;17620:4;17608:11;:17::i;:28::-;17655:7;;;;-1:-1:-1;17681:4:0;;-1:-1:-1;17160:534:0;;-1:-1:-1;;;;;;;17160: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:597::-;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;;;1985:6;1982:1;1979:13;1976:91;;;2055:1;2050:2;2041:6;2030:9;2026:22;2022:31;2015:42;1976:91;-1:-1:-1;2128:2:1;2107:15;-1:-1:-1;;2103:29:1;2088:45;;;;2135:2;2084:54;;1547:597;-1:-1:-1;;;1547:597:1:o;2149:315::-;2217:6;2225;2278:2;2266:9;2257:7;2253:23;2249:32;2246:52;;;2294:1;2291;2284:12;2246:52;2333:9;2320:23;2352:31;2377:5;2352:31;:::i;:::-;2402:5;2454:2;2439:18;;;;2426:32;;-1:-1:-1;;;2149:315:1:o;3077:456::-;3154:6;3162;3170;3223:2;3211:9;3202:7;3198:23;3194:32;3191:52;;;3239:1;3236;3229:12;3191:52;3278:9;3265:23;3297:31;3322:5;3297:31;:::i;:::-;3347:5;-1:-1:-1;3404:2:1;3389:18;;3376:32;3417:33;3376:32;3417:33;:::i;:::-;3077:456;;3469:7;;-1:-1:-1;;;3523:2:1;3508:18;;;;3495:32;;3077:456::o;4259:367::-;4322:8;4332:6;4386:3;4379:4;4371:6;4367:17;4363:27;4353:55;;4404:1;4401;4394:12;4353:55;-1:-1:-1;4427:20:1;;4470:18;4459:30;;4456:50;;;4502:1;4499;4492:12;4456:50;4539:4;4531:6;4527:17;4515:29;;4599:3;4592:4;4582:6;4579:1;4575:14;4567:6;4563:27;4559:38;4556:47;4553:67;;;4616:1;4613;4606:12;4553:67;4259:367;;;;;:::o;4631:437::-;4717:6;4725;4778:2;4766:9;4757:7;4753:23;4749:32;4746:52;;;4794:1;4791;4784:12;4746:52;4834:9;4821:23;4867:18;4859:6;4856:30;4853:50;;;4899:1;4896;4889:12;4853:50;4938:70;5000:7;4991:6;4980:9;4976:22;4938:70;:::i;:::-;5027:8;;4912:96;;-1:-1:-1;4631:437:1;-1:-1:-1;;;;4631:437:1:o;5073:247::-;5132:6;5185:2;5173:9;5164:7;5160:23;5156:32;5153:52;;;5201:1;5198;5191:12;5153:52;5240:9;5227:23;5259:31;5284:5;5259:31;:::i;5325:160::-;5390:20;;5446:13;;5439:21;5429:32;;5419:60;;5475:1;5472;5465:12;5490:180;5546:6;5599:2;5587:9;5578:7;5574:23;5570:32;5567:52;;;5615:1;5612;5605:12;5567:52;5638:26;5654:9;5638:26;:::i;5675:316::-;5752:6;5760;5768;5821:2;5809:9;5800:7;5796:23;5792:32;5789:52;;;5837:1;5834;5827:12;5789:52;-1:-1:-1;;5860:23:1;;;5930:2;5915:18;;5902:32;;-1:-1:-1;5981:2:1;5966:18;;;5953:32;;5675:316;-1:-1:-1;5675:316:1:o;5996:180::-;6055:6;6108:2;6096:9;6087:7;6083:23;6079:32;6076:52;;;6124:1;6121;6114:12;6076:52;-1:-1:-1;6147:23:1;;5996:180;-1:-1:-1;5996:180:1:o;6181:385::-;6267:6;6275;6283;6291;6344:3;6332:9;6323:7;6319:23;6315:33;6312:53;;;6361:1;6358;6351:12;6312:53;-1:-1:-1;;6384:23:1;;;6454:2;6439:18;;6426:32;;-1:-1:-1;6505:2:1;6490:18;;6477:32;;6556:2;6541:18;6528:32;;-1:-1:-1;6181:385:1;-1:-1:-1;6181:385:1:o;6571:505::-;6663:6;6671;6679;6732:2;6720:9;6711:7;6707:23;6703:32;6700:52;;;6748:1;6745;6738:12;6700:52;6788:9;6775:23;6821:18;6813:6;6810:30;6807:50;;;6853:1;6850;6843:12;6807:50;6892:70;6954:7;6945:6;6934:9;6930:22;6892:70;:::i;:::-;6981:8;;-1:-1:-1;6866:96:1;-1:-1:-1;7035:35:1;;-1:-1:-1;7066:2:1;7051:18;;7035:35;:::i;:::-;7025:45;;6571:505;;;;;:::o;7081:388::-;7149:6;7157;7210:2;7198:9;7189:7;7185:23;7181:32;7178:52;;;7226:1;7223;7216:12;7178:52;7265:9;7252:23;7284:31;7309:5;7284:31;:::i;:::-;7334:5;-1:-1:-1;7391:2:1;7376:18;;7363:32;7404:33;7363:32;7404:33;:::i;:::-;7456:7;7446:17;;;7081:388;;;;;:::o;7474:356::-;7676:2;7658:21;;;7695:18;;;7688:30;7754:34;7749:2;7734:18;;7727:62;7821:2;7806:18;;7474:356::o;7835:127::-;7896:10;7891:3;7887:20;7884:1;7877:31;7927:4;7924:1;7917:15;7951:4;7948:1;7941:15;7967:127;8028:10;8023:3;8019:20;8016:1;8009:31;8059:4;8056:1;8049:15;8083:4;8080:1;8073:15;8099:135;8138:3;8159:17;;;8156:43;;8179:18;;:::i;:::-;-1:-1:-1;8226:1:1;8215:13;;8099:135::o;8239:422::-;8328:1;8371:5;8328:1;8385:270;8406:7;8396:8;8393:21;8385:270;;;8465:4;8461:1;8457:6;8453:17;8447:4;8444:27;8441:53;;;8474:18;;:::i;:::-;8524:7;8514:8;8510:22;8507:55;;;8544:16;;;;8507:55;8623:22;;;;8583:15;;;;8385:270;;;8389:3;8239:422;;;;;:::o;8666:806::-;8715:5;8745:8;8735:80;;-1:-1:-1;8786:1:1;8800:5;;8735:80;8834:4;8824:76;;-1:-1:-1;8871:1:1;8885:5;;8824:76;8916:4;8934:1;8929:59;;;;9002:1;8997:130;;;;8909:218;;8929:59;8959:1;8950:10;;8973:5;;;8997:130;9034:3;9024:8;9021:17;9018:43;;;9041:18;;:::i;:::-;-1:-1:-1;;9097:1:1;9083:16;;9112:5;;8909:218;;9211:2;9201:8;9198:16;9192:3;9186:4;9183:13;9179:36;9173:2;9163:8;9160:16;9155:2;9149:4;9146:12;9142:35;9139:77;9136:159;;;-1:-1:-1;9248:19:1;;;9280:5;;9136:159;9327:34;9352:8;9346:4;9327:34;:::i;:::-;9397:6;9393:1;9389:6;9385:19;9376:7;9373:32;9370:58;;;9408:18;;:::i;:::-;9446:20;;8666:806;-1:-1:-1;;;8666:806:1:o;9477:140::-;9535:5;9564:47;9605:4;9595:8;9591:19;9585:4;9564:47;:::i;9622:168::-;9662:7;9728:1;9724;9720:6;9716:14;9713:1;9710:21;9705:1;9698:9;9691:17;9687:45;9684:71;;;9735:18;;:::i;:::-;-1:-1:-1;9775:9:1;;9622:168::o;13423:128::-;13463:3;13494:1;13490:6;13487:1;13484:13;13481:39;;;13500:18;;:::i;:::-;-1:-1:-1;13536:9:1;;13423:128::o;13960:125::-;14000:4;14028:1;14025;14022:8;14019:34;;;14033:18;;:::i;:::-;-1:-1:-1;14070:9:1;;13960:125::o;14501:251::-;14571:6;14624:2;14612:9;14603:7;14599:23;14595:32;14592:52;;;14640:1;14637;14630:12;14592:52;14672:9;14666:16;14691:31;14716:5;14691:31;:::i;14757:980::-;15019:4;15067:3;15056:9;15052:19;15098:6;15087:9;15080:25;15124:2;15162:6;15157:2;15146:9;15142:18;15135:34;15205:3;15200:2;15189:9;15185:18;15178:31;15229:6;15264;15258:13;15295:6;15287;15280:22;15333:3;15322:9;15318:19;15311:26;;15372:2;15364:6;15360:15;15346:29;;15393:1;15403:195;15417:6;15414:1;15411:13;15403:195;;;15482:13;;-1:-1:-1;;;;;15478:39:1;15466:52;;15573:15;;;;15538:12;;;;15514:1;15432:9;15403:195;;;-1:-1:-1;;;;;;;15654:32:1;;;;15649:2;15634:18;;15627:60;-1:-1:-1;;;15718:3:1;15703:19;15696:35;15615:3;14757:980;-1:-1:-1;;;14757:980:1:o;15742:217::-;15782:1;15808;15798:132;;15852:10;15847:3;15843:20;15840:1;15833:31;15887:4;15884:1;15877:15;15915:4;15912:1;15905:15;15798:132;-1:-1:-1;15944:9:1;;15742:217::o
Swarm Source
ipfs://ff3dd9a4d4bcef03bb935d3def6c6ea4ced8b5d3f92e84c8248241163dc3b65b
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.