ERC-20
Overview
Max Total Supply
1,000,000,000 NBAR
Holders
70
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
4,346,933.258364531521806566 NBARValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
NBAR
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-08-05 */ /** Website: https://neirostandard.live X: https://x.com/NeiroStandardx Telegram: https://t.me/NeiroStandard */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.17; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } interface IUniswapV2Factory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer( address recipient, uint256 amount ) external returns (bool); function allowance( address owner, address spender ) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function 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; } } contract Ownable is Context { address private _owner; 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); } } interface IUniRouter { 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); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } contract NBAR is IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; string private constant _name = unicode"Neiro Standard"; string private constant _symbol = unicode"NBAR"; uint8 private constant _decimals = 18; uint256 private constant _tSupplys = 1_000_000_000 * 10 ** _decimals; IUniRouter public immutable uniRouter; address public uniPair; bool private swapping; address public feeReceiver; uint256 public maxTxThres = (_tSupplys * 20) / 1000; uint256 public maxWalletThres = (_tSupplys * 20) / 1000; uint256 public swapTxThres = (_tSupplys * 5) / 1000000; uint256 public maxSwapThres = (_tSupplys * 10) / 1000; bool public limitsOpen = true; bool public tradingOpen = false; bool public swapOpen = false; mapping(address => bool) private _bs; uint256 public _longTax = 0; uint256 public _shortTax = 0; mapping(address => bool) private _infee; mapping(address => bool) public _intx; mapping(address => bool) public pairs; event ExcludeFromFees(address indexed account, bool isExcluded); event SetAutomatedMarketMakerPair(address indexed pair, bool indexed value); constructor() { feeReceiver = address(0x19016C3Fc4E8f6dbc045d0cCbCFD99F57217E3eE); uniRouter = IUniRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); setInFee(owner(), true); setInFee(address(this), true); setInFee(feeReceiver, true); setInTx(owner(), true); setInTx(address(this), true); _balances[msg.sender] = _tSupplys; emit Transfer(address(0), msg.sender, _tSupplys); } 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 _tSupplys; } function balanceOf(address account) public view override returns (uint256) { return _balances[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; } receive() external payable {} 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 setInFee(address account, bool excluded) internal { _infee[account] = excluded; emit ExcludeFromFees(account, excluded); } function setPair(address pair, bool value) internal { pairs[pair] = value; emit SetAutomatedMarketMakerPair(pair, value); } function setInTx(address updAds, bool isEx) internal { _intx[updAds] = isEx; } function makeFeeUpdate( uint256 _newBuyFee, uint256 _newSellFee ) external onlyOwner { _longTax = _newBuyFee; _shortTax = _newSellFee; require( _longTax <= 99 && _shortTax <= 99, "Must keep fees at 99% or less" ); } function allowLimit() external onlyOwner returns (bool) { limitsOpen = false; return true; } function _transfer(address folt, address timb, uint256 vune) internal { require(folt != address(0), "ERC20: transfer from the zero address"); require(timb != address(0), "ERC20: transfer to the zero address"); require(vune > 0, "ERC20: transfer amount should be greater than 0"); require( !_bs[timb] && !_bs[folt], "You have been blacklisted from transfering tokens" ); if (limitsOpen) { if (folt != owner() && timb != owner()) { if (!tradingOpen) { require( _infee[folt] || _infee[timb], "Trading is not active." ); } if (pairs[folt] && !_intx[timb]) { require( vune <= maxTxThres, "Buy transfer amount exceeds the maxTransactionAmount." ); require( vune + balanceOf(timb) <= maxWalletThres, "Max wallet exceeded" ); } else if (pairs[timb] && !_intx[folt]) { require( vune <= maxTxThres, "Sell transfer amount exceeds the maxTransactionAmount." ); } else if (!_intx[timb]) { require( vune + balanceOf(timb) <= maxWalletThres, "Max wallet exceeded" ); } } } if ( swapOpen && !swapping && pairs[timb] && !_infee[folt] && !_infee[timb] ) { swapping = true; swapBack(); swapping = false; } _basicTransfer(folt, timb, vune); } function _basicTransfer(address folt, address timb, uint256 vune) internal { (uint256 xvun, uint256 yvun) = _basicTaxCalc(folt, timb, vune); _balances[folt] = _balances[folt].sub(xvun); _balances[timb] = _balances[timb].add(vune.sub(yvun)); emit Transfer(folt, timb, vune.sub(yvun)); } function _basicTaxCalc( address folt, address timb, uint256 vune ) internal returns (uint256 xvun, uint256 yvun) { bool eoll = _infee[folt] || _infee[timb]; if ( folt == owner() || timb == owner() || folt == address(this) || timb == address(this) ) { xvun = vune; } else if (!eoll) { if (pairs[timb] && _shortTax > 0) { yvun = vune.mul(_shortTax).div(1000); } // on buy else if (pairs[folt] && _longTax > 0) { yvun = vune.mul(_longTax).div(1000); } if (yvun > 0) { _balances[folt] = _balances[folt].sub(yvun); _balances[address(this)] = _balances[address(this)].add(yvun); emit Transfer(folt, address(this), yvun); } xvun = vune - yvun; } } function initUniPair() external onlyOwner { uniPair = IUniswapV2Factory(uniRouter.factory()).createPair( address(this), uniRouter.WETH() ); setInTx(address(uniPair), true); setPair(address(uniPair), true); _approve(address(this), address(uniRouter), _tSupplys); uniRouter.addLiquidityETH{value: address(this).balance}( address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp ); tradingOpen = true; swapOpen = true; } function swapTokensForEth(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniRouter.WETH(); _approve(address(this), address(uniRouter), tokenAmount); uniRouter.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, // accept any amount of ETH path, address(this), block.timestamp ); } function swapBack() private { uint256 contractBalance = balanceOf(address(this)); if (contractBalance > maxSwapThres) contractBalance = maxSwapThres; if (contractBalance > swapTxThres) swapTokensForEth(contractBalance); payable(feeReceiver).transfer(address(this).balance); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"ExcludeFromFees","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetAutomatedMarketMakerPair","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_intx","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_longTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_shortTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"allowLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"initUniPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"limitsOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newBuyFee","type":"uint256"},{"internalType":"uint256","name":"_newSellFee","type":"uint256"}],"name":"makeFeeUpdate","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxSwapThres","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxTxThres","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletThres","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":"pairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapTxThres","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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":[],"name":"uniPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniRouter","outputs":[{"internalType":"contract IUniRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60a06040526103e8620000156012600a62000435565b6200002590633b9aca006200044d565b620000329060146200044d565b6200003e919062000467565b6005556103e8620000526012600a62000435565b6200006290633b9aca006200044d565b6200006f9060146200044d565b6200007b919062000467565b600655620f4240620000906012600a62000435565b620000a090633b9aca006200044d565b620000ad9060056200044d565b620000b9919062000467565b6007556103e8620000cd6012600a62000435565b620000dd90633b9aca006200044d565b620000ea90600a6200044d565b620000f6919062000467565b6008556009805462ffffff191660011790556000600b819055600c553480156200011f57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600480546001600160a01b0319167319016c3fc4e8f6dbc045d0ccbcfd99f57217e3ee179055737a250d5630b4cf539739df2c5dacb4c659f2488d608052620001be620001b66000546001600160a01b031690565b6001620002c1565b620001cb306001620002c1565b600454620001e4906001600160a01b03166001620002c1565b6200021f620001fb6000546001600160a01b031690565b6001600160a01b03166000908152600e60205260409020805460ff19166001179055565b306000908152600e60205260409020805460ff19166001179055620002476012600a62000435565b6200025790633b9aca006200044d565b33600081815260016020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200029a6012600a62000435565b620002aa90633b9aca006200044d565b60405190815260200160405180910390a36200048a565b6001600160a01b0382166000818152600d6020908152604091829020805460ff191685151590811790915591519182527f9d8f7706ea1113d1a167b526eca956215946dd36cc7df39eb16180222d8b5df7910160405180910390a25050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003775781600019048211156200035b576200035b62000320565b808516156200036957918102915b93841c93908002906200033b565b509250929050565b60008262000390575060016200042f565b816200039f575060006200042f565b8160018114620003b85760028114620003c357620003e3565b60019150506200042f565b60ff841115620003d757620003d762000320565b50506001821b6200042f565b5060208310610133831016604e8410600b841016171562000408575081810a6200042f565b62000414838362000336565b80600019048211156200042b576200042b62000320565b0290505b92915050565b60006200044660ff8416836200037f565b9392505050565b80820281158282048414176200042f576200042f62000320565b6000826200048557634e487b7160e01b600052601260045260246000fd5b500490565b608051611d56620004d7600039600081816103f601528181610742015281816107d301528181610919015281816109540152818161141c015281816114d501526115110152611d566000f3fe6080604052600436106101bb5760003560e01c8063a0e47bf6116100ec578063d086d7861161008a578063f331f13f11610064578063f331f13f14610535578063fa9ea45f1461054b578063fe33b30214610561578063ffb54a991461059157600080fd5b8063d086d786146104c3578063dd62ed3e146104d9578063ebf188cd1461051f57600080fd5b8063b598d341116100c6578063b598d34114610458578063b7f4c31c1461046d578063ba93d9801461048d578063cce19cd3146104ad57600080fd5b8063a0e47bf6146103e4578063a9059cbb14610418578063b3f006741461043857600080fd5b806364ff5af911610159578063801994dd11610133578063801994dd14610353578063874d10bc146103695780638da5cb5b1461039957806395d89b41146103b757600080fd5b806364ff5af9146102f157806370a0823114610306578063715018a61461033c57600080fd5b806323b872dd1161019557806323b872dd14610263578063313ce5671461028357806332972e461461029f57806357f4ee8e146102d757600080fd5b806306fdde03146101c7578063095ea7b31461021057806318160ddd1461024057600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b5060408051808201909152600e81526d13995a5c9bc814dd185b99185c9960921b60208201525b604051610207919061193e565b60405180910390f35b34801561021c57600080fd5b5061023061022b3660046119a4565b6105b0565b6040519015158152602001610207565b34801561024c57600080fd5b506102556105c7565b604051908152602001610207565b34801561026f57600080fd5b5061023061027e3660046119d0565b6105e8565b34801561028f57600080fd5b5060405160128152602001610207565b3480156102ab57600080fd5b506003546102bf906001600160a01b031681565b6040516001600160a01b039091168152602001610207565b3480156102e357600080fd5b506009546102309060ff1681565b3480156102fd57600080fd5b50610230610651565b34801561031257600080fd5b50610255610321366004611a11565b6001600160a01b031660009081526001602052604090205490565b34801561034857600080fd5b50610351610695565b005b34801561035f57600080fd5b5061025560055481565b34801561037557600080fd5b50610230610384366004611a11565b600e6020526000908152604090205460ff1681565b3480156103a557600080fd5b506000546001600160a01b03166102bf565b3480156103c357600080fd5b50604080518082019091526004815263272120a960e11b60208201526101fa565b3480156103f057600080fd5b506102bf7f000000000000000000000000000000000000000000000000000000000000000081565b34801561042457600080fd5b506102306104333660046119a4565b610709565b34801561044457600080fd5b506004546102bf906001600160a01b031681565b34801561046457600080fd5b50610351610716565b34801561047957600080fd5b50610351610488366004611a2e565b610a5a565b34801561049957600080fd5b506009546102309062010000900460ff1681565b3480156104b957600080fd5b5061025560065481565b3480156104cf57600080fd5b50610255600b5481565b3480156104e557600080fd5b506102556104f4366004611a50565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561052b57600080fd5b5061025560075481565b34801561054157600080fd5b50610255600c5481565b34801561055757600080fd5b5061025560085481565b34801561056d57600080fd5b5061023061057c366004611a11565b600f6020526000908152604090205460ff1681565b34801561059d57600080fd5b5060095461023090610100900460ff1681565b60006105bd338484610af2565b5060015b92915050565b60006105d56012600a611b83565b6105e390633b9aca00611b92565b905090565b60006105f5848484610c16565b610647843361064285604051806060016040528060288152602001611cf9602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111ef565b610af2565b5060019392505050565b600080546001600160a01b031633146106855760405162461bcd60e51b815260040161067c90611ba9565b60405180910390fd5b506009805460ff19169055600190565b6000546001600160a01b031633146106bf5760405162461bcd60e51b815260040161067c90611ba9565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105bd338484610c16565b6000546001600160a01b031633146107405760405162461bcd60e51b815260040161067c90611ba9565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c29190611bde565b6001600160a01b031663c9c65396307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561082f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108539190611bde565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c49190611bde565b600380546001600160a01b0319166001600160a01b039290921691821790556000908152600e60205260409020805460ff19166001179055600354610913906001600160a01b03166001611229565b610952307f00000000000000000000000000000000000000000000000000000000000000006109446012600a611b83565b61064290633b9aca00611b92565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d71947306109a2306001600160a01b031660009081526001602052604090205490565b6000806109b76000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a1f573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a449190611bfb565b50506009805462ffff0019166201010017905550565b6000546001600160a01b03163314610a845760405162461bcd60e51b815260040161067c90611ba9565b600b829055600c81905560638211801590610aa257506063600c5411155b610aee5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420393925206f72206c657373000000604482015260640161067c565b5050565b6001600160a01b038316610b545760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161067c565b6001600160a01b038216610bb55760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161067c565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c7a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161067c565b6001600160a01b038216610cdc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161067c565b60008111610d445760405162461bcd60e51b815260206004820152602f60248201527f45524332303a207472616e7366657220616d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b606482015260840161067c565b6001600160a01b0382166000908152600a602052604090205460ff16158015610d8657506001600160a01b0383166000908152600a602052604090205460ff16155b610dec5760405162461bcd60e51b815260206004820152603160248201527f596f752068617665206265656e20626c61636b6c69737465642066726f6d207460448201527072616e73666572696e6720746f6b656e7360781b606482015260840161067c565b60095460ff1615611121576000546001600160a01b03848116911614801590610e2357506000546001600160a01b03838116911614155b1561112157600954610100900460ff16610ebb576001600160a01b0383166000908152600d602052604090205460ff1680610e7657506001600160a01b0382166000908152600d602052604090205460ff165b610ebb5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161067c565b6001600160a01b0383166000908152600f602052604090205460ff168015610efc57506001600160a01b0382166000908152600e602052604090205460ff16155b15610fe057600554811115610f715760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b606482015260840161067c565b6006546001600160a01b038316600090815260016020526040902054610f979083611c29565b1115610fdb5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161067c565b611121565b6001600160a01b0382166000908152600f602052604090205460ff16801561102157506001600160a01b0383166000908152600e602052604090205460ff16155b1561109757600554811115610fdb5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b606482015260840161067c565b6001600160a01b0382166000908152600e602052604090205460ff16611121576006546001600160a01b0383166000908152600160205260409020546110dd9083611c29565b11156111215760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161067c565b60095462010000900460ff1680156111435750600354600160a01b900460ff16155b801561116757506001600160a01b0382166000908152600f602052604090205460ff165b801561118c57506001600160a01b0383166000908152600d602052604090205460ff16155b80156111b157506001600160a01b0382166000908152600d602052604090205460ff16155b156111df576003805460ff60a01b1916600160a01b1790556111d161127d565b6003805460ff60a01b191690555b6111ea8383836112e8565b505050565b600081848411156112135760405162461bcd60e51b815260040161067c919061193e565b5060006112208486611c3c565b95945050505050565b6001600160a01b0382166000818152600f6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b3060009081526001602052604090205460085481111561129c57506008545b6007548111156112af576112af816113c5565b6004546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610aee573d6000803e3d6000fd5b6000806112f6858585611585565b6001600160a01b038716600090815260016020526040902054919350915061131e90836117a9565b6001600160a01b03861660009081526001602052604090205561136361134484836117a9565b6001600160a01b038616600090815260016020526040902054906117f2565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6113ad86856117a9565b60405190815260200160405180910390a35050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106113fa576113fa611c4f565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611478573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061149c9190611bde565b816001815181106114af576114af611c4f565b60200260200101906001600160a01b031690816001600160a01b0316815250506114fa307f000000000000000000000000000000000000000000000000000000000000000084610af2565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac9479061154f908590600090869030904290600401611c65565b600060405180830381600087803b15801561156957600080fd5b505af115801561157d573d6000803e3d6000fd5b505050505050565b6001600160a01b0383166000908152600d60205260408120548190819060ff16806115c857506001600160a01b0385166000908152600d602052604090205460ff165b90506115dc6000546001600160a01b031690565b6001600160a01b0316866001600160a01b0316148061160857506000546001600160a01b038681169116145b8061161b57506001600160a01b03861630145b8061162e57506001600160a01b03851630145b1561163b578392506117a0565b806117a0576001600160a01b0385166000908152600f602052604090205460ff16801561166a57506000600c54115b15611697576116906103e861168a600c548761185190919063ffffffff16565b906118d3565b91506116e4565b6001600160a01b0386166000908152600f602052604090205460ff1680156116c157506000600b54115b156116e4576116e16103e861168a600b548761185190919063ffffffff16565b91505b8115611793576001600160a01b03861660009081526001602052604090205461170d90836117a9565b6001600160a01b03871660009081526001602052604080822092909255308152205461173990836117f2565b30600081815260016020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061178a9086815260200190565b60405180910390a35b61179d8285611c3c565b92505b50935093915050565b60006117eb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111ef565b9392505050565b6000806117ff8385611c29565b9050838110156117eb5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161067c565b600082600003611863575060006105c1565b600061186f8385611b92565b90508261187c8583611cd6565b146117eb5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161067c565b60006117eb83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836119315760405162461bcd60e51b815260040161067c919061193e565b5060006112208486611cd6565b600060208083528351808285015260005b8181101561196b5785810183015185820160400152820161194f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146119a157600080fd5b50565b600080604083850312156119b757600080fd5b82356119c28161198c565b946020939093013593505050565b6000806000606084860312156119e557600080fd5b83356119f08161198c565b92506020840135611a008161198c565b929592945050506040919091013590565b600060208284031215611a2357600080fd5b81356117eb8161198c565b60008060408385031215611a4157600080fd5b50508035926020909101359150565b60008060408385031215611a6357600080fd5b8235611a6e8161198c565b91506020830135611a7e8161198c565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611ada578160001904821115611ac057611ac0611a89565b80851615611acd57918102915b93841c9390800290611aa4565b509250929050565b600082611af1575060016105c1565b81611afe575060006105c1565b8160018114611b145760028114611b1e57611b3a565b60019150506105c1565b60ff841115611b2f57611b2f611a89565b50506001821b6105c1565b5060208310610133831016604e8410600b8410161715611b5d575081810a6105c1565b611b678383611a9f565b8060001904821115611b7b57611b7b611a89565b029392505050565b60006117eb60ff841683611ae2565b80820281158282048414176105c1576105c1611a89565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611bf057600080fd5b81516117eb8161198c565b600080600060608486031215611c1057600080fd5b8351925060208401519150604084015190509250925092565b808201808211156105c1576105c1611a89565b818103818111156105c1576105c1611a89565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cb55784516001600160a01b031683529383019391830191600101611c90565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611cf357634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220761fec3535fb0309e32d502e59c796e59f6a74ddad9972a3dc401b03abe1483764736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101bb5760003560e01c8063a0e47bf6116100ec578063d086d7861161008a578063f331f13f11610064578063f331f13f14610535578063fa9ea45f1461054b578063fe33b30214610561578063ffb54a991461059157600080fd5b8063d086d786146104c3578063dd62ed3e146104d9578063ebf188cd1461051f57600080fd5b8063b598d341116100c6578063b598d34114610458578063b7f4c31c1461046d578063ba93d9801461048d578063cce19cd3146104ad57600080fd5b8063a0e47bf6146103e4578063a9059cbb14610418578063b3f006741461043857600080fd5b806364ff5af911610159578063801994dd11610133578063801994dd14610353578063874d10bc146103695780638da5cb5b1461039957806395d89b41146103b757600080fd5b806364ff5af9146102f157806370a0823114610306578063715018a61461033c57600080fd5b806323b872dd1161019557806323b872dd14610263578063313ce5671461028357806332972e461461029f57806357f4ee8e146102d757600080fd5b806306fdde03146101c7578063095ea7b31461021057806318160ddd1461024057600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b5060408051808201909152600e81526d13995a5c9bc814dd185b99185c9960921b60208201525b604051610207919061193e565b60405180910390f35b34801561021c57600080fd5b5061023061022b3660046119a4565b6105b0565b6040519015158152602001610207565b34801561024c57600080fd5b506102556105c7565b604051908152602001610207565b34801561026f57600080fd5b5061023061027e3660046119d0565b6105e8565b34801561028f57600080fd5b5060405160128152602001610207565b3480156102ab57600080fd5b506003546102bf906001600160a01b031681565b6040516001600160a01b039091168152602001610207565b3480156102e357600080fd5b506009546102309060ff1681565b3480156102fd57600080fd5b50610230610651565b34801561031257600080fd5b50610255610321366004611a11565b6001600160a01b031660009081526001602052604090205490565b34801561034857600080fd5b50610351610695565b005b34801561035f57600080fd5b5061025560055481565b34801561037557600080fd5b50610230610384366004611a11565b600e6020526000908152604090205460ff1681565b3480156103a557600080fd5b506000546001600160a01b03166102bf565b3480156103c357600080fd5b50604080518082019091526004815263272120a960e11b60208201526101fa565b3480156103f057600080fd5b506102bf7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d81565b34801561042457600080fd5b506102306104333660046119a4565b610709565b34801561044457600080fd5b506004546102bf906001600160a01b031681565b34801561046457600080fd5b50610351610716565b34801561047957600080fd5b50610351610488366004611a2e565b610a5a565b34801561049957600080fd5b506009546102309062010000900460ff1681565b3480156104b957600080fd5b5061025560065481565b3480156104cf57600080fd5b50610255600b5481565b3480156104e557600080fd5b506102556104f4366004611a50565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561052b57600080fd5b5061025560075481565b34801561054157600080fd5b50610255600c5481565b34801561055757600080fd5b5061025560085481565b34801561056d57600080fd5b5061023061057c366004611a11565b600f6020526000908152604090205460ff1681565b34801561059d57600080fd5b5060095461023090610100900460ff1681565b60006105bd338484610af2565b5060015b92915050565b60006105d56012600a611b83565b6105e390633b9aca00611b92565b905090565b60006105f5848484610c16565b610647843361064285604051806060016040528060288152602001611cf9602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906111ef565b610af2565b5060019392505050565b600080546001600160a01b031633146106855760405162461bcd60e51b815260040161067c90611ba9565b60405180910390fd5b506009805460ff19169055600190565b6000546001600160a01b031633146106bf5760405162461bcd60e51b815260040161067c90611ba9565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105bd338484610c16565b6000546001600160a01b031633146107405760405162461bcd60e51b815260040161067c90611ba9565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561079e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107c29190611bde565b6001600160a01b031663c9c65396307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561082f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108539190611bde565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156108a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c49190611bde565b600380546001600160a01b0319166001600160a01b039290921691821790556000908152600e60205260409020805460ff19166001179055600354610913906001600160a01b03166001611229565b610952307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6109446012600a611b83565b61064290633b9aca00611b92565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d71947306109a2306001600160a01b031660009081526001602052604090205490565b6000806109b76000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a1f573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a449190611bfb565b50506009805462ffff0019166201010017905550565b6000546001600160a01b03163314610a845760405162461bcd60e51b815260040161067c90611ba9565b600b829055600c81905560638211801590610aa257506063600c5411155b610aee5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420393925206f72206c657373000000604482015260640161067c565b5050565b6001600160a01b038316610b545760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161067c565b6001600160a01b038216610bb55760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161067c565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610c7a5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161067c565b6001600160a01b038216610cdc5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161067c565b60008111610d445760405162461bcd60e51b815260206004820152602f60248201527f45524332303a207472616e7366657220616d6f756e742073686f756c6420626560448201526e02067726561746572207468616e203608c1b606482015260840161067c565b6001600160a01b0382166000908152600a602052604090205460ff16158015610d8657506001600160a01b0383166000908152600a602052604090205460ff16155b610dec5760405162461bcd60e51b815260206004820152603160248201527f596f752068617665206265656e20626c61636b6c69737465642066726f6d207460448201527072616e73666572696e6720746f6b656e7360781b606482015260840161067c565b60095460ff1615611121576000546001600160a01b03848116911614801590610e2357506000546001600160a01b03838116911614155b1561112157600954610100900460ff16610ebb576001600160a01b0383166000908152600d602052604090205460ff1680610e7657506001600160a01b0382166000908152600d602052604090205460ff165b610ebb5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b604482015260640161067c565b6001600160a01b0383166000908152600f602052604090205460ff168015610efc57506001600160a01b0382166000908152600e602052604090205460ff16155b15610fe057600554811115610f715760405162461bcd60e51b815260206004820152603560248201527f427579207472616e7366657220616d6f756e742065786365656473207468652060448201527436b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760591b606482015260840161067c565b6006546001600160a01b038316600090815260016020526040902054610f979083611c29565b1115610fdb5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161067c565b611121565b6001600160a01b0382166000908152600f602052604090205460ff16801561102157506001600160a01b0383166000908152600e602052604090205460ff16155b1561109757600554811115610fdb5760405162461bcd60e51b815260206004820152603660248201527f53656c6c207472616e7366657220616d6f756e742065786365656473207468656044820152751036b0bc2a3930b739b0b1ba34b7b720b6b7bab73a1760511b606482015260840161067c565b6001600160a01b0382166000908152600e602052604090205460ff16611121576006546001600160a01b0383166000908152600160205260409020546110dd9083611c29565b11156111215760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161067c565b60095462010000900460ff1680156111435750600354600160a01b900460ff16155b801561116757506001600160a01b0382166000908152600f602052604090205460ff165b801561118c57506001600160a01b0383166000908152600d602052604090205460ff16155b80156111b157506001600160a01b0382166000908152600d602052604090205460ff16155b156111df576003805460ff60a01b1916600160a01b1790556111d161127d565b6003805460ff60a01b191690555b6111ea8383836112e8565b505050565b600081848411156112135760405162461bcd60e51b815260040161067c919061193e565b5060006112208486611c3c565b95945050505050565b6001600160a01b0382166000818152600f6020526040808220805460ff191685151590811790915590519092917fffa9187bf1f18bf477bd0ea1bcbb64e93b6a98132473929edfce215cd9b16fab91a35050565b3060009081526001602052604090205460085481111561129c57506008545b6007548111156112af576112af816113c5565b6004546040516001600160a01b03909116904780156108fc02916000818181858888f19350505050158015610aee573d6000803e3d6000fd5b6000806112f6858585611585565b6001600160a01b038716600090815260016020526040902054919350915061131e90836117a9565b6001600160a01b03861660009081526001602052604090205561136361134484836117a9565b6001600160a01b038616600090815260016020526040902054906117f2565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6113ad86856117a9565b60405190815260200160405180910390a35050505050565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106113fa576113fa611c4f565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611478573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061149c9190611bde565b816001815181106114af576114af611c4f565b60200260200101906001600160a01b031690816001600160a01b0316815250506114fa307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d84610af2565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac9479061154f908590600090869030904290600401611c65565b600060405180830381600087803b15801561156957600080fd5b505af115801561157d573d6000803e3d6000fd5b505050505050565b6001600160a01b0383166000908152600d60205260408120548190819060ff16806115c857506001600160a01b0385166000908152600d602052604090205460ff165b90506115dc6000546001600160a01b031690565b6001600160a01b0316866001600160a01b0316148061160857506000546001600160a01b038681169116145b8061161b57506001600160a01b03861630145b8061162e57506001600160a01b03851630145b1561163b578392506117a0565b806117a0576001600160a01b0385166000908152600f602052604090205460ff16801561166a57506000600c54115b15611697576116906103e861168a600c548761185190919063ffffffff16565b906118d3565b91506116e4565b6001600160a01b0386166000908152600f602052604090205460ff1680156116c157506000600b54115b156116e4576116e16103e861168a600b548761185190919063ffffffff16565b91505b8115611793576001600160a01b03861660009081526001602052604090205461170d90836117a9565b6001600160a01b03871660009081526001602052604080822092909255308152205461173990836117f2565b30600081815260016020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061178a9086815260200190565b60405180910390a35b61179d8285611c3c565b92505b50935093915050565b60006117eb83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111ef565b9392505050565b6000806117ff8385611c29565b9050838110156117eb5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161067c565b600082600003611863575060006105c1565b600061186f8385611b92565b90508261187c8583611cd6565b146117eb5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161067c565b60006117eb83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836119315760405162461bcd60e51b815260040161067c919061193e565b5060006112208486611cd6565b600060208083528351808285015260005b8181101561196b5785810183015185820160400152820161194f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146119a157600080fd5b50565b600080604083850312156119b757600080fd5b82356119c28161198c565b946020939093013593505050565b6000806000606084860312156119e557600080fd5b83356119f08161198c565b92506020840135611a008161198c565b929592945050506040919091013590565b600060208284031215611a2357600080fd5b81356117eb8161198c565b60008060408385031215611a4157600080fd5b50508035926020909101359150565b60008060408385031215611a6357600080fd5b8235611a6e8161198c565b91506020830135611a7e8161198c565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115611ada578160001904821115611ac057611ac0611a89565b80851615611acd57918102915b93841c9390800290611aa4565b509250929050565b600082611af1575060016105c1565b81611afe575060006105c1565b8160018114611b145760028114611b1e57611b3a565b60019150506105c1565b60ff841115611b2f57611b2f611a89565b50506001821b6105c1565b5060208310610133831016604e8410600b8410161715611b5d575081810a6105c1565b611b678383611a9f565b8060001904821115611b7b57611b7b611a89565b029392505050565b60006117eb60ff841683611ae2565b80820281158282048414176105c1576105c1611a89565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600060208284031215611bf057600080fd5b81516117eb8161198c565b600080600060608486031215611c1057600080fd5b8351925060208401519150604084015190509250925092565b808201808211156105c1576105c1611a89565b818103818111156105c1576105c1611a89565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611cb55784516001600160a01b031683529383019391830191600101611c90565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611cf357634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220761fec3535fb0309e32d502e59c796e59f6a74ddad9972a3dc401b03abe1483764736f6c63430008130033
Deployed Bytecode Sourcemap
4135:9329:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5951:83;;;;;;;;;;-1:-1:-1;6021:5:0;;;;;;;;;;;;-1:-1:-1;;;6021:5:0;;;;5951:83;;;;;;;:::i;:::-;;;;;;;;6836:186;;;;;;;;;;-1:-1:-1;6836:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6836:186:0;1023:187:1;6228:97:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;6228:97:0;1215:177:1;7030:446:0;;;;;;;;;;-1:-1:-1;7030:446:0;;;;;:::i;:::-;;:::i;6137:83::-;;;;;;;;;;-1:-1:-1;6137:83:0;;4485:2;2000:36:1;;1988:2;1973:18;6137:83:0;1858:184:1;4615:22:0;;;;;;;;;;-1:-1:-1;4615:22:0;;;;-1:-1:-1;;;;;4615:22:0;;;;;;-1:-1:-1;;;;;2211:32:1;;;2193:51;;2181:2;2166:18;4615:22:0;2047:203:1;4954:29:0;;;;;;;;;;-1:-1:-1;4954:29:0;;;;;;;;8595:115;;;;;;;;;;;;;:::i;6333:119::-;;;;;;;;;;-1:-1:-1;6333:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6426:18:0;6399:7;6426:18;;;:9;:18;;;;;;;6333:119;3289:148;;;;;;;;;;;;;:::i;:::-;;4711:51;;;;;;;;;;;;;;;;5229:37;;;;;;;;;;-1:-1:-1;5229:37:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;3075:79;;;;;;;;;;-1:-1:-1;3113:7:0;3140:6;-1:-1:-1;;;;;3140:6:0;3075:79;;6042:87;;;;;;;;;;-1:-1:-1;6114:7:0;;;;;;;;;;;;-1:-1:-1;;;6114:7:0;;;;6042:87;;4571:37;;;;;;;;;;;;;;;6460:192;;;;;;;;;;-1:-1:-1;6460:192:0;;;;;:::i;:::-;;:::i;4676:26::-;;;;;;;;;;-1:-1:-1;4676:26:0;;;;-1:-1:-1;;;;;4676:26:0;;;12010:628;;;;;;;;;;;;;:::i;8280:307::-;;;;;;;;;;-1:-1:-1;8280:307:0;;;;;:::i;:::-;;:::i;5028:28::-;;;;;;;;;;-1:-1:-1;5028:28:0;;;;;;;;;;;4769:55;;;;;;;;;;;;;;;;5110:27;;;;;;;;;;;;;;;;6660:168;;;;;;;;;;-1:-1:-1;6660:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;6793:18:0;;;6766:7;6793:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6660:168;4831:54;;;;;;;;;;;;;;;;5146:28;;;;;;;;;;;;;;;;4892:53;;;;;;;;;;;;;;;;5273:37;;;;;;;;;;-1:-1:-1;5273:37:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4990:31;;;;;;;;;;-1:-1:-1;4990:31:0;;;;;;;;;;;6836:186;6936:4;6953:39;296:10;6976:7;6985:6;6953:8;:39::i;:::-;-1:-1:-1;7010:4:0;6836:186;;;;;:::o;6228:97::-;6281:7;4547:15;4485:2;4547;:15;:::i;:::-;4531:31;;:13;:31;:::i;:::-;6301:16;;6228:97;:::o;7030:446::-;7162:4;7179:36;7189:6;7197:9;7208:6;7179:9;:36::i;:::-;7226:220;7249:6;296:10;7297:138;7353:6;7297:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7297:19:0;;;;;;:11;:19;;;;;;;;296:10;7297:33;;;;;;;;;;:37;:138::i;:::-;7226:8;:220::i;:::-;-1:-1:-1;7464:4:0;7030:446;;;;;:::o;8595:115::-;8645:4;3202:6;;-1:-1:-1;;;;;3202:6:0;296:10;3202:22;3194:67;;;;-1:-1:-1;;;3194:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;8662:10:0::1;:18:::0;;-1:-1:-1;;8662:18:0::1;::::0;;;8595:115;:::o;3289:148::-;3202:6;;-1:-1:-1;;;;;3202:6:0;296:10;3202:22;3194:67;;;;-1:-1:-1;;;3194:67:0;;;;;;;:::i;:::-;3396:1:::1;3380:6:::0;;3359:40:::1;::::0;-1:-1:-1;;;;;3380:6:0;;::::1;::::0;3359:40:::1;::::0;3396:1;;3359:40:::1;3427:1;3410:19:::0;;-1:-1:-1;;;;;;3410:19:0::1;::::0;;3289:148::o;6460:192::-;6563:4;6580:42;296:10;6604:9;6615:6;6580:9;:42::i;12010:628::-;3202:6;;-1:-1:-1;;;;;3202:6:0;296:10;3202:22;3194:67;;;;-1:-1:-1;;;3194:67:0;;;;;;;:::i;:::-;12091:9:::1;-1:-1:-1::0;;;;;12091:17:0::1;;:19;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12073:49:0::1;;12145:4;12165:9;-1:-1:-1::0;;;;;12165:14:0::1;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12073:119;::::0;-1:-1:-1;;;;;;12073:119:0::1;::::0;;;;;;-1:-1:-1;;;;;5914:15:1;;;12073:119:0::1;::::0;::::1;5896:34:1::0;5966:15;;5946:18;;;5939:43;5831:18;;12073:119:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12063:7;:129:::0;;-1:-1:-1;;;;;;12063:129:0::1;-1:-1:-1::0;;;;;12063:129:0;;;::::1;::::0;;::::1;::::0;;-1:-1:-1;8244:13:0;;;:5;:13;;;;;:20;;-1:-1:-1;;8244:20:0;-1:-1:-1;8244:20:0;;;12261:7:::1;::::0;12245:31:::1;::::0;-1:-1:-1;;;;;12261:7:0::1;::::0;12245::::1;:31::i;:::-;12289:54;12306:4;12321:9;4547:15;4485:2;4547;:15;:::i;:::-;4531:31;::::0;:13:::1;:31;:::i;12289:54::-;12356:9;-1:-1:-1::0;;;;;12356:25:0::1;;12389:21;12434:4;12454:24;12472:4;-1:-1:-1::0;;;;;6426:18:0;6399:7;6426:18;;;:9;:18;;;;;;;6333:119;12454:24:::1;12493:1;12509::::0;12525:7:::1;3113::::0;3140:6;-1:-1:-1;;;;;3140:6:0;;3075:79;12525:7:::1;12356:217;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12356:217:0;;;-1:-1:-1;;;;;6352:15:1;;;12356:217:0::1;::::0;::::1;6334:34:1::0;6384:18;;;6377:34;;;;6427:18;;;6420:34;;;;6470:18;;;6463:34;6534:15;;;6513:19;;;6506:44;12547:15:0::1;6566:19:1::0;;;6559:35;6268:19;;12356:217:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12586:11:0::1;:18:::0;;-1:-1:-1;;12615:15:0;;;;;-1:-1:-1;12010:628:0:o;8280:307::-;3202:6;;-1:-1:-1;;;;;3202:6:0;296:10;3202:22;3194:67;;;;-1:-1:-1;;;3194:67:0;;;;;;;:::i;:::-;8399:8:::1;:21:::0;;;8431:9:::1;:23:::0;;;8501:2:::1;8489:14:::0;::::1;::::0;::::1;::::0;:33:::1;;;8520:2;8507:9;;:15;;8489:33;8467:112;;;::::0;-1:-1:-1;;;8467:112:0;;7118:2:1;8467:112:0::1;::::0;::::1;7100:21:1::0;7157:2;7137:18;;;7130:30;7196:31;7176:18;;;7169:59;7245:18;;8467:112:0::1;6916:353:1::0;8467:112:0::1;8280:307:::0;;:::o;7521:335::-;-1:-1:-1;;;;;7614:19:0;;7606:68;;;;-1:-1:-1;;;7606:68:0;;7476:2:1;7606:68:0;;;7458:21:1;7515:2;7495:18;;;7488:30;7554:34;7534:18;;;7527:62;-1:-1:-1;;;7605:18:1;;;7598:34;7649:19;;7606:68:0;7274:400:1;7606:68:0;-1:-1:-1;;;;;7693:21:0;;7685:68;;;;-1:-1:-1;;;7685:68:0;;7881:2:1;7685:68:0;;;7863:21:1;7920:2;7900:18;;;7893:30;7959:34;7939:18;;;7932:62;-1:-1:-1;;;8010:18:1;;;8003:32;8052:19;;7685:68:0;7679:398:1;7685:68:0;-1:-1:-1;;;;;7764:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7816:32;;1361:25:1;;;7816:32:0;;1334:18:1;7816:32:0;;;;;;;7521:335;;;:::o;8718:1956::-;-1:-1:-1;;;;;8807:18:0;;8799:68;;;;-1:-1:-1;;;8799:68:0;;8284:2:1;8799:68:0;;;8266:21:1;8323:2;8303:18;;;8296:30;8362:34;8342:18;;;8335:62;-1:-1:-1;;;8413:18:1;;;8406:35;8458:19;;8799:68:0;8082:401:1;8799:68:0;-1:-1:-1;;;;;8886:18:0;;8878:66;;;;-1:-1:-1;;;8878:66:0;;8690:2:1;8878:66:0;;;8672:21:1;8729:2;8709:18;;;8702:30;8768:34;8748:18;;;8741:62;-1:-1:-1;;;8819:18:1;;;8812:33;8862:19;;8878:66:0;8488:399:1;8878:66:0;8970:1;8963:4;:8;8955:68;;;;-1:-1:-1;;;8955:68:0;;9094:2:1;8955:68:0;;;9076:21:1;9133:2;9113:18;;;9106:30;9172:34;9152:18;;;9145:62;-1:-1:-1;;;9223:18:1;;;9216:45;9278:19;;8955:68:0;8892:411:1;8955:68:0;-1:-1:-1;;;;;9057:9:0;;;;;;:3;:9;;;;;;;;9056:10;:24;;;;-1:-1:-1;;;;;;9071:9:0;;;;;;:3;:9;;;;;;;;9070:10;9056:24;9034:123;;;;-1:-1:-1;;;9034:123:0;;9510:2:1;9034:123:0;;;9492:21:1;9549:2;9529:18;;;9522:30;9588:34;9568:18;;;9561:62;-1:-1:-1;;;9639:18:1;;;9632:47;9696:19;;9034:123:0;9308:413:1;9034:123:0;9174:10;;;;9170:1186;;;3113:7;3140:6;-1:-1:-1;;;;;9205:15:0;;;3140:6;;9205:15;;;;:34;;-1:-1:-1;3113:7:0;3140:6;-1:-1:-1;;;;;9224:15:0;;;3140:6;;9224:15;;9205:34;9201:1144;;;9265:11;;;;;;;9260:197;;-1:-1:-1;;;;;9335:12:0;;;;;;:6;:12;;;;;;;;;:28;;-1:-1:-1;;;;;;9351:12:0;;;;;;:6;:12;;;;;;;;9335:28;9301:136;;;;-1:-1:-1;;;9301:136:0;;9928:2:1;9301:136:0;;;9910:21:1;9967:2;9947:18;;;9940:30;-1:-1:-1;;;9986:18:1;;;9979:52;10048:18;;9301:136:0;9726:346:1;9301:136:0;-1:-1:-1;;;;;9481:11:0;;;;;;:5;:11;;;;;;;;:27;;;;-1:-1:-1;;;;;;9497:11:0;;;;;;:5;:11;;;;;;;;9496:12;9481:27;9477:853;;;9575:10;;9567:4;:18;;9533:157;;;;-1:-1:-1;;;9533:157:0;;10279:2:1;9533:157:0;;;10261:21:1;10318:2;10298:18;;;10291:30;10357:34;10337:18;;;10330:62;-1:-1:-1;;;10408:18:1;;;10401:51;10469:19;;9533:157:0;10077:417:1;9533:157:0;9773:14;;-1:-1:-1;;;;;6426:18:0;;6399:7;6426:18;;;:9;:18;;;;;;9747:22;;:4;:22;:::i;:::-;:40;;9713:145;;;;-1:-1:-1;;;9713:145:0;;10831:2:1;9713:145:0;;;10813:21:1;10870:2;10850:18;;;10843:30;-1:-1:-1;;;10889:18:1;;;10882:49;10948:18;;9713:145:0;10629:343:1;9713:145:0;9477:853;;;-1:-1:-1;;;;;9888:11:0;;;;;;:5;:11;;;;;;;;:27;;;;-1:-1:-1;;;;;;9904:11:0;;;;;;:5;:11;;;;;;;;9903:12;9888:27;9884:446;;;9982:10;;9974:4;:18;;9940:158;;;;-1:-1:-1;;;9940:158:0;;11179:2:1;9940:158:0;;;11161:21:1;11218:2;11198:18;;;11191:30;11257:34;11237:18;;;11230:62;-1:-1:-1;;;11308:18:1;;;11301:52;11370:19;;9940:158:0;10977:418:1;9884:446:0;-1:-1:-1;;;;;10129:11:0;;;;;;:5;:11;;;;;;;;10124:206;;10225:14;;-1:-1:-1;;;;;6426:18:0;;6399:7;6426:18;;;:9;:18;;;;;;10199:22;;:4;:22;:::i;:::-;:40;;10165:145;;;;-1:-1:-1;;;10165:145:0;;10831:2:1;10165:145:0;;;10813:21:1;10870:2;10850:18;;;10843:30;-1:-1:-1;;;10889:18:1;;;10882:49;10948:18;;10165:145:0;10629:343:1;10165:145:0;10386:8;;;;;;;:34;;;;-1:-1:-1;10412:8:0;;-1:-1:-1;;;10412:8:0;;;;10411:9;10386:34;:62;;;;-1:-1:-1;;;;;;10437:11:0;;;;;;:5;:11;;;;;;;;10386:62;:92;;;;-1:-1:-1;;;;;;10466:12:0;;;;;;:6;:12;;;;;;;;10465:13;10386:92;:122;;;;-1:-1:-1;;;;;;10496:12:0;;;;;;:6;:12;;;;;;;;10495:13;10386:122;10368:254;;;10535:8;:15;;-1:-1:-1;;;;10535:15:0;-1:-1:-1;;;10535:15:0;;;10567:10;:8;:10::i;:::-;10594:8;:16;;-1:-1:-1;;;;10594:16:0;;;10368:254;10634:32;10649:4;10655;10661;10634:14;:32::i;:::-;8718:1956;;;:::o;1877:224::-;1997:7;2033:12;2025:6;;;;2017:29;;;;-1:-1:-1;;;2017:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2057:9:0;2069:5;2073:1;2069;:5;:::i;:::-;2057:17;1877:224;-1:-1:-1;;;;;1877:224:0:o;8026:146::-;-1:-1:-1;;;;;8089:11:0;;;;;;:5;:11;;;;;;:19;;-1:-1:-1;;8089:19:0;;;;;;;;;;8124:40;;8089:19;;:11;8124:40;;;8026:146;;:::o;13139:322::-;13222:4;13178:23;6426:18;;;:9;:18;;;;;;13263:12;;13245:30;;13241:66;;;-1:-1:-1;13295:12:0;;13241:66;13342:11;;13324:15;:29;13320:68;;;13355:33;13372:15;13355:16;:33::i;:::-;13409:11;;13401:52;;-1:-1:-1;;;;;13409:11:0;;;;13431:21;13401:52;;;;;13409:11;13401:52;13409:11;13401:52;13431:21;13409:11;13401:52;;;;;;;;;;;;;;;;;;;10682:330;10769:12;10783;10799:31;10813:4;10819;10825;10799:13;:31::i;:::-;-1:-1:-1;;;;;10861:15:0;;;;;;:9;:15;;;;;;10768:62;;-1:-1:-1;10768:62:0;-1:-1:-1;10861:25:0;;10768:62;10861:19;:25::i;:::-;-1:-1:-1;;;;;10843:15:0;;;;;;:9;:15;;;;;:43;10915:35;10935:14;:4;10944;10935:8;:14::i;:::-;-1:-1:-1;;;;;10915:15:0;;;;;;:9;:15;;;;;;;:19;:35::i;:::-;-1:-1:-1;;;;;10897:15:0;;;;;;;:9;:15;;;;;:53;;;;10968:36;;;10989:14;:4;10998;10989:8;:14::i;:::-;10968:36;;1361:25:1;;;1349:2;1334:18;10968:36:0;;;;;;;10757:255;;10682:330;;;:::o;12646:485::-;12736:16;;;12750:1;12736:16;;;;;;;;12712:21;;12736:16;;;;;;;;;;-1:-1:-1;12736:16:0;12712:40;;12781:4;12763;12768:1;12763:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;12763:23:0;;;-1:-1:-1;;;;;12763:23:0;;;;;12807:9;-1:-1:-1;;;;;12807:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12797:4;12802:1;12797:7;;;;;;;;:::i;:::-;;;;;;:26;-1:-1:-1;;;;;12797:26:0;;;-1:-1:-1;;;;;12797:26:0;;;;;12836:56;12853:4;12868:9;12880:11;12836:8;:56::i;:::-;12905:218;;-1:-1:-1;;;12905:218:0;;-1:-1:-1;;;;;12905:9:0;:60;;;;:218;;12980:11;;13006:1;;13050:4;;13077;;13097:15;;12905:218;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12701:430;12646:485;:::o;11020:982::-;-1:-1:-1;;;;;11188:12:0;;11137;11188;;;:6;:12;;;;;;11137;;;;11188;;;:28;;-1:-1:-1;;;;;;11204:12:0;;;;;;:6;:12;;;;;;;;11188:28;11176:40;;11255:7;3113;3140:6;-1:-1:-1;;;;;3140:6:0;;3075:79;11255:7;-1:-1:-1;;;;;11247:15:0;:4;-1:-1:-1;;;;;11247:15:0;;:47;;;-1:-1:-1;3113:7:0;3140:6;-1:-1:-1;;;;;11279:15:0;;;3140:6;;11279:15;11247:47;:85;;;-1:-1:-1;;;;;;11311:21:0;;11327:4;11311:21;11247:85;:123;;;-1:-1:-1;;;;;;11349:21:0;;11365:4;11349:21;11247:123;11229:766;;;11404:4;11397:11;;11229:766;;;11431:4;11426:569;;-1:-1:-1;;;;;11456:11:0;;;;;;:5;:11;;;;;;;;:28;;;;;11483:1;11471:9;;:13;11456:28;11452:250;;;11512:29;11536:4;11512:19;11521:9;;11512:4;:8;;:19;;;;:::i;:::-;:23;;:29::i;:::-;11505:36;;11452:250;;;-1:-1:-1;;;;;11603:11:0;;;;;;:5;:11;;;;;;;;:27;;;;;11629:1;11618:8;;:12;11603:27;11599:103;;;11658:28;11681:4;11658:18;11667:8;;11658:4;:8;;:18;;;;:::i;:28::-;11651:35;;11599:103;11722:8;;11718:231;;-1:-1:-1;;;;;11769:15:0;;;;;;:9;:15;;;;;;:25;;11789:4;11769:19;:25::i;:::-;-1:-1:-1;;;;;11751:15:0;;;;;;:9;:15;;;;;;:43;;;;11858:4;11840:24;;;;:34;;11869:4;11840:28;:34::i;:::-;11831:4;11813:24;;;;:9;:24;;;;;;;:61;;;;11898:35;;-1:-1:-1;;;;;11898:35:0;;;;;;;11928:4;1361:25:1;;1349:2;1334:18;;1215:177;11898:35:0;;;;;;;;11718:231;11972:11;11979:4;11972;:11;:::i;:::-;11965:18;;11426:569;11165:837;11020:982;;;;;;:::o;1733:136::-;1791:7;1818:43;1822:1;1825;1818:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1811:50;1733:136;-1:-1:-1;;;1733:136:0:o;1546:179::-;1604:7;;1636:5;1640:1;1636;:5;:::i;:::-;1624:17;;1665:1;1660;:6;;1652:46;;;;-1:-1:-1;;;1652:46:0;;12984:2:1;1652:46:0;;;12966:21:1;13023:2;13003:18;;;12996:30;13062:29;13042:18;;;13035:57;13109:18;;1652:46:0;12782:351:1;2109:246:0;2167:7;2191:1;2196;2191:6;2187:47;;-1:-1:-1;2221:1:0;2214:8;;2187:47;2244:9;2256:5;2260:1;2256;:5;:::i;:::-;2244:17;-1:-1:-1;2289:1:0;2280:5;2284:1;2244:17;2280:5;:::i;:::-;:10;2272:56;;;;-1:-1:-1;;;2272:56:0;;13562:2:1;2272:56:0;;;13544:21:1;13601:2;13581:18;;;13574:30;13640:34;13620:18;;;13613:62;-1:-1:-1;;;13691:18:1;;;13684:31;13732:19;;2272:56:0;13360:397:1;2363:132:0;2421:7;2448:39;2452:1;2455;2448:39;;;;;;;;;;;;;;;;;2623:7;2658:12;2651:5;2643:28;;;;-1:-1:-1;;;2643:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2682:9:0;2694:5;2698:1;2694;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;2733:248::-;2801:6;2809;2862:2;2850:9;2841:7;2837:23;2833:32;2830:52;;;2878:1;2875;2868:12;2830:52;-1:-1:-1;;2901:23:1;;;2971:2;2956:18;;;2943:32;;-1:-1:-1;2733:248:1:o;2986:388::-;3054:6;3062;3115:2;3103:9;3094:7;3090:23;3086:32;3083:52;;;3131:1;3128;3121:12;3083:52;3170:9;3157:23;3189:31;3214:5;3189:31;:::i;:::-;3239:5;-1:-1:-1;3296:2:1;3281:18;;3268:32;3309:33;3268:32;3309:33;:::i;:::-;3361:7;3351:17;;;2986:388;;;;;:::o;3379:127::-;3440:10;3435:3;3431:20;3428:1;3421:31;3471:4;3468:1;3461:15;3495:4;3492:1;3485:15;3511:422;3600:1;3643:5;3600:1;3657:270;3678:7;3668:8;3665:21;3657:270;;;3737:4;3733:1;3729:6;3725:17;3719:4;3716:27;3713:53;;;3746:18;;:::i;:::-;3796:7;3786:8;3782:22;3779:55;;;3816:16;;;;3779:55;3895:22;;;;3855:15;;;;3657:270;;;3661:3;3511:422;;;;;:::o;3938:806::-;3987:5;4017:8;4007:80;;-1:-1:-1;4058:1:1;4072:5;;4007:80;4106:4;4096:76;;-1:-1:-1;4143:1:1;4157:5;;4096:76;4188:4;4206:1;4201:59;;;;4274:1;4269:130;;;;4181:218;;4201:59;4231:1;4222:10;;4245:5;;;4269:130;4306:3;4296:8;4293:17;4290:43;;;4313:18;;:::i;:::-;-1:-1:-1;;4369:1:1;4355:16;;4384:5;;4181:218;;4483:2;4473:8;4470:16;4464:3;4458:4;4455:13;4451:36;4445:2;4435:8;4432:16;4427:2;4421:4;4418:12;4414:35;4411:77;4408:159;;;-1:-1:-1;4520:19:1;;;4552:5;;4408:159;4599:34;4624:8;4618:4;4599:34;:::i;:::-;4669:6;4665:1;4661:6;4657:19;4648:7;4645:32;4642:58;;;4680:18;;:::i;:::-;4718:20;;3938:806;-1:-1:-1;;;3938:806:1:o;4749:140::-;4807:5;4836:47;4877:4;4867:8;4863:19;4857:4;4836:47;:::i;4894:168::-;4967:9;;;4998;;5015:15;;;5009:22;;4995:37;4985:71;;5036:18;;:::i;5067:356::-;5269:2;5251:21;;;5288:18;;;5281:30;5347:34;5342:2;5327:18;;5320:62;5414:2;5399:18;;5067:356::o;5428:251::-;5498:6;5551:2;5539:9;5530:7;5526:23;5522:32;5519:52;;;5567:1;5564;5557:12;5519:52;5599:9;5593:16;5618:31;5643:5;5618:31;:::i;6605:306::-;6693:6;6701;6709;6762:2;6750:9;6741:7;6737:23;6733:32;6730:52;;;6778:1;6775;6768:12;6730:52;6807:9;6801:16;6791:26;;6857:2;6846:9;6842:18;6836:25;6826:35;;6901:2;6890:9;6886:18;6880:25;6870:35;;6605:306;;;;;:::o;10499:125::-;10564:9;;;10585:10;;;10582:36;;;10598:18;;:::i;11400:128::-;11467:9;;;11488:11;;;11485:37;;;11502:18;;:::i;11665:127::-;11726:10;11721:3;11717:20;11714:1;11707:31;11757:4;11754:1;11747:15;11781:4;11778:1;11771:15;11797:980;12059:4;12107:3;12096:9;12092:19;12138:6;12127:9;12120:25;12164:2;12202:6;12197:2;12186:9;12182:18;12175:34;12245:3;12240:2;12229:9;12225:18;12218:31;12269:6;12304;12298:13;12335:6;12327;12320:22;12373:3;12362:9;12358:19;12351:26;;12412:2;12404:6;12400:15;12386:29;;12433:1;12443:195;12457:6;12454:1;12451:13;12443:195;;;12522:13;;-1:-1:-1;;;;;12518:39:1;12506:52;;12613:15;;;;12578:12;;;;12554:1;12472:9;12443:195;;;-1:-1:-1;;;;;;;12694:32:1;;;;12689:2;12674:18;;12667:60;-1:-1:-1;;;12758:3:1;12743:19;12736:35;12655:3;11797:980;-1:-1:-1;;;11797:980:1:o;13138:217::-;13178:1;13204;13194:132;;13248:10;13243:3;13239:20;13236:1;13229:31;13283:4;13280:1;13273:15;13311:4;13308:1;13301:15;13194:132;-1:-1:-1;13340:9:1;;13138:217::o
Swarm Source
ipfs://761fec3535fb0309e32d502e59c796e59f6a74ddad9972a3dc401b03abe14837
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.