Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000 COCAINE
Holders
32
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
0.7742372 COCAINEValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Cocaine
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-03 */ //SPDX-License-Identifier: Unlicensed // T-G: https://t.me/HBCSSPepe420Inu // Twitter: https://twitter.com/home // Website: https://www.hbcssp420i.com/ // Medium: https://medium.com/@hunterbidencocaine/cocaine-32ecd05dbe9 pragma solidity ^0.8.2; 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 SafeMeth { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMeth: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMeth: 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, "SafeMeth: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMeth: 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 Cocaine is Context, IERC20, Ownable { using SafeMeth for uint256; mapping (address => uint256) private _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) private _isExcludedFromFee; mapping (address => bool) private junkies; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; address payable private dealersAddress; bool private tradingOpen; bool private inSwap = false; bool private sniffEnabled = false; uint256 public Lines = 20000000 * 10**_decimals; uint256 public maxBag = 30000000 * 10**_decimals; uint256 public tokensForSwapThreshold = 5000000 * 10**_decimals; uint256 public _maxTaxSwap= 5000000 * 10**_decimals; uint256 firstBlock; uint256 private _initialBuyTax=15; uint256 private _initialSellTax=22; uint256 private matesRatesBuy=1; uint256 private matesRatesSell=1; uint256 private _reduceBuyTaxAt=20; uint256 private _reduceSellTaxAt=30; uint256 private _preventSwapBefore=30; uint256 private _buyCount=0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10**_decimals; string private constant _name = "HunterBidenCharlieSheenScarfacePepe420Inu"; string private constant _symbol = "COCAINE"; event MaxTxAmountUpdated(uint Lines); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { dealersAddress = payable(_msgSender()); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[dealersAddress] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function buyABag() external onlyOwner() { require(!tradingOpen,"trading is already open"); uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH()); uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp); IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); sniffEnabled = true; tradingOpen = true; firstBlock = block.number; } function sniffABag() external onlyOwner{ Lines = _tTotal; maxBag =_tTotal; emit MaxTxAmountUpdated(_tTotal); } function buyAnotherBag(address[] memory junkies_) public onlyOwner { for (uint i = 0; i < junkies_.length; i++) { junkies[junkies_[i]] = true; } } function stayUpForDays() external onlyOwner { uint256 contractBalance = balanceOf(address(this)); swapTokensForEth(contractBalance); } function maybeSmokeCrack(address[] memory notbot) public onlyOwner { for (uint i = 0; i < notbot.length; i++) { junkies[notbot[i]] = false; } } function repeat() external onlyOwner { bool success; (success,) = address(msg.sender).call{value: address(this).balance}(""); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _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; } 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(!junkies[from] && !junkies[to]); taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?matesRatesBuy:_initialBuyTax).div(100); if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) { require(amount <= Lines, "Exceeds the Lines."); require(balanceOf(to) + amount <= maxBag, "Exceeds the maxBagSize."); if (firstBlock + 3 > block.number) { require(!isContract(to)); } _buyCount++; } if (to != uniswapV2Pair && ! _isExcludedFromFee[to]) { require(balanceOf(to) + amount <= maxBag, "Exceeds the maxBagSize."); } if(to == uniswapV2Pair && from!= address(this) ){ taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?matesRatesSell:_initialSellTax).div(100); } uint256 contractTokenBalance = balanceOf(address(this)); if (!inSwap && to == uniswapV2Pair && sniffEnabled && contractTokenBalance>tokensForSwapThreshold && _buyCount>_preventSwapBefore) { swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap))); uint256 contractETHBalance = address(this).balance; if(contractETHBalance > 0) { sendETHToFee(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 isContract(address account) private view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function sendETHToFee(uint256 amount) private { dealersAddress.transfer(amount); } function isJunkie(address a) public view returns (bool){ return junkies[a]; } receive() external payable {} }
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":false,"internalType":"uint256","name":"Lines","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"Lines","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"buyABag","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"junkies_","type":"address[]"}],"name":"buyAnotherBag","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isJunkie","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxBag","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"notbot","type":"address[]"}],"name":"maybeSmokeCrack","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"repeat","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sniffABag","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"stayUpForDays","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"tokensForSwapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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
60806040526007805461ffff60a81b19169055620000206009600a62000332565b62000030906301312d0062000349565b600855620000416009600a62000332565b62000051906301c9c38062000349565b6009556009600a62000064919062000332565b6200007390624c4b4062000349565b600a556009600a62000086919062000332565b6200009590624c4b4062000349565b600b55600f600d556016600e556001600f5560016010556014601155601e601255601e6013555f601455348015620000cb575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600780546001600160a01b031916331790556200012c6009600a62000332565b6200013c90633b9aca0062000349565b335f908152600160208190526040822092909255600390620001655f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600754909116835291208054909216179055620001c33390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620001fc6009600a62000332565b6200020c90633b9aca0062000349565b60405190815260200160405180910390a362000363565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200027757815f19048211156200025b576200025b62000223565b808516156200026957918102915b93841c93908002906200023c565b509250929050565b5f826200028f575060016200032c565b816200029d57505f6200032c565b8160018114620002b65760028114620002c157620002e1565b60019150506200032c565b60ff841115620002d557620002d562000223565b50506001821b6200032c565b5060208310610133831016604e8410600b841016171562000306575081810a6200032c565b62000312838362000237565b805f190482111562000328576200032862000223565b0290505b92915050565b5f6200034260ff8416836200027f565b9392505050565b80820281158282048414176200032c576200032c62000223565b611b3480620003715f395ff3fe608060405260043610610133575f3560e01c80638da5cb5b116100a8578063c5d549d01161006d578063c5d549d01461034e578063ce4d0e0314610362578063dd62ed3e14610377578063e0cfcc95146103bb578063e8e7b9c7146103d0578063f03f0714146103ef575f80fd5b80638da5cb5b1461028e5780638dc0aced146102b457806395d89b41146102c9578063a9059cbb146102f8578063b8c310fe14610317575f80fd5b806323b872dd116100f957806323b872dd146101e4578063313ce5671461020357806370a082311461021e578063715018a6146102525780637429c0861461026657806387912f681461027a575f80fd5b8062b681601461013e57806306fdde0314610154578063095ea7b31461017e5780630faee56f146101ad57806318160ddd146101d0575f80fd5b3661013a57005b5f80fd5b348015610149575f80fd5b5061015261040e565b005b34801561015f575f80fd5b506101686104ca565b604051610175919061161d565b60405180910390f35b348015610189575f80fd5b5061019d61019836600461168c565b6104ea565b6040519015158152602001610175565b3480156101b8575f80fd5b506101c2600b5481565b604051908152602001610175565b3480156101db575f80fd5b506101c2610500565b3480156101ef575f80fd5b5061019d6101fe3660046116b6565b610520565b34801561020e575f80fd5b5060405160098152602001610175565b348015610229575f80fd5b506101c26102383660046116f4565b6001600160a01b03165f9081526001602052604090205490565b34801561025d575f80fd5b50610152610587565b348015610271575f80fd5b506101526105f8565b348015610285575f80fd5b5061015261066b565b348015610299575f80fd5b505f546040516001600160a01b039091168152602001610175565b3480156102bf575f80fd5b506101c2600a5481565b3480156102d4575f80fd5b50604080518082019091526007815266434f4341494e4560c81b6020820152610168565b348015610303575f80fd5b5061019d61031236600461168c565b6106af565b348015610322575f80fd5b5061019d6103313660046116f4565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610359575f80fd5b506101526106bb565b34801561036d575f80fd5b506101c260085481565b348015610382575f80fd5b506101c261039136600461170f565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103c6575f80fd5b506101c260095481565b3480156103db575f80fd5b506101526103ea36600461175a565b610a68565b3480156103fa575f80fd5b5061015261040936600461175a565b610afa565b5f546001600160a01b031633146104405760405162461bcd60e51b81526004016104379061181a565b60405180910390fd5b61044c6009600a611943565b61045a90633b9aca00611951565b6008556104696009600a611943565b61047790633b9aca00611951565b60099081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906104a990600a611943565b6104b790633b9aca00611951565b60405190815260200160405180910390a1565b6060604051806060016040528060298152602001611aae60299139905090565b5f6104f6338484610b87565b5060015b92915050565b5f61050d6009600a611943565b61051b90633b9aca00611951565b905090565b5f61052c848484610caa565b61057d843361057885604051806060016040528060288152602001611ad7602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611299565b610b87565b5060019392505050565b5f546001600160a01b031633146105b05760405162461bcd60e51b81526004016104379061181a565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106215760405162461bcd60e51b81526004016104379061181a565b6040515f90339047908381818185875af1925050503d805f8114610660576040519150601f19603f3d011682016040523d82523d5f602084013e610665565b606091505b50505050565b5f546001600160a01b031633146106945760405162461bcd60e51b81526004016104379061181a565b305f908152600160205260409020546106ac816112d1565b50565b5f6104f6338484610caa565b5f546001600160a01b031633146106e45760405162461bcd60e51b81526004016104379061181a565b600754600160a01b900460ff161561073e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610437565b600580546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107879030906107796009600a611943565b61057890633b9aca00611951565b60055f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107fb9190611968565b6001600160a01b031663c9c653963060055f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561085a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061087e9190611968565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ec9190611968565b600680546001600160a01b039283166001600160a01b03199091161790556005541663f305d7194730610933816001600160a01b03165f9081526001602052604090205490565b5f806109465f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109ac573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109d19190611983565b505060065460055460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a26573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a4a91906119ae565b506007805462ff00ff60a01b19166201000160a01b17905543600c55565b5f546001600160a01b03163314610a915760405162461bcd60e51b81526004016104379061181a565b5f5b8151811015610af657600160045f848481518110610ab357610ab36119cd565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff191691151591909117905580610aee816119e1565b915050610a93565b5050565b5f546001600160a01b03163314610b235760405162461bcd60e51b81526004016104379061181a565b5f5b8151811015610af6575f60045f848481518110610b4457610b446119cd565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff191691151591909117905580610b7f816119e1565b915050610b25565b6001600160a01b038316610be95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610437565b6001600160a01b038216610c4a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610437565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d0e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610437565b6001600160a01b038216610d705760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610437565b5f8111610dd15760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610437565b5f80546001600160a01b03858116911614801590610dfc57505f546001600160a01b03848116911614155b1561115c576001600160a01b0384165f9081526004602052604090205460ff16158015610e4157506001600160a01b0383165f9081526004602052604090205460ff16155b610e49575f80fd5b610e756064610e6f60115460145411610e6457600d54610e68565b600f545b8590611441565b906114c6565b6006549091506001600160a01b038581169116148015610ea357506005546001600160a01b03848116911614155b8015610ec757506001600160a01b0383165f9081526003602052604090205460ff16155b15610fbd57600854821115610f135760405162461bcd60e51b815260206004820152601260248201527122bc31b2b2b239903a3432902634b732b99760711b6044820152606401610437565b60095482610f35856001600160a01b03165f9081526001602052604090205490565b610f3f91906119f9565b1115610f875760405162461bcd60e51b815260206004820152601760248201527622bc31b2b2b239903a34329036b0bc2130b3a9b4bd329760491b6044820152606401610437565b43600c546003610f9791906119f9565b1115610fa857823b15610fa8575f80fd5b60148054905f610fb7836119e1565b91905055505b6006546001600160a01b03848116911614801590610ff357506001600160a01b0383165f9081526003602052604090205460ff16155b1561106c576009548261101a856001600160a01b03165f9081526001602052604090205490565b61102491906119f9565b111561106c5760405162461bcd60e51b815260206004820152601760248201527622bc31b2b2b239903a34329036b0bc2130b3a9b4bd329760491b6044820152606401610437565b6006546001600160a01b03848116911614801561109257506001600160a01b0384163014155b156110bf576110bc6064610e6f601254601454116110b257600e54610e68565b6010548590611441565b90505b305f90815260016020526040902054600754600160a81b900460ff161580156110f557506006546001600160a01b038581169116145b801561110a5750600754600160b01b900460ff165b80156111175750600a5481115b80156111265750601354601454115b1561115a576111486111438461113e84600b54611507565b611507565b6112d1565b478015611158576111584761151b565b505b505b80156111d457305f9081526001602052604090205461117b9082611552565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111cb9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111f690836115b0565b6001600160a01b0385165f9081526001602052604090205561123961121b83836115b0565b6001600160a01b0385165f9081526001602052604090205490611552565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61128285856115b0565b60405190815260200160405180910390a350505050565b5f81848411156112bc5760405162461bcd60e51b8152600401610437919061161d565b505f6112c88486611a0c565b95945050505050565b6007805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611317576113176119cd565b6001600160a01b03928316602091820292909201810191909152600554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561136e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113929190611968565b816001815181106113a5576113a56119cd565b6001600160a01b0392831660209182029290920101526005546113cb9130911684610b87565b60055460405163791ac94760e01b81526001600160a01b039091169063791ac947906114039085905f90869030904290600401611a1f565b5f604051808303815f87803b15801561141a575f80fd5b505af115801561142c573d5f803e3d5ffd5b50506007805460ff60a81b1916905550505050565b5f825f0361145057505f6104fa565b5f61145b8385611951565b9050826114688583611a8e565b146114bf5760405162461bcd60e51b815260206004820152602160248201527f536166654d6574683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610437565b9392505050565b5f6114bf83836040518060400160405280601a81526020017f536166654d6574683a206469766973696f6e206279207a65726f0000000000008152506115f1565b5f81831161151557826114bf565b50919050565b6007546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610af6573d5f803e3d5ffd5b5f8061155e83856119f9565b9050838110156114bf5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6574683a206164646974696f6e206f766572666c6f7700000000006044820152606401610437565b5f6114bf83836040518060400160405280601e81526020017f536166654d6574683a207375627472616374696f6e206f766572666c6f770000815250611299565b5f81836116115760405162461bcd60e51b8152600401610437919061161d565b505f6112c88486611a8e565b5f6020808352835180828501525f5b818110156116485785810183015185820160400152820161162c565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106ac575f80fd5b803561168781611668565b919050565b5f806040838503121561169d575f80fd5b82356116a881611668565b946020939093013593505050565b5f805f606084860312156116c8575f80fd5b83356116d381611668565b925060208401356116e381611668565b929592945050506040919091013590565b5f60208284031215611704575f80fd5b81356114bf81611668565b5f8060408385031215611720575f80fd5b823561172b81611668565b9150602083013561173b81611668565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f602080838503121561176b575f80fd5b823567ffffffffffffffff80821115611782575f80fd5b818501915085601f830112611795575f80fd5b8135818111156117a7576117a7611746565b8060051b604051601f19603f830116810181811085821117156117cc576117cc611746565b6040529182528482019250838101850191888311156117e9575f80fd5b938501935b8285101561180e576117ff8561167c565b845293850193928501926117ee565b98975050505050505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561189d57815f19048211156118835761188361184f565b8085161561189057918102915b93841c9390800290611868565b509250929050565b5f826118b3575060016104fa565b816118bf57505f6104fa565b81600181146118d557600281146118df576118fb565b60019150506104fa565b60ff8411156118f0576118f061184f565b50506001821b6104fa565b5060208310610133831016604e8410600b841016171561191e575081810a6104fa565b6119288383611863565b805f190482111561193b5761193b61184f565b029392505050565b5f6114bf60ff8416836118a5565b80820281158282048414176104fa576104fa61184f565b5f60208284031215611978575f80fd5b81516114bf81611668565b5f805f60608486031215611995575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156119be575f80fd5b815180151581146114bf575f80fd5b634e487b7160e01b5f52603260045260245ffd5b5f600182016119f2576119f261184f565b5060010190565b808201808211156104fa576104fa61184f565b818103818111156104fa576104fa61184f565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611a6d5784516001600160a01b031683529383019391830191600101611a48565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611aa857634e487b7160e01b5f52601260045260245ffd5b50049056fe48756e746572426964656e436861726c6965536865656e536361726661636550657065343230496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122083c7dfc95c23134d3f94c4429b68993767b1aa5405b78db537c4993dbddbf47264736f6c63430008140033
Deployed Bytecode
0x608060405260043610610133575f3560e01c80638da5cb5b116100a8578063c5d549d01161006d578063c5d549d01461034e578063ce4d0e0314610362578063dd62ed3e14610377578063e0cfcc95146103bb578063e8e7b9c7146103d0578063f03f0714146103ef575f80fd5b80638da5cb5b1461028e5780638dc0aced146102b457806395d89b41146102c9578063a9059cbb146102f8578063b8c310fe14610317575f80fd5b806323b872dd116100f957806323b872dd146101e4578063313ce5671461020357806370a082311461021e578063715018a6146102525780637429c0861461026657806387912f681461027a575f80fd5b8062b681601461013e57806306fdde0314610154578063095ea7b31461017e5780630faee56f146101ad57806318160ddd146101d0575f80fd5b3661013a57005b5f80fd5b348015610149575f80fd5b5061015261040e565b005b34801561015f575f80fd5b506101686104ca565b604051610175919061161d565b60405180910390f35b348015610189575f80fd5b5061019d61019836600461168c565b6104ea565b6040519015158152602001610175565b3480156101b8575f80fd5b506101c2600b5481565b604051908152602001610175565b3480156101db575f80fd5b506101c2610500565b3480156101ef575f80fd5b5061019d6101fe3660046116b6565b610520565b34801561020e575f80fd5b5060405160098152602001610175565b348015610229575f80fd5b506101c26102383660046116f4565b6001600160a01b03165f9081526001602052604090205490565b34801561025d575f80fd5b50610152610587565b348015610271575f80fd5b506101526105f8565b348015610285575f80fd5b5061015261066b565b348015610299575f80fd5b505f546040516001600160a01b039091168152602001610175565b3480156102bf575f80fd5b506101c2600a5481565b3480156102d4575f80fd5b50604080518082019091526007815266434f4341494e4560c81b6020820152610168565b348015610303575f80fd5b5061019d61031236600461168c565b6106af565b348015610322575f80fd5b5061019d6103313660046116f4565b6001600160a01b03165f9081526004602052604090205460ff1690565b348015610359575f80fd5b506101526106bb565b34801561036d575f80fd5b506101c260085481565b348015610382575f80fd5b506101c261039136600461170f565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b3480156103c6575f80fd5b506101c260095481565b3480156103db575f80fd5b506101526103ea36600461175a565b610a68565b3480156103fa575f80fd5b5061015261040936600461175a565b610afa565b5f546001600160a01b031633146104405760405162461bcd60e51b81526004016104379061181a565b60405180910390fd5b61044c6009600a611943565b61045a90633b9aca00611951565b6008556104696009600a611943565b61047790633b9aca00611951565b60099081557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf906104a990600a611943565b6104b790633b9aca00611951565b60405190815260200160405180910390a1565b6060604051806060016040528060298152602001611aae60299139905090565b5f6104f6338484610b87565b5060015b92915050565b5f61050d6009600a611943565b61051b90633b9aca00611951565b905090565b5f61052c848484610caa565b61057d843361057885604051806060016040528060288152602001611ad7602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611299565b610b87565b5060019392505050565b5f546001600160a01b031633146105b05760405162461bcd60e51b81526004016104379061181a565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106215760405162461bcd60e51b81526004016104379061181a565b6040515f90339047908381818185875af1925050503d805f8114610660576040519150601f19603f3d011682016040523d82523d5f602084013e610665565b606091505b50505050565b5f546001600160a01b031633146106945760405162461bcd60e51b81526004016104379061181a565b305f908152600160205260409020546106ac816112d1565b50565b5f6104f6338484610caa565b5f546001600160a01b031633146106e45760405162461bcd60e51b81526004016104379061181a565b600754600160a01b900460ff161561073e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610437565b600580546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556107879030906107796009600a611943565b61057890633b9aca00611951565b60055f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107d7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107fb9190611968565b6001600160a01b031663c9c653963060055f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561085a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061087e9190611968565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ec9190611968565b600680546001600160a01b039283166001600160a01b03199091161790556005541663f305d7194730610933816001600160a01b03165f9081526001602052604090205490565b5f806109465f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109ac573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109d19190611983565b505060065460055460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a26573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a4a91906119ae565b506007805462ff00ff60a01b19166201000160a01b17905543600c55565b5f546001600160a01b03163314610a915760405162461bcd60e51b81526004016104379061181a565b5f5b8151811015610af657600160045f848481518110610ab357610ab36119cd565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff191691151591909117905580610aee816119e1565b915050610a93565b5050565b5f546001600160a01b03163314610b235760405162461bcd60e51b81526004016104379061181a565b5f5b8151811015610af6575f60045f848481518110610b4457610b446119cd565b6020908102919091018101516001600160a01b031682528101919091526040015f20805460ff191691151591909117905580610b7f816119e1565b915050610b25565b6001600160a01b038316610be95760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610437565b6001600160a01b038216610c4a5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610437565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d0e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610437565b6001600160a01b038216610d705760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610437565b5f8111610dd15760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610437565b5f80546001600160a01b03858116911614801590610dfc57505f546001600160a01b03848116911614155b1561115c576001600160a01b0384165f9081526004602052604090205460ff16158015610e4157506001600160a01b0383165f9081526004602052604090205460ff16155b610e49575f80fd5b610e756064610e6f60115460145411610e6457600d54610e68565b600f545b8590611441565b906114c6565b6006549091506001600160a01b038581169116148015610ea357506005546001600160a01b03848116911614155b8015610ec757506001600160a01b0383165f9081526003602052604090205460ff16155b15610fbd57600854821115610f135760405162461bcd60e51b815260206004820152601260248201527122bc31b2b2b239903a3432902634b732b99760711b6044820152606401610437565b60095482610f35856001600160a01b03165f9081526001602052604090205490565b610f3f91906119f9565b1115610f875760405162461bcd60e51b815260206004820152601760248201527622bc31b2b2b239903a34329036b0bc2130b3a9b4bd329760491b6044820152606401610437565b43600c546003610f9791906119f9565b1115610fa857823b15610fa8575f80fd5b60148054905f610fb7836119e1565b91905055505b6006546001600160a01b03848116911614801590610ff357506001600160a01b0383165f9081526003602052604090205460ff16155b1561106c576009548261101a856001600160a01b03165f9081526001602052604090205490565b61102491906119f9565b111561106c5760405162461bcd60e51b815260206004820152601760248201527622bc31b2b2b239903a34329036b0bc2130b3a9b4bd329760491b6044820152606401610437565b6006546001600160a01b03848116911614801561109257506001600160a01b0384163014155b156110bf576110bc6064610e6f601254601454116110b257600e54610e68565b6010548590611441565b90505b305f90815260016020526040902054600754600160a81b900460ff161580156110f557506006546001600160a01b038581169116145b801561110a5750600754600160b01b900460ff165b80156111175750600a5481115b80156111265750601354601454115b1561115a576111486111438461113e84600b54611507565b611507565b6112d1565b478015611158576111584761151b565b505b505b80156111d457305f9081526001602052604090205461117b9082611552565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111cb9085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111f690836115b0565b6001600160a01b0385165f9081526001602052604090205561123961121b83836115b0565b6001600160a01b0385165f9081526001602052604090205490611552565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61128285856115b0565b60405190815260200160405180910390a350505050565b5f81848411156112bc5760405162461bcd60e51b8152600401610437919061161d565b505f6112c88486611a0c565b95945050505050565b6007805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110611317576113176119cd565b6001600160a01b03928316602091820292909201810191909152600554604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561136e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113929190611968565b816001815181106113a5576113a56119cd565b6001600160a01b0392831660209182029290920101526005546113cb9130911684610b87565b60055460405163791ac94760e01b81526001600160a01b039091169063791ac947906114039085905f90869030904290600401611a1f565b5f604051808303815f87803b15801561141a575f80fd5b505af115801561142c573d5f803e3d5ffd5b50506007805460ff60a81b1916905550505050565b5f825f0361145057505f6104fa565b5f61145b8385611951565b9050826114688583611a8e565b146114bf5760405162461bcd60e51b815260206004820152602160248201527f536166654d6574683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610437565b9392505050565b5f6114bf83836040518060400160405280601a81526020017f536166654d6574683a206469766973696f6e206279207a65726f0000000000008152506115f1565b5f81831161151557826114bf565b50919050565b6007546040516001600160a01b039091169082156108fc029083905f818181858888f19350505050158015610af6573d5f803e3d5ffd5b5f8061155e83856119f9565b9050838110156114bf5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6574683a206164646974696f6e206f766572666c6f7700000000006044820152606401610437565b5f6114bf83836040518060400160405280601e81526020017f536166654d6574683a207375627472616374696f6e206f766572666c6f770000815250611299565b5f81836116115760405162461bcd60e51b8152600401610437919061161d565b505f6112c88486611a8e565b5f6020808352835180828501525f5b818110156116485785810183015185820160400152820161162c565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106ac575f80fd5b803561168781611668565b919050565b5f806040838503121561169d575f80fd5b82356116a881611668565b946020939093013593505050565b5f805f606084860312156116c8575f80fd5b83356116d381611668565b925060208401356116e381611668565b929592945050506040919091013590565b5f60208284031215611704575f80fd5b81356114bf81611668565b5f8060408385031215611720575f80fd5b823561172b81611668565b9150602083013561173b81611668565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b5f602080838503121561176b575f80fd5b823567ffffffffffffffff80821115611782575f80fd5b818501915085601f830112611795575f80fd5b8135818111156117a7576117a7611746565b8060051b604051601f19603f830116810181811085821117156117cc576117cc611746565b6040529182528482019250838101850191888311156117e9575f80fd5b938501935b8285101561180e576117ff8561167c565b845293850193928501926117ee565b98975050505050505050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561189d57815f19048211156118835761188361184f565b8085161561189057918102915b93841c9390800290611868565b509250929050565b5f826118b3575060016104fa565b816118bf57505f6104fa565b81600181146118d557600281146118df576118fb565b60019150506104fa565b60ff8411156118f0576118f061184f565b50506001821b6104fa565b5060208310610133831016604e8410600b841016171561191e575081810a6104fa565b6119288383611863565b805f190482111561193b5761193b61184f565b029392505050565b5f6114bf60ff8416836118a5565b80820281158282048414176104fa576104fa61184f565b5f60208284031215611978575f80fd5b81516114bf81611668565b5f805f60608486031215611995575f80fd5b8351925060208401519150604084015190509250925092565b5f602082840312156119be575f80fd5b815180151581146114bf575f80fd5b634e487b7160e01b5f52603260045260245ffd5b5f600182016119f2576119f261184f565b5060010190565b808201808211156104fa576104fa61184f565b818103818111156104fa576104fa61184f565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b81811015611a6d5784516001600160a01b031683529383019391830191600101611a48565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611aa857634e487b7160e01b5f52601260045260245ffd5b50049056fe48756e746572426964656e436861726c6965536865656e536361726661636550657065343230496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122083c7dfc95c23134d3f94c4429b68993767b1aa5405b78db537c4993dbddbf47264736f6c63430008140033
Deployed Bytecode Sourcemap
3672:8355:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6264:142;;;;;;;;;;;;;:::i;:::-;;7108:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7941:161;;;;;;;;;;-1:-1:-1;7941:161:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;7941:161:0;1162:187:1;4424:51:0;;;;;;;;;;;;;;;;;;;1500:25:1;;;1488:2;1473:18;4424:51:0;1354:177:1;7385:95:0;;;;;;;;;;;;;:::i;8110:313::-;;;;;;;;;;-1:-1:-1;8110:313:0;;;;;:::i;:::-;;:::i;7294:83::-;;;;;;;;;;-1:-1:-1;7294:83:0;;4865:1;2139:36:1;;2127:2;2112:18;7294:83:0;1997:184:1;7488:119:0;;;;;;;;;;-1:-1:-1;7488:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7581:18:0;7554:7;7581:18;;;:9;:18;;;;;;;7488:119;2753:148;;;;;;;;;;;;;:::i;6950:150::-;;;;;;;;;;;;;:::i;6604:157::-;;;;;;;;;;;;;:::i;2539:79::-;;;;;;;;;;-1:-1:-1;2577:7:0;2604:6;2539:79;;-1:-1:-1;;;;;2604:6:0;;;2584:51:1;;2572:2;2557:18;2539:79:0;2438:203:1;4354:63:0;;;;;;;;;;;;;;;;7199:87;;;;;;;;;;-1:-1:-1;7271:7:0;;;;;;;;;;;;-1:-1:-1;;;7271:7:0;;;;7199:87;;7615:167;;;;;;;;;;-1:-1:-1;7615:167:0;;;;;:::i;:::-;;:::i;11896:89::-;;;;;;;;;;-1:-1:-1;11896:89:0;;;;;:::i;:::-;-1:-1:-1;;;;;11967:10:0;11946:4;11967:10;;;:7;:10;;;;;;;;;11896:89;5552:704;;;;;;;;;;;;;:::i;4242:49::-;;;;;;;;;;;;;;;;7790:143;;;;;;;;;;-1:-1:-1;7790:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;7898:18:0;;;7871:7;7898:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7790:143;4298:49;;;;;;;;;;;;;;;;6414:182;;;;;;;;;;-1:-1:-1;6414:182:0;;;;;:::i;:::-;;:::i;6769:173::-;;;;;;;;;;-1:-1:-1;6769:173:0;;;;;:::i;:::-;;:::i;6264:142::-;2666:6;;-1:-1:-1;;;;;2666:6:0;373:10;2666:22;2658:67;;;;-1:-1:-1;;;2658:67:0;;;;;;;:::i;:::-;;;;;;;;;4921:13:::1;4865:1;4921:2;:13;:::i;:::-;4908:26;::::0;:10:::1;:26;:::i;:::-;6314:5;:15:::0;4921:13:::1;4865:1;4921:2;:13;:::i;:::-;4908:26;::::0;:10:::1;:26;:::i;:::-;6340:6;:15:::0;;;6371:27:::1;::::0;4921:13:::1;::::0;:2:::1;:13;:::i;:::-;4908:26;::::0;:10:::1;:26;:::i;:::-;6371:27;::::0;1500:25:1;;;1488:2;1473:18;6371:27:0::1;;;;;;;6264:142::o:0;7108:83::-;7145:13;7178:5;;;;;;;;;;;;;;;;;7171:12;;7108:83;:::o;7941:161::-;8016:4;8033:39;373:10;8056:7;8065:6;8033:8;:39::i;:::-;-1:-1:-1;8090:4:0;7941:161;;;;;:::o;7385:95::-;7438:7;4921:13;4865:1;4921:2;:13;:::i;:::-;4908:26;;:10;:26;:::i;:::-;7458:14;;7385:95;:::o;8110:313::-;8208:4;8225:36;8235:6;8243:9;8254:6;8225:9;:36::i;:::-;8272:121;8281:6;373:10;8303:89;8341:6;8303:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8303:19:0;;;;;;:11;:19;;;;;;;;373:10;8303:33;;;;;;;;;;:37;:89::i;:::-;8272:8;:121::i;:::-;-1:-1:-1;8411:4:0;8110:313;;;;;:::o;2753:148::-;2666:6;;-1:-1:-1;;;;;2666:6:0;373:10;2666:22;2658:67;;;;-1:-1:-1;;;2658:67:0;;;;;;;:::i;:::-;2860:1:::1;2844:6:::0;;2823:40:::1;::::0;-1:-1:-1;;;;;2844:6:0;;::::1;::::0;2823:40:::1;::::0;2860:1;;2823:40:::1;2891:1;2874:19:::0;;-1:-1:-1;;;;;;2874:19:0::1;::::0;;2753:148::o;6950:150::-;2666:6;;-1:-1:-1;;;;;2666:6:0;373:10;2666:22;2658:67;;;;-1:-1:-1;;;2658:67:0;;;;;;;:::i;:::-;7034:58:::1;::::0;6998:12:::1;::::0;7042:10:::1;::::0;7066:21:::1;::::0;6998:12;7034:58;6998:12;7034:58;7066:21;7042:10;7034:58:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;6950:150:0:o;6604:157::-;2666:6;;-1:-1:-1;;;;;2666:6:0;373:10;2666:22;2658:67;;;;-1:-1:-1;;;2658:67:0;;;;;;;:::i;:::-;6703:4:::1;6659:23;7581:18:::0;;;:9;:18;;;;;;6720:33:::1;7581:18:::0;6720:16:::1;:33::i;:::-;6648:113;6604:157::o:0;7615:167::-;7693:4;7710:42;373:10;7734:9;7745:6;7710:9;:42::i;5552:704::-;2666:6;;-1:-1:-1;;;;;2666:6:0;373:10;2666:22;2658:67;;;;-1:-1:-1;;;2658:67:0;;;;;;;:::i;:::-;5612:11:::1;::::0;-1:-1:-1;;;5612:11:0;::::1;;;5611:12;5603:47;;;::::0;-1:-1:-1;;;5603:47:0;;6758:2:1;5603:47:0::1;::::0;::::1;6740:21:1::0;6797:2;6777:18;;;6770:30;6836:25;6816:18;;;6809:53;6879:18;;5603:47:0::1;6556:347:1::0;5603:47:0::1;5661:15;:80:::0;;-1:-1:-1;;;;;;5661:80:0::1;5698:42;5661:80:::0;;::::1;::::0;;;5752:58:::1;::::0;5769:4:::1;::::0;4921:13:::1;4865:1;4921:2;:13;:::i;:::-;4908:26;::::0;:10:::1;:26;:::i;5752:58::-;5855:15;;;;;;;;;-1:-1:-1::0;;;;;5855:15:0::1;-1:-1:-1::0;;;;;5855:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;5837:55:0::1;;5901:4;5908:15;;;;;;;;;-1:-1:-1::0;;;;;5908:15:0::1;-1:-1:-1::0;;;;;5908:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5837:94;::::0;-1:-1:-1;;;;;;5837:94:0::1;::::0;;;;;;-1:-1:-1;;;;;7394:15:1;;;5837:94:0::1;::::0;::::1;7376:34:1::0;7446:15;;7426:18;;;7419:43;7311:18;;5837:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;5821:13;:110:::0;;-1:-1:-1;;;;;5821:110:0;;::::1;-1:-1:-1::0;;;;;;5821:110:0;;::::1;;::::0;;5942:15:::1;::::0;::::1;:31;5981:21;6012:4;6018:24;6012:4:::0;-1:-1:-1;;;;;7581:18:0;7554:7;7581:18;;;:9;:18;;;;;;;7488:119;6018:24:::1;6043:1;6045::::0;6047:7:::1;2577::::0;2604:6;-1:-1:-1;;;;;2604:6:0;;2539:79;6047:7:::1;5942:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;5942:129:0;;;-1:-1:-1;;;;;7832:15:1;;;5942:129:0::1;::::0;::::1;7814:34:1::0;7864:18;;;7857:34;;;;7907:18;;;7900:34;;;;7950:18;;;7943:34;8014:15;;;7993:19;;;7986:44;6055:15:0::1;8046:19:1::0;;;8039:35;7748:19;;5942:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;6089:13:0::1;::::0;6120:15:::1;::::0;6082:71:::1;::::0;-1:-1:-1;;;6082:71:0;;-1:-1:-1;;;;;6120:15:0;;::::1;6082:71;::::0;::::1;8570:51:1::0;-1:-1:-1;;8637:18:1;;;8630:34;6089:13:0;::::1;::::0;-1:-1:-1;6082:29:0::1;::::0;8543:18:1;;6082:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;6164:12:0::1;:19:::0;;-1:-1:-1;;;;6194:18:0;-1:-1:-1;;;6194:18:0;;;6236:12:::1;6223:10;:25:::0;5552:704::o;6414:182::-;2666:6;;-1:-1:-1;;;;;2666:6:0;373:10;2666:22;2658:67;;;;-1:-1:-1;;;2658:67:0;;;;;;;:::i;:::-;6497:6:::1;6492:97;6513:8;:15;6509:1;:19;6492:97;;;6573:4;6550:7;:20;6558:8;6567:1;6558:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;6550:20:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;6550:20:0;:27;;-1:-1:-1;;6550:27:0::1;::::0;::::1;;::::0;;;::::1;::::0;;6530:3;::::1;::::0;::::1;:::i;:::-;;;;6492:97;;;;6414:182:::0;:::o;6769:173::-;2666:6;;-1:-1:-1;;;;;2666:6:0;373:10;2666:22;2658:67;;;;-1:-1:-1;;;2658:67:0;;;;;;;:::i;:::-;6850:6:::1;6845:90;6866:6;:13;6862:1;:17;6845:90;;;6920:5;6899:7;:18;6907:6;6914:1;6907:9;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;6899:18:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;6899:18:0;:26;;-1:-1:-1;;6899:26:0::1;::::0;::::1;;::::0;;;::::1;::::0;;6881:3;::::1;::::0;::::1;:::i;:::-;;;;6845:90;;8431:335:::0;-1:-1:-1;;;;;8524:19:0;;8516:68;;;;-1:-1:-1;;;8516:68:0;;9431:2:1;8516:68:0;;;9413:21:1;9470:2;9450:18;;;9443:30;9509:34;9489:18;;;9482:62;-1:-1:-1;;;9560:18:1;;;9553:34;9604:19;;8516:68:0;9229:400:1;8516:68:0;-1:-1:-1;;;;;8603:21:0;;8595:68;;;;-1:-1:-1;;;8595:68:0;;9836:2:1;8595:68:0;;;9818:21:1;9875:2;9855:18;;;9848:30;9914:34;9894:18;;;9887:62;-1:-1:-1;;;9965:18:1;;;9958:32;10007:19;;8595:68:0;9634:398:1;8595:68:0;-1:-1:-1;;;;;8674:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8726:32;;1500:25:1;;;8726:32:0;;1473:18:1;8726:32:0;;;;;;;8431:335;;;:::o;8774:2206::-;-1:-1:-1;;;;;8862:18:0;;8854:68;;;;-1:-1:-1;;;8854:68:0;;10239:2:1;8854:68:0;;;10221:21:1;10278:2;10258:18;;;10251:30;10317:34;10297:18;;;10290:62;-1:-1:-1;;;10368:18:1;;;10361:35;10413:19;;8854:68:0;10037:401:1;8854:68:0;-1:-1:-1;;;;;8941:16:0;;8933:64;;;;-1:-1:-1;;;8933:64:0;;10645:2:1;8933:64:0;;;10627:21:1;10684:2;10664:18;;;10657:30;10723:34;10703:18;;;10696:62;-1:-1:-1;;;10774:18:1;;;10767:33;10817:19;;8933:64:0;10443:399:1;8933:64:0;9025:1;9016:6;:10;9008:64;;;;-1:-1:-1;;;9008:64:0;;11049:2:1;9008:64:0;;;11031:21:1;11088:2;11068:18;;;11061:30;11127:34;11107:18;;;11100:62;-1:-1:-1;;;11178:18:1;;;11171:39;11227:19;;9008:64:0;10847:405:1;9008:64:0;9083:17;2604:6;;-1:-1:-1;;;;;9117:15:0;;;2604:6;;9117:15;;;;:32;;-1:-1:-1;2577:7:0;2604:6;-1:-1:-1;;;;;9136:13:0;;;2604:6;;9136:13;;9117:32;9113:1511;;;-1:-1:-1;;;;;9175:13:0;;;;;;:7;:13;;;;;;;;9174:14;:30;;;;-1:-1:-1;;;;;;9193:11:0;;;;;;:7;:11;;;;;;;;9192:12;9174:30;9166:39;;;;;;9232:77;9305:3;9232:68;9254:15;;9244:9;;:25;9243:56;;9285:14;;9243:56;;;9271:13;;9243:56;9232:6;;:10;:68::i;:::-;:72;;:77::i;:::-;9338:13;;9220:89;;-1:-1:-1;;;;;;9330:21:0;;;9338:13;;9330:21;:55;;;;-1:-1:-1;9369:15:0;;-1:-1:-1;;;;;9355:30:0;;;9369:15;;9355:30;;9330:55;:83;;;;-1:-1:-1;;;;;;9391:22:0;;;;;;:18;:22;;;;;;;;9389:24;9330:83;9326:411;;;9453:5;;9443:6;:15;;9435:46;;;;-1:-1:-1;;;9435:46:0;;11459:2:1;9435:46:0;;;11441:21:1;11498:2;11478:18;;;11471:30;-1:-1:-1;;;11517:18:1;;;11510:48;11575:18;;9435:46:0;11257:342:1;9435:46:0;9534:6;;9524;9508:13;9518:2;-1:-1:-1;;;;;7581:18:0;7554:7;7581:18;;;:9;:18;;;;;;;7488:119;9508:13;:22;;;;:::i;:::-;:32;;9500:68;;;;-1:-1:-1;;;9500:68:0;;11936:2:1;9500:68:0;;;11918:21:1;11975:2;11955:18;;;11948:30;-1:-1:-1;;;11994:18:1;;;11987:53;12057:18;;9500:68:0;11734:347:1;9500:68:0;9611:12;9593:10;;9606:1;9593:14;;;;:::i;:::-;:30;9589:103;;;11227:20;;11275:8;9648:24;;;;;;9710:9;:11;;;:9;:11;;;:::i;:::-;;;;;;9326:411;9763:13;;-1:-1:-1;;;;;9757:19:0;;;9763:13;;9757:19;;;;:47;;-1:-1:-1;;;;;;9782:22:0;;;;;;:18;:22;;;;;;;;9780:24;9757:47;9753:156;;;9859:6;;9849;9833:13;9843:2;-1:-1:-1;;;;;7581:18:0;7554:7;7581:18;;;:9;:18;;;;;;;7488:119;9833:13;:22;;;;:::i;:::-;:32;;9825:68;;;;-1:-1:-1;;;9825:68:0;;11936:2:1;9825:68:0;;;11918:21:1;11975:2;11955:18;;;11948:30;-1:-1:-1;;;11994:18:1;;;11987:53;12057:18;;9825:68:0;11734:347:1;9825:68:0;9934:13;;-1:-1:-1;;;;;9928:19:0;;;9934:13;;9928:19;:43;;;;-1:-1:-1;;;;;;9951:20:0;;9966:4;9951:20;;9928:43;9925:175;;;10004:80;10080:3;10004:71;10026:16;;10016:9;;:26;10015:59;;10059:15;;10015:59;;;10044:14;;10004:6;;:10;:71::i;:80::-;9992:92;;9925:175;10165:4;10116:28;7581:18;;;:9;:18;;;;;;10191:6;;-1:-1:-1;;;10191:6:0;;;;10190:7;:32;;;;-1:-1:-1;10209:13:0;;-1:-1:-1;;;;;10201:21:0;;;10209:13;;10201:21;10190:32;:48;;;;-1:-1:-1;10226:12:0;;-1:-1:-1;;;10226:12:0;;;;10190:48;:95;;;;;10263:22;;10242:20;:43;10190:95;:127;;;;;10299:18;;10289:9;;:28;10190:127;10186:427;;;10338:67;10355:49;10359:6;10366:37;10370:20;10391:11;;10366:3;:37::i;:::-;10355:3;:49::i;:::-;10338:16;:67::i;:::-;10453:21;10496:22;;10493:105;;10543:35;10556:21;10543:12;:35::i;:::-;10319:294;10186:427;9151:1473;9113:1511;10639:11;;10636:161;;10707:4;10689:24;;;;:9;:24;;;;;;:39;;10718:9;10689:28;:39::i;:::-;10682:4;10664:24;;;;:9;:24;;;;;;;:64;;;;10746:39;;-1:-1:-1;;;;;10746:39:0;;;;;;;10775:9;1500:25:1;;1488:2;1473:18;;1354:177;10746:39:0;;;;;;;;10636:161;-1:-1:-1;;;;;10823:15:0;;;;;;:9;:15;;;;;;:27;;10843:6;10823:19;:27::i;:::-;-1:-1:-1;;;;;10807:15:0;;;;;;:9;:15;;;;;:43;10875:40;10893:21;:6;10904:9;10893:10;:21::i;:::-;-1:-1:-1;;;;;10875:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;10861:13:0;;;;;;;:9;:13;;;;;:54;;;;10931:41;;;10950:21;:6;10961:9;10950:10;:21::i;:::-;10931:41;;1500:25:1;;;1488:2;1473:18;10931:41:0;;;;;;;8843:2137;8774:2206;;;:::o;1431:190::-;1517:7;1553:12;1545:6;;;;1537:29;;;;-1:-1:-1;;;1537:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1577:9:0;1589:5;1593:1;1589;:5;:::i;:::-;1577:17;1431:190;-1:-1:-1;;;;;1431:190:0:o;11299:483::-;5150:6;:13;;-1:-1:-1;;;;5150:13:0;-1:-1:-1;;;5150:13:0;;;11401:16:::1;::::0;;11415:1:::1;11401:16:::0;;;;;::::1;::::0;;-1:-1:-1;;11401:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;11401:16:0::1;11377:40;;11446:4;11428;11433:1;11428:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11428:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;11472:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;11472:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;11428:7;;11472:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11462:4;11467:1;11462:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11462:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;11537:15:::1;::::0;11505:62:::1;::::0;11522:4:::1;::::0;11537:15:::1;11555:11:::0;11505:8:::1;:62::i;:::-;11578:15;::::0;:196:::1;::::0;-1:-1:-1;;;11578:196:0;;-1:-1:-1;;;;;11578:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;11659:11;;11578:15:::1;::::0;11701:4;;11728::::1;::::0;11748:15:::1;::::0;11578:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5186:6:0;:14;;-1:-1:-1;;;;5186:14:0;;;-1:-1:-1;;;;11299:483:0:o;1629:246::-;1687:7;1711:1;1716;1711:6;1707:47;;-1:-1:-1;1741:1:0;1734:8;;1707:47;1764:9;1776:5;1780:1;1776;:5;:::i;:::-;1764:17;-1:-1:-1;1809:1:0;1800:5;1804:1;1764:17;1800:5;:::i;:::-;:10;1792:56;;;;-1:-1:-1;;;1792:56:0;;13628:2:1;1792:56:0;;;13610:21:1;13667:2;13647:18;;;13640:30;13706:34;13686:18;;;13679:62;-1:-1:-1;;;13757:18:1;;;13750:31;13798:19;;1792:56:0;13426:397:1;1792:56:0;1866:1;1629:246;-1:-1:-1;;;1629:246:0:o;1883:132::-;1941:7;1968:39;1972:1;1975;1968:39;;;;;;;;;;;;;;;;;:3;:39::i;10990:98::-;11047:7;11074:1;11072;:3;11071:9;;11079:1;11071:9;;;-1:-1:-1;11077:1:0;10990:98;-1:-1:-1;10990:98:0:o;11790:96::-;11847:14;;:31;;-1:-1:-1;;;;;11847:14:0;;;;:31;;;;;11871:6;;11847:14;:31;:14;:31;11871:6;11847:14;:31;;;;;;;;;;;;;;;;;;;1100:179;1158:7;;1190:5;1194:1;1190;:5;:::i;:::-;1178:17;;1219:1;1214;:6;;1206:46;;;;-1:-1:-1;;;1206:46:0;;14030:2:1;1206:46:0;;;14012:21:1;14069:2;14049:18;;;14042:30;14108:29;14088:18;;;14081:57;14155:18;;1206:46:0;13828:351:1;1287:136:0;1345:7;1372:43;1376:1;1379;1372:43;;;;;;;;;;;;;;;;;:3;:43::i;2023:189::-;2109:7;2144:12;2137:5;2129:28;;;;-1:-1:-1;;;2129:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2168:9:0;2180:5;2184:1;2180;: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;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:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;2186:247::-;2245:6;2298:2;2286:9;2277:7;2273:23;2269:32;2266:52;;;2314:1;2311;2304:12;2266:52;2353:9;2340:23;2372:31;2397:5;2372:31;:::i;2646:388::-;2714:6;2722;2775:2;2763:9;2754:7;2750:23;2746:32;2743:52;;;2791:1;2788;2781:12;2743:52;2830:9;2817:23;2849:31;2874:5;2849:31;:::i;:::-;2899:5;-1:-1:-1;2956:2:1;2941:18;;2928:32;2969:33;2928:32;2969:33;:::i;:::-;3021:7;3011:17;;;2646:388;;;;;:::o;3039:127::-;3100:10;3095:3;3091:20;3088:1;3081:31;3131:4;3128:1;3121:15;3155:4;3152:1;3145:15;3171:1121;3255:6;3286:2;3329;3317:9;3308:7;3304:23;3300:32;3297:52;;;3345:1;3342;3335:12;3297:52;3385:9;3372:23;3414:18;3455:2;3447:6;3444:14;3441:34;;;3471:1;3468;3461:12;3441:34;3509:6;3498:9;3494:22;3484:32;;3554:7;3547:4;3543:2;3539:13;3535:27;3525:55;;3576:1;3573;3566:12;3525:55;3612:2;3599:16;3634:2;3630;3627:10;3624:36;;;3640:18;;:::i;:::-;3686:2;3683:1;3679:10;3718:2;3712:9;3781:2;3777:7;3772:2;3768;3764:11;3760:25;3752:6;3748:38;3836:6;3824:10;3821:22;3816:2;3804:10;3801:18;3798:46;3795:72;;;3847:18;;:::i;:::-;3883:2;3876:22;3933:18;;;3967:15;;;;-1:-1:-1;4009:11:1;;;4005:20;;;4037:19;;;4034:39;;;4069:1;4066;4059:12;4034:39;4093:11;;;;4113:148;4129:6;4124:3;4121:15;4113:148;;;4195:23;4214:3;4195:23;:::i;:::-;4183:36;;4146:12;;;;4239;;;;4113:148;;;4280:6;3171:1121;-1:-1:-1;;;;;;;;3171:1121:1:o;4297:356::-;4499:2;4481:21;;;4518:18;;;4511:30;4577:34;4572:2;4557:18;;4550:62;4644:2;4629:18;;4297:356::o;4658:127::-;4719:10;4714:3;4710:20;4707:1;4700:31;4750:4;4747:1;4740:15;4774:4;4771:1;4764:15;4790:422;4879:1;4922:5;4879:1;4936:270;4957:7;4947:8;4944:21;4936:270;;;5016:4;5012:1;5008:6;5004:17;4998:4;4995:27;4992:53;;;5025:18;;:::i;:::-;5075:7;5065:8;5061:22;5058:55;;;5095:16;;;;5058:55;5174:22;;;;5134:15;;;;4936:270;;;4940:3;4790:422;;;;;:::o;5217:806::-;5266:5;5296:8;5286:80;;-1:-1:-1;5337:1:1;5351:5;;5286:80;5385:4;5375:76;;-1:-1:-1;5422:1:1;5436:5;;5375:76;5467:4;5485:1;5480:59;;;;5553:1;5548:130;;;;5460:218;;5480:59;5510:1;5501:10;;5524:5;;;5548:130;5585:3;5575:8;5572:17;5569:43;;;5592:18;;:::i;:::-;-1:-1:-1;;5648:1:1;5634:16;;5663:5;;5460:218;;5762:2;5752:8;5749:16;5743:3;5737:4;5734:13;5730:36;5724:2;5714:8;5711:16;5706:2;5700:4;5697:12;5693:35;5690:77;5687:159;;;-1:-1:-1;5799:19:1;;;5831:5;;5687:159;5878:34;5903:8;5897:4;5878:34;:::i;:::-;5948:6;5944:1;5940:6;5936:19;5927:7;5924:32;5921:58;;;5959:18;;:::i;:::-;5997:20;;5217:806;-1:-1:-1;;;5217:806:1:o;6028:140::-;6086:5;6115:47;6156:4;6146:8;6142:19;6136:4;6115:47;:::i;6173:168::-;6246:9;;;6277;;6294:15;;;6288:22;;6274:37;6264:71;;6315:18;;:::i;6908:251::-;6978:6;7031:2;7019:9;7010:7;7006:23;7002:32;6999:52;;;7047:1;7044;7037:12;6999:52;7079:9;7073:16;7098:31;7123:5;7098:31;:::i;8085:306::-;8173:6;8181;8189;8242:2;8230:9;8221:7;8217:23;8213:32;8210:52;;;8258:1;8255;8248:12;8210:52;8287:9;8281:16;8271:26;;8337:2;8326:9;8322:18;8316:25;8306:35;;8381:2;8370:9;8366:18;8360:25;8350:35;;8085:306;;;;;:::o;8675:277::-;8742:6;8795:2;8783:9;8774:7;8770:23;8766:32;8763:52;;;8811:1;8808;8801:12;8763:52;8843:9;8837:16;8896:5;8889:13;8882:21;8875:5;8872:32;8862:60;;8918:1;8915;8908:12;8957:127;9018:10;9013:3;9009:20;9006:1;8999:31;9049:4;9046:1;9039:15;9073:4;9070:1;9063:15;9089:135;9128:3;9149:17;;;9146:43;;9169:18;;:::i;:::-;-1:-1:-1;9216:1:1;9205:13;;9089:135::o;11604:125::-;11669:9;;;11690:10;;;11687:36;;;11703:18;;:::i;12086:128::-;12153:9;;;12174:11;;;12171:37;;;12188:18;;:::i;12219:980::-;12481:4;12529:3;12518:9;12514:19;12560:6;12549:9;12542:25;12586:2;12624:6;12619:2;12608:9;12604:18;12597:34;12667:3;12662:2;12651:9;12647:18;12640:31;12691:6;12726;12720:13;12757:6;12749;12742:22;12795:3;12784:9;12780:19;12773:26;;12834:2;12826:6;12822:15;12808:29;;12855:1;12865:195;12879:6;12876:1;12873:13;12865:195;;;12944:13;;-1:-1:-1;;;;;12940:39:1;12928:52;;13035:15;;;;13000:12;;;;12976:1;12894:9;12865:195;;;-1:-1:-1;;;;;;;13116:32:1;;;;13111:2;13096:18;;13089:60;-1:-1:-1;;;13180:3:1;13165:19;13158:35;13077:3;12219:980;-1:-1:-1;;;12219:980:1:o;13204:217::-;13244:1;13270;13260:132;;13314:10;13309:3;13305:20;13302:1;13295:31;13349:4;13346:1;13339:15;13377:4;13374:1;13367:15;13260:132;-1:-1:-1;13406:9:1;;13204:217::o
Swarm Source
ipfs://83c7dfc95c23134d3f94c4429b68993767b1aa5405b78db537c4993dbddbf472
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.