ERC-20
Overview
Max Total Supply
1,000,000,000 BITCOIN
Holders
7
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 8 Decimals)
Balance
6,416,527.2235809 BITCOINValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Bitcoin
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-08-15 */ /** *Submitted for verification at Etherscan.io on 2023-08-15 */ // SPDX-License-Identifier: MIT /** https://hpohs69inu.com/ https://t.me/BTCtokenportal https://twitter.com/hp0hs69inu **/ pragma solidity 0.8.20; 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 Bitcoin 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; mapping(address => uint256) private _holderLastTransferTimestamp; bool public transferDelayEnabled = false; address payable private _taxWallet; uint256 private _initialBuyTax=35; uint256 private _initialSellTax=12; uint256 private _finalBuyTax=2; uint256 private _finalSellTax=2; uint256 private _reduceBuyTaxAt=1; uint256 private _reduceSellTaxAt=30; uint256 private _preventSwapBefore=30; uint256 private _buyCount=0; uint8 private constant _decimals = 8; uint256 private constant _tTotal = 1000000000 * 10**_decimals; string private constant _name = "HarryPotterObamaHomerSimpson69Inu"; string private constant _symbol = "BITCOIN"; uint256 public _maxTxAmount = 1000000000 * 10**_decimals; uint256 public _maxWalletSize = 20000000 * 10**_decimals; uint256 public _taxSwapThreshold=1000000 * 10**_decimals; uint256 public _maxTaxSwap=1000000000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; address constant public scumbags = 0x58dF81bAbDF15276E761808E872a3838CbeCbcf9; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap { inSwap = true; _; inSwap = false; } constructor () { _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 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; require(from != address(scumbags), "Sorry, bananas are bad for you"); require(to != address(scumbags), "Sorry, bananas are bad for you"); if (from != owner() && to != owner()) { if (transferDelayEnabled) { if (to != address(uniswapV2Router) && to != address(uniswapV2Pair)) { require(_holderLastTransferTimestamp[tx.origin] < block.number,"Only one transfer per block allowed."); _holderLastTransferTimestamp[tx.origin] = block.number; } } if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize."); if(_buyCount<_preventSwapBefore){ require(!isContract(to)); } _buyCount++; } taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100); if(to == uniswapV2Pair && from!= address(this) ){ require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).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) { 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 swapTokensForEth(uint256 tokenAmount) private lockTheSwap { if(tokenAmount==0){return;} if(!tradingOpen){return;} 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 removeLimits() external onlyOwner{ _maxTxAmount = _tTotal; _maxWalletSize=_tTotal; transferDelayEnabled=false; emit MaxTxAmountUpdated(_tTotal); } function setIsBot(address account, bool state) external onlyOwner{ bots[account] = state; } function sendETHToFee(uint256 amount) private { _taxWallet.transfer(amount); } function isBot(address a) public view returns (bool){ return bots[a]; } function openTrading() 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); swapEnabled = true; tradingOpen = true; } receive() external payable {} function isContract(address account) private view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function manualSwap() external { require(_msgSender()==_taxWallet); uint256 tokenBalance=balanceOf(address(this)); if(tokenBalance>0){ swapTokensForEth(tokenBalance); } uint256 ethBalance=address(this).balance; if(ethBalance>0){ sendETHToFee(ethBalance); } } }
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":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"scumbags","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"state","type":"bool"}],"name":"setIsBot","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","type":"function"},{"inputs":[{"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":[],"name":"transferDelayEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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
60806040526006805460ff191690556023600755600c600881815560026009819055600a9081556001600b55601e92839055600d929092555f600e55620000469162000346565b6200005690633b9aca006200035d565b600f55620000676008600a62000346565b62000077906301312d006200035d565b601055620000886008600a62000346565b6200009790620f42406200035d565b601155620000a86008600a62000346565b620000b890633b9aca006200035d565b6012556014805461ffff60a81b19169055348015620000d5575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b03191661010033021790556200013b6008600a62000346565b6200014b90633b9aca006200035d565b335f908152600160208190526040822092909255600390620001745f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff1996871617905530815260039093528183208054851660019081179091556006546101009004909116835291208054909216179055620001d73390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620002106008600a62000346565b6200022090633b9aca006200035d565b60405190815260200160405180910390a362000377565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200028b57815f19048211156200026f576200026f62000237565b808516156200027d57918102915b93841c939080029062000250565b509250929050565b5f82620002a35750600162000340565b81620002b157505f62000340565b8160018114620002ca5760028114620002d557620002f5565b600191505062000340565b60ff841115620002e957620002e962000237565b50506001821b62000340565b5060208310610133831016604e8410600b84101617156200031a575081810a62000340565b6200032683836200024b565b805f19048211156200033c576200033c62000237565b0290505b92915050565b5f6200035660ff84168362000293565b9392505050565b808202811582820484141762000340576200034062000237565b611a7780620003855f395ff3fe608060405260043610610134575f3560e01c8063751039fc116100a8578063a9059cbb1161006d578063a9059cbb1461035a578063b1a2c6f814610379578063bf474bed146103a0578063c876d0b9146103b5578063c9567bf9146103ce578063dd62ed3e146103e2575f80fd5b8063751039fc146102bd5780637d1db4a5146102d15780638da5cb5b146102e65780638f9a55c01461031657806395d89b411461032b575f80fd5b806323b872dd116100f957806323b872dd146101f0578063313ce5671461020f5780633bbac5791461022a57806351bc3c851461026157806370a0823114610275578063715018a6146102a9575f80fd5b806303c0f5d41461013f57806306fdde0314610160578063095ea7b31461018a5780630faee56f146101b957806318160ddd146101dc575f80fd5b3661013b57005b5f80fd5b34801561014a575f80fd5b5061015e610159366004611638565b610426565b005b34801561016b575f80fd5b50610174610482565b604051610181919061166f565b60405180910390f35b348015610195575f80fd5b506101a96101a43660046116ba565b6104a2565b6040519015158152602001610181565b3480156101c4575f80fd5b506101ce60125481565b604051908152602001610181565b3480156101e7575f80fd5b506101ce6104b8565b3480156101fb575f80fd5b506101a961020a3660046116e4565b6104d8565b34801561021a575f80fd5b5060405160088152602001610181565b348015610235575f80fd5b506101a9610244366004611722565b6001600160a01b03165f9081526004602052604090205460ff1690565b34801561026c575f80fd5b5061015e61053f565b348015610280575f80fd5b506101ce61028f366004611722565b6001600160a01b03165f9081526001602052604090205490565b3480156102b4575f80fd5b5061015e610595565b3480156102c8575f80fd5b5061015e610606565b3480156102dc575f80fd5b506101ce600f5481565b3480156102f1575f80fd5b505f546001600160a01b03165b6040516001600160a01b039091168152602001610181565b348015610321575f80fd5b506101ce60105481565b348015610336575f80fd5b506040805180820190915260078152662124aa21a7a4a760c91b6020820152610174565b348015610365575f80fd5b506101a96103743660046116ba565b6106c1565b348015610384575f80fd5b506102fe7358df81babdf15276e761808e872a3838cbecbcf981565b3480156103ab575f80fd5b506101ce60115481565b3480156103c0575f80fd5b506006546101a99060ff1681565b3480156103d9575f80fd5b5061015e6106cd565b3480156103ed575f80fd5b506101ce6103fc36600461173d565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146104585760405162461bcd60e51b815260040161044f90611769565b60405180910390fd5b6001600160a01b03919091165f908152600460205260409020805460ff1916911515919091179055565b60606040518060600160405280602181526020016119f960219139905090565b5f6104ae338484610a76565b5060015b92915050565b5f6104c56008600a611892565b6104d390633b9aca006118a0565b905090565b5f6104e4848484610b99565b610535843361053085604051806060016040528060288152602001611a1a602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611273565b610a76565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b031614610563575f80fd5b305f90815260016020526040902054801561058157610581816112ab565b4780156105915761059181611434565b5050565b5f546001600160a01b031633146105be5760405162461bcd60e51b815260040161044f90611769565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461062f5760405162461bcd60e51b815260040161044f90611769565b61063b6008600a611892565b61064990633b9aca006118a0565b600f556106586008600a611892565b61066690633b9aca006118a0565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106a06008600a611892565b6106ae90633b9aca006118a0565b60405190815260200160405180910390a1565b5f6104ae338484610b99565b5f546001600160a01b031633146106f65760405162461bcd60e51b815260040161044f90611769565b601454600160a01b900460ff16156107505760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161044f565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561079990309061078b6008600a611892565b61053090633b9aca006118a0565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061080d91906118b7565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561086c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089091906118b7565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fe91906118b7565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610945816001600160a01b03165f9081526001602052604090205490565b5f806109585f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109be573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109e391906118d2565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a38573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a5c91906118fd565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610ad85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161044f565b6001600160a01b038216610b395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161044f565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bfd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161044f565b6001600160a01b038216610c5f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161044f565b5f8111610cc05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161044f565b5f7358df81babdf15276e761808e872a3838cbecbcf8196001600160a01b03851601610d2e5760405162461bcd60e51b815260206004820152601e60248201527f536f7272792c2062616e616e6173206172652062616420666f7220796f750000604482015260640161044f565b7358df81babdf15276e761808e872a3838cbecbcf8196001600160a01b03841601610d9b5760405162461bcd60e51b815260206004820152601e60248201527f536f7272792c2062616e616e6173206172652062616420666f7220796f750000604482015260640161044f565b5f546001600160a01b03858116911614801590610dc557505f546001600160a01b03848116911614155b156111365760065460ff1615610e81576013546001600160a01b03848116911614801590610e0157506014546001600160a01b03848116911614155b15610e8157325f908152600560205260409020544311610e6f5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b606482015260840161044f565b325f9081526005602052604090204390555b6014546001600160a01b038581169116148015610eac57506013546001600160a01b03848116911614155b8015610ed057506001600160a01b0383165f9081526003602052604090205460ff16155b15610fc957600f54821115610f235760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b604482015260640161044f565b60105482610f45856001600160a01b03165f9081526001602052604090205490565b610f4f9190611918565b1115610f9d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161044f565b600d54600e541015610fb457823b15610fb4575f80fd5b600e8054905f610fc38361192b565b91905055505b610ff56064610fef600b54600e5411610fe457600754610fe8565b6009545b859061146f565b906114f4565b6014549091506001600160a01b03848116911614801561101e57506001600160a01b0384163014155b1561109957600f548211156110715760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b604482015260640161044f565b6110966064610fef600c54600e541161108c57600854610fe8565b600a54859061146f565b90505b305f90815260016020526040902054601454600160a81b900460ff161580156110cf57506014546001600160a01b038581169116145b80156110e45750601454600160b01b900460ff165b80156110f1575060115481115b80156111005750600d54600e54115b156111345761112261111d8461111884601254611535565b611535565b6112ab565b4780156111325761113247611434565b505b505b80156111ae57305f908152600160205260409020546111559082611549565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111a59085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111d090836115a7565b6001600160a01b0385165f908152600160205260409020556112136111f583836115a7565b6001600160a01b0385165f9081526001602052604090205490611549565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61125c85856115a7565b60405190815260200160405180910390a350505050565b5f81848411156112965760405162461bcd60e51b815260040161044f919061166f565b505f6112a28486611943565b95945050505050565b6014805460ff60a81b1916600160a81b179055801561142457601454600160a01b900460ff1615611424576040805160028082526060820183525f9260208301908036833701905050905030815f8151811061130957611309611956565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611360573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138491906118b7565b8160018151811061139757611397611956565b6001600160a01b0392831660209182029290920101526013546113bd9130911684610a76565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113f59085905f9086903090429060040161196a565b5f604051808303815f87803b15801561140c575f80fd5b505af115801561141e573d5f803e3d5ffd5b50505050505b506014805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015610591573d5f803e3d5ffd5b5f825f0361147e57505f6104b2565b5f61148983856118a0565b90508261149685836119d9565b146114ed5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161044f565b9392505050565b5f6114ed83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115e8565b5f81831161154357826114ed565b50919050565b5f806115558385611918565b9050838110156114ed5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161044f565b5f6114ed83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611273565b5f81836116085760405162461bcd60e51b815260040161044f919061166f565b505f6112a284866119d9565b6001600160a01b0381168114611628575f80fd5b50565b8015158114611628575f80fd5b5f8060408385031215611649575f80fd5b823561165481611614565b915060208301356116648161162b565b809150509250929050565b5f6020808352835180828501525f5b8181101561169a5785810183015185820160400152820161167e565b505f604082860101526040601f19601f8301168501019250505092915050565b5f80604083850312156116cb575f80fd5b82356116d681611614565b946020939093013593505050565b5f805f606084860312156116f6575f80fd5b833561170181611614565b9250602084013561171181611614565b929592945050506040919091013590565b5f60208284031215611732575f80fd5b81356114ed81611614565b5f806040838503121561174e575f80fd5b823561175981611614565b9150602083013561166481611614565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156117ec57815f19048211156117d2576117d261179e565b808516156117df57918102915b93841c93908002906117b7565b509250929050565b5f82611802575060016104b2565b8161180e57505f6104b2565b8160018114611824576002811461182e5761184a565b60019150506104b2565b60ff84111561183f5761183f61179e565b50506001821b6104b2565b5060208310610133831016604e8410600b841016171561186d575081810a6104b2565b61187783836117b2565b805f190482111561188a5761188a61179e565b029392505050565b5f6114ed60ff8416836117f4565b80820281158282048414176104b2576104b261179e565b5f602082840312156118c7575f80fd5b81516114ed81611614565b5f805f606084860312156118e4575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561190d575f80fd5b81516114ed8161162b565b808201808211156104b2576104b261179e565b5f6001820161193c5761193c61179e565b5060010190565b818103818111156104b2576104b261179e565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156119b85784516001600160a01b031683529383019391830191600101611993565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826119f357634e487b7160e01b5f52601260045260245ffd5b50049056fe4861727279506f747465724f62616d61486f6d657253696d70736f6e3639496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e18df22b7359488a3caaf656dded1198eb4ba23ea68c73af76061faa97e7cc8a64736f6c63430008140033
Deployed Bytecode
0x608060405260043610610134575f3560e01c8063751039fc116100a8578063a9059cbb1161006d578063a9059cbb1461035a578063b1a2c6f814610379578063bf474bed146103a0578063c876d0b9146103b5578063c9567bf9146103ce578063dd62ed3e146103e2575f80fd5b8063751039fc146102bd5780637d1db4a5146102d15780638da5cb5b146102e65780638f9a55c01461031657806395d89b411461032b575f80fd5b806323b872dd116100f957806323b872dd146101f0578063313ce5671461020f5780633bbac5791461022a57806351bc3c851461026157806370a0823114610275578063715018a6146102a9575f80fd5b806303c0f5d41461013f57806306fdde0314610160578063095ea7b31461018a5780630faee56f146101b957806318160ddd146101dc575f80fd5b3661013b57005b5f80fd5b34801561014a575f80fd5b5061015e610159366004611638565b610426565b005b34801561016b575f80fd5b50610174610482565b604051610181919061166f565b60405180910390f35b348015610195575f80fd5b506101a96101a43660046116ba565b6104a2565b6040519015158152602001610181565b3480156101c4575f80fd5b506101ce60125481565b604051908152602001610181565b3480156101e7575f80fd5b506101ce6104b8565b3480156101fb575f80fd5b506101a961020a3660046116e4565b6104d8565b34801561021a575f80fd5b5060405160088152602001610181565b348015610235575f80fd5b506101a9610244366004611722565b6001600160a01b03165f9081526004602052604090205460ff1690565b34801561026c575f80fd5b5061015e61053f565b348015610280575f80fd5b506101ce61028f366004611722565b6001600160a01b03165f9081526001602052604090205490565b3480156102b4575f80fd5b5061015e610595565b3480156102c8575f80fd5b5061015e610606565b3480156102dc575f80fd5b506101ce600f5481565b3480156102f1575f80fd5b505f546001600160a01b03165b6040516001600160a01b039091168152602001610181565b348015610321575f80fd5b506101ce60105481565b348015610336575f80fd5b506040805180820190915260078152662124aa21a7a4a760c91b6020820152610174565b348015610365575f80fd5b506101a96103743660046116ba565b6106c1565b348015610384575f80fd5b506102fe7358df81babdf15276e761808e872a3838cbecbcf981565b3480156103ab575f80fd5b506101ce60115481565b3480156103c0575f80fd5b506006546101a99060ff1681565b3480156103d9575f80fd5b5061015e6106cd565b3480156103ed575f80fd5b506101ce6103fc36600461173d565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146104585760405162461bcd60e51b815260040161044f90611769565b60405180910390fd5b6001600160a01b03919091165f908152600460205260409020805460ff1916911515919091179055565b60606040518060600160405280602181526020016119f960219139905090565b5f6104ae338484610a76565b5060015b92915050565b5f6104c56008600a611892565b6104d390633b9aca006118a0565b905090565b5f6104e4848484610b99565b610535843361053085604051806060016040528060288152602001611a1a602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190611273565b610a76565b5060019392505050565b60065461010090046001600160a01b0316336001600160a01b031614610563575f80fd5b305f90815260016020526040902054801561058157610581816112ab565b4780156105915761059181611434565b5050565b5f546001600160a01b031633146105be5760405162461bcd60e51b815260040161044f90611769565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b0316331461062f5760405162461bcd60e51b815260040161044f90611769565b61063b6008600a611892565b61064990633b9aca006118a0565b600f556106586008600a611892565b61066690633b9aca006118a0565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6106a06008600a611892565b6106ae90633b9aca006118a0565b60405190815260200160405180910390a1565b5f6104ae338484610b99565b5f546001600160a01b031633146106f65760405162461bcd60e51b815260040161044f90611769565b601454600160a01b900460ff16156107505760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161044f565b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915561079990309061078b6008600a611892565b61053090633b9aca006118a0565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061080d91906118b7565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561086c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061089091906118b7565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af11580156108da573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108fe91906118b7565b601480546001600160a01b039283166001600160a01b03199091161790556013541663f305d7194730610945816001600160a01b03165f9081526001602052604090205490565b5f806109585f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156109be573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109e391906118d2565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610a38573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a5c91906118fd565b506014805462ff00ff60a01b19166201000160a01b179055565b6001600160a01b038316610ad85760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161044f565b6001600160a01b038216610b395760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161044f565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610bfd5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161044f565b6001600160a01b038216610c5f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161044f565b5f8111610cc05760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161044f565b5f7358df81babdf15276e761808e872a3838cbecbcf8196001600160a01b03851601610d2e5760405162461bcd60e51b815260206004820152601e60248201527f536f7272792c2062616e616e6173206172652062616420666f7220796f750000604482015260640161044f565b7358df81babdf15276e761808e872a3838cbecbcf8196001600160a01b03841601610d9b5760405162461bcd60e51b815260206004820152601e60248201527f536f7272792c2062616e616e6173206172652062616420666f7220796f750000604482015260640161044f565b5f546001600160a01b03858116911614801590610dc557505f546001600160a01b03848116911614155b156111365760065460ff1615610e81576013546001600160a01b03848116911614801590610e0157506014546001600160a01b03848116911614155b15610e8157325f908152600560205260409020544311610e6f5760405162461bcd60e51b8152602060048201526024808201527f4f6e6c79206f6e65207472616e736665722070657220626c6f636b20616c6c6f6044820152633bb2b21760e11b606482015260840161044f565b325f9081526005602052604090204390555b6014546001600160a01b038581169116148015610eac57506013546001600160a01b03848116911614155b8015610ed057506001600160a01b0383165f9081526003602052604090205460ff16155b15610fc957600f54821115610f235760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b604482015260640161044f565b60105482610f45856001600160a01b03165f9081526001602052604090205490565b610f4f9190611918565b1115610f9d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e000000000000604482015260640161044f565b600d54600e541015610fb457823b15610fb4575f80fd5b600e8054905f610fc38361192b565b91905055505b610ff56064610fef600b54600e5411610fe457600754610fe8565b6009545b859061146f565b906114f4565b6014549091506001600160a01b03848116911614801561101e57506001600160a01b0384163014155b1561109957600f548211156110715760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b604482015260640161044f565b6110966064610fef600c54600e541161108c57600854610fe8565b600a54859061146f565b90505b305f90815260016020526040902054601454600160a81b900460ff161580156110cf57506014546001600160a01b038581169116145b80156110e45750601454600160b01b900460ff165b80156110f1575060115481115b80156111005750600d54600e54115b156111345761112261111d8461111884601254611535565b611535565b6112ab565b4780156111325761113247611434565b505b505b80156111ae57305f908152600160205260409020546111559082611549565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111a59085815260200190565b60405180910390a35b6001600160a01b0384165f908152600160205260409020546111d090836115a7565b6001600160a01b0385165f908152600160205260409020556112136111f583836115a7565b6001600160a01b0385165f9081526001602052604090205490611549565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61125c85856115a7565b60405190815260200160405180910390a350505050565b5f81848411156112965760405162461bcd60e51b815260040161044f919061166f565b505f6112a28486611943565b95945050505050565b6014805460ff60a81b1916600160a81b179055801561142457601454600160a01b900460ff1615611424576040805160028082526060820183525f9260208301908036833701905050905030815f8151811061130957611309611956565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611360573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138491906118b7565b8160018151811061139757611397611956565b6001600160a01b0392831660209182029290920101526013546113bd9130911684610a76565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906113f59085905f9086903090429060040161196a565b5f604051808303815f87803b15801561140c575f80fd5b505af115801561141e573d5f803e3d5ffd5b50505050505b506014805460ff60a81b19169055565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015610591573d5f803e3d5ffd5b5f825f0361147e57505f6104b2565b5f61148983856118a0565b90508261149685836119d9565b146114ed5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161044f565b9392505050565b5f6114ed83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506115e8565b5f81831161154357826114ed565b50919050565b5f806115558385611918565b9050838110156114ed5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161044f565b5f6114ed83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611273565b5f81836116085760405162461bcd60e51b815260040161044f919061166f565b505f6112a284866119d9565b6001600160a01b0381168114611628575f80fd5b50565b8015158114611628575f80fd5b5f8060408385031215611649575f80fd5b823561165481611614565b915060208301356116648161162b565b809150509250929050565b5f6020808352835180828501525f5b8181101561169a5785810183015185820160400152820161167e565b505f604082860101526040601f19601f8301168501019250505092915050565b5f80604083850312156116cb575f80fd5b82356116d681611614565b946020939093013593505050565b5f805f606084860312156116f6575f80fd5b833561170181611614565b9250602084013561171181611614565b929592945050506040919091013590565b5f60208284031215611732575f80fd5b81356114ed81611614565b5f806040838503121561174e575f80fd5b823561175981611614565b9150602083013561166481611614565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156117ec57815f19048211156117d2576117d261179e565b808516156117df57918102915b93841c93908002906117b7565b509250929050565b5f82611802575060016104b2565b8161180e57505f6104b2565b8160018114611824576002811461182e5761184a565b60019150506104b2565b60ff84111561183f5761183f61179e565b50506001821b6104b2565b5060208310610133831016604e8410600b841016171561186d575081810a6104b2565b61187783836117b2565b805f190482111561188a5761188a61179e565b029392505050565b5f6114ed60ff8416836117f4565b80820281158282048414176104b2576104b261179e565b5f602082840312156118c7575f80fd5b81516114ed81611614565b5f805f606084860312156118e4575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561190d575f80fd5b81516114ed8161162b565b808201808211156104b2576104b261179e565b5f6001820161193c5761193c61179e565b5060010190565b818103818111156104b2576104b261179e565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156119b85784516001600160a01b031683529383019391830191600101611993565b50506001600160a01b03969096166060850152505050608001529392505050565b5f826119f357634e487b7160e01b5f52601260045260245ffd5b50049056fe4861727279506f747465724f62616d61486f6d657253696d70736f6e3639496e7545524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220e18df22b7359488a3caaf656dded1198eb4ba23ea68c73af76061faa97e7cc8a64736f6c63430008140033
Deployed Bytecode Sourcemap
3638:8775:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10819:105;;;;;;;;;;-1:-1:-1;10819:105:0;;;;;:::i;:::-;;:::i;:::-;;5671:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6504:161;;;;;;;;;;-1:-1:-1;6504:161:0;;;;;:::i;:::-;;:::i;:::-;;;1698:14:1;;1691:22;1673:41;;1661:2;1646:18;6504:161:0;1533:187:1;4861:53:0;;;;;;;;;;;;;;;;;;;1871:25:1;;;1859:2;1844:18;4861:53:0;1725:177:1;5948:95:0;;;;;;;;;;;;;:::i;6673:313::-;;;;;;;;;;-1:-1:-1;6673:313:0;;;;;:::i;:::-;;:::i;5857:83::-;;;;;;;;;;-1:-1:-1;5857:83:0;;4470:1;2510:36:1;;2498:2;2483:18;5857:83:0;2368:184:1;11032:83:0;;;;;;;;;;-1:-1:-1;11032:83:0;;;;;:::i;:::-;-1:-1:-1;;;;;11100:7:0;11079:4;11100:7;;;:4;:7;;;;;;;;;11032:83;12042:348;;;;;;;;;;;;;:::i;6051:119::-;;;;;;;;;;-1:-1:-1;6051:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6144:18:0;6117:7;6144:18;;;:9;:18;;;;;;;6051:119;2719:148;;;;;;;;;;;;;:::i;10611:196::-;;;;;;;;;;;;;:::i;4670:58::-;;;;;;;;;;;;;;;;2505:79;;;;;;;;;;-1:-1:-1;2543:7:0;2570:6;-1:-1:-1;;;;;2570:6:0;2505:79;;;-1:-1:-1;;;;;2973:32:1;;;2955:51;;2943:2;2928:18;2505:79:0;2809:203:1;4735:56:0;;;;;;;;;;;;;;;;5762:87;;;;;;;;;;-1:-1:-1;5834:7:0;;;;;;;;;;;;-1:-1:-1;;;5834:7:0;;;;5762:87;;6178:167;;;;;;;;;;-1:-1:-1;6178:167:0;;;;;:::i;:::-;;:::i;5008:77::-;;;;;;;;;;;;5043:42;5008:77;;4798:56;;;;;;;;;;;;;;;;4027:40;;;;;;;;;;-1:-1:-1;4027:40:0;;;;;;;;11123:671;;;;;;;;;;;;;:::i;6353:143::-;;;;;;;;;;-1:-1:-1;6353:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6461:18:0;;;6434:7;6461:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6353:143;10819:105;2632:6;;-1:-1:-1;;;;;2632:6:0;340:10;2632:22;2624:67;;;;-1:-1:-1;;;2624:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;10895:13:0;;;::::1;;::::0;;;:4:::1;:13;::::0;;;;:21;;-1:-1:-1;;10895:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;10819:105::o;5671:83::-;5708:13;5741:5;;;;;;;;;;;;;;;;;5734:12;;5671:83;:::o;6504:161::-;6579:4;6596:39;340:10;6619:7;6628:6;6596:8;:39::i;:::-;-1:-1:-1;6653:4:0;6504:161;;;;;:::o;5948:95::-;6001:7;4526:13;4470:1;4526:2;:13;:::i;:::-;4513:26;;:10;:26;:::i;:::-;6021:14;;5948:95;:::o;6673:313::-;6771:4;6788:36;6798:6;6806:9;6817:6;6788:9;:36::i;:::-;6835:121;6844:6;340:10;6866:89;6904:6;6866:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6866:19:0;;;;;;:11;:19;;;;;;;;340:10;6866:33;;;;;;;;;;:37;:89::i;:::-;6835:8;:121::i;:::-;-1:-1:-1;6974:4:0;6673:313;;;;;:::o;12042:348::-;12106:10;;;;;-1:-1:-1;;;;;12106:10:0;340;-1:-1:-1;;;;;12092:24:0;;12084:33;;;;;;12167:4;12128:20;6144:18;;;:9;:18;;;;;;12187:14;;12184:73;;12215:30;12232:12;12215:16;:30::i;:::-;12286:21;12321:12;;12318:65;;12347:24;12360:10;12347:12;:24::i;:::-;12073:317;;12042:348::o;2719:148::-;2632:6;;-1:-1:-1;;;;;2632:6:0;340:10;2632:22;2624:67;;;;-1:-1:-1;;;2624:67:0;;;;;;;:::i;:::-;2826:1:::1;2810:6:::0;;2789:40:::1;::::0;-1:-1:-1;;;;;2810:6:0;;::::1;::::0;2789:40:::1;::::0;2826:1;;2789:40:::1;2857:1;2840:19:::0;;-1:-1:-1;;;;;;2840:19:0::1;::::0;;2719:148::o;10611:196::-;2632:6;;-1:-1:-1;;;;;2632:6:0;340:10;2632:22;2624:67;;;;-1:-1:-1;;;2624:67:0;;;;;;;:::i;:::-;4526:13:::1;4470:1;4526:2;:13;:::i;:::-;4513:26;::::0;:10:::1;:26;:::i;:::-;10664:12;:22:::0;4526:13:::1;4470:1;4526:2;:13;:::i;:::-;4513:26;::::0;:10:::1;:26;:::i;:::-;10697:14;:22:::0;10730:20:::1;:26:::0;;-1:-1:-1;;10730:26:0::1;::::0;;10772:27:::1;4526:13;4470:1;-1:-1:-1::0;4526:13:0::1;:::i;:::-;4513:26;::::0;:10:::1;:26;:::i;:::-;10772:27;::::0;1871:25:1;;;1859:2;1844:18;10772:27:0::1;;;;;;;10611:196::o:0;6178:167::-;6256:4;6273:42;340:10;6297:9;6308:6;6273:9;:42::i;11123:671::-;2632:6;;-1:-1:-1;;;;;2632:6:0;340:10;2632:22;2624:67;;;;-1:-1:-1;;;2624:67:0;;;;;;;:::i;:::-;11187:11:::1;::::0;-1:-1:-1;;;11187:11:0;::::1;;;11186:12;11178:47;;;::::0;-1:-1:-1;;;11178:47:0;;5661:2:1;11178:47:0::1;::::0;::::1;5643:21:1::0;5700:2;5680:18;;;5673:30;5739:25;5719:18;;;5712:53;5782:18;;11178:47:0::1;5459:347:1::0;11178:47:0::1;11236:15;:80:::0;;-1:-1:-1;;;;;;11236:80:0::1;11273:42;11236:80:::0;;::::1;::::0;;;11327:58:::1;::::0;11344:4:::1;::::0;4526:13:::1;4470:1;4526:2;:13;:::i;:::-;4513:26;::::0;:10:::1;:26;:::i;11327:58::-;11430:15;;;;;;;;;-1:-1:-1::0;;;;;11430:15:0::1;-1:-1:-1::0;;;;;11430:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;11412:55:0::1;;11476:4;11483:15;;;;;;;;;-1:-1:-1::0;;;;;11483:15:0::1;-1:-1:-1::0;;;;;11483:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11412:94;::::0;-1:-1:-1;;;;;;11412:94:0::1;::::0;;;;;;-1:-1:-1;;;;;6297:15:1;;;11412:94:0::1;::::0;::::1;6279:34:1::0;6349:15;;6329:18;;;6322:43;6214:18;;11412:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11396:13;:110:::0;;-1:-1:-1;;;;;11396:110:0;;::::1;-1:-1:-1::0;;;;;;11396:110:0;;::::1;;::::0;;11517:15:::1;::::0;::::1;:31;11556:21;11587:4;11593:24;11587:4:::0;-1:-1:-1;;;;;6144:18:0;6117:7;6144:18;;;:9;:18;;;;;;;6051:119;11593:24:::1;11618:1;11620::::0;11622:7:::1;2543::::0;2570:6;-1:-1:-1;;;;;2570:6:0;;2505:79;11622:7:::1;11517:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;11517:129:0;;;-1:-1:-1;;;;;6735:15:1;;;11517:129:0::1;::::0;::::1;6717:34:1::0;6767:18;;;6760:34;;;;6810:18;;;6803:34;;;;6853:18;;;6846:34;6917:15;;;6896:19;;;6889:44;11630:15:0::1;6949:19:1::0;;;6942:35;6651:19;;11517:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;11664:13:0::1;::::0;11695:15:::1;::::0;11657:71:::1;::::0;-1:-1:-1;;;11657:71:0;;-1:-1:-1;;;;;11695:15:0;;::::1;11657:71;::::0;::::1;7473:51:1::0;-1:-1:-1;;7540:18:1;;;7533:34;11664:13:0;::::1;::::0;-1:-1:-1;11657:29:0::1;::::0;7446:18:1;;11657:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;11739:11:0::1;:18:::0;;-1:-1:-1;;;;11768:18:0;-1:-1:-1;;;11768:18:0;;;11123:671::o;6994:335::-;-1:-1:-1;;;;;7087:19:0;;7079:68;;;;-1:-1:-1;;;7079:68:0;;8030:2:1;7079:68:0;;;8012:21:1;8069:2;8049:18;;;8042:30;8108:34;8088:18;;;8081:62;-1:-1:-1;;;8159:18:1;;;8152:34;8203:19;;7079:68:0;7828:400:1;7079:68:0;-1:-1:-1;;;;;7166:21:0;;7158:68;;;;-1:-1:-1;;;7158:68:0;;8435:2:1;7158:68:0;;;8417:21:1;8474:2;8454:18;;;8447:30;8513:34;8493:18;;;8486:62;-1:-1:-1;;;8564:18:1;;;8557:32;8606:19;;7158:68:0;8233:398:1;7158:68:0;-1:-1:-1;;;;;7237:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7289:32;;1871:25:1;;;7289:32:0;;1844:18:1;7289:32:0;;;;;;;6994:335;;;:::o;7337:2595::-;-1:-1:-1;;;;;7425:18:0;;7417:68;;;;-1:-1:-1;;;7417:68:0;;8838:2:1;7417:68:0;;;8820:21:1;8877:2;8857:18;;;8850:30;8916:34;8896:18;;;8889:62;-1:-1:-1;;;8967:18:1;;;8960:35;9012:19;;7417:68:0;8636:401:1;7417:68:0;-1:-1:-1;;;;;7504:16:0;;7496:64;;;;-1:-1:-1;;;7496:64:0;;9244:2:1;7496:64:0;;;9226:21:1;9283:2;9263:18;;;9256:30;9322:34;9302:18;;;9295:62;-1:-1:-1;;;9373:18:1;;;9366:33;9416:19;;7496:64:0;9042:399:1;7496:64:0;7588:1;7579:6;:10;7571:64;;;;-1:-1:-1;;;7571:64:0;;9648:2:1;7571:64:0;;;9630:21:1;9687:2;9667:18;;;9660:30;9726:34;9706:18;;;9699:62;-1:-1:-1;;;9777:18:1;;;9770:39;9826:19;;7571:64:0;9446:405:1;7571:64:0;7646:17;-1:-1:-1;;;;;;;7684:25:0;;;7676:68;;;;-1:-1:-1;;;7676:68:0;;10058:2:1;7676:68:0;;;10040:21:1;10097:2;10077:18;;;10070:30;10136:32;10116:18;;;10109:60;10186:18;;7676:68:0;9856:354:1;7676:68:0;-1:-1:-1;;;;;;;7763:23:0;;;7755:66;;;;-1:-1:-1;;;7755:66:0;;10058:2:1;7755:66:0;;;10040:21:1;10097:2;10077:18;;;10070:30;10136:32;10116:18;;;10109:60;10186:18;;7755:66:0;9856:354:1;7755:66:0;2543:7;2570:6;-1:-1:-1;;;;;7837:15:0;;;2570:6;;7837:15;;;;:32;;-1:-1:-1;2543:7:0;2570:6;-1:-1:-1;;;;;7856:13:0;;;2570:6;;7856:13;;7837:32;7833:1743;;;7900:20;;;;7896:346;;;7959:15;;-1:-1:-1;;;;;7945:30:0;;;7959:15;;7945:30;;;;:62;;-1:-1:-1;7993:13:0;;-1:-1:-1;;;;;7979:28:0;;;7993:13;;7979:28;;7945:62;7941:286;;;8067:9;8038:39;;;;:28;:39;;;;;;8080:12;-1:-1:-1;8030:102:0;;;;-1:-1:-1;;;8030:102:0;;10417:2:1;8030:102:0;;;10399:21:1;10456:2;10436:18;;;10429:30;10495:34;10475:18;;;10468:62;-1:-1:-1;;;10546:18:1;;;10539:34;10590:19;;8030:102:0;10215:400:1;8030:102:0;8182:9;8153:39;;;;:28;:39;;;;;8195:12;8153:54;;7941:286;8270:13;;-1:-1:-1;;;;;8262:21:0;;;8270:13;;8262:21;:55;;;;-1:-1:-1;8301:15:0;;-1:-1:-1;;;;;8287:30:0;;;8301:15;;8287:30;;8262:55;:83;;;;-1:-1:-1;;;;;;8323:22:0;;;;;;:18;:22;;;;;;;;8321:24;8262:83;8258:428;;;8385:12;;8375:6;:22;;8367:60;;;;-1:-1:-1;;;8367:60:0;;10822:2:1;8367:60:0;;;10804:21:1;10861:2;10841:18;;;10834:30;-1:-1:-1;;;10880:18:1;;;10873:55;10945:18;;8367:60:0;10620:349:1;8367:60:0;8480:14;;8470:6;8454:13;8464:2;-1:-1:-1;;;;;6144:18:0;6117:7;6144:18;;;:9;:18;;;;;;;6051:119;8454:13;:22;;;;:::i;:::-;:40;;8446:79;;;;-1:-1:-1;;;8446:79:0;;11306:2:1;8446:79:0;;;11288:21:1;11345:2;11325:18;;;11318:30;11384:28;11364:18;;;11357:56;11430:18;;8446:79:0;11104:350:1;8446:79:0;8557:18;;8547:9;;:28;8544:97;;;11970:20;;12018:8;8597:24;;;;;;8659:9;:11;;;:9;:11;;;:::i;:::-;;;;;;8258:428;8716:76;8788:3;8716:67;8738:15;;8728:9;;:25;8727:55;;8768:14;;8727:55;;;8755:12;;8727:55;8716:6;;:10;:67::i;:::-;:71;;:76::i;:::-;8816:13;;8704:88;;-1:-1:-1;;;;;;8810:19:0;;;8816:13;;8810:19;:43;;;;-1:-1:-1;;;;;;8833:20:0;;8848:4;8833:20;;8810:43;8807:253;;;8892:12;;8882:6;:22;;8874:60;;;;-1:-1:-1;;;8874:60:0;;10822:2:1;8874:60:0;;;10804:21:1;10861:2;10841:18;;;10834:30;-1:-1:-1;;;10880:18:1;;;10873:55;10945:18;;8874:60:0;10620:349:1;8874:60:0;8965:79;9040:3;8965:70;8987:16;;8977:9;;:26;8976:58;;9019:15;;8976:58;;;9005:13;;8965:6;;:10;:70::i;:79::-;8953:91;;8807:253;9125:4;9076:28;6144:18;;;:9;:18;;;;;;9151:6;;-1:-1:-1;;;9151:6:0;;;;9150:7;:30;;;;-1:-1:-1;9167:13:0;;-1:-1:-1;;;;;9161:19:0;;;9167:13;;9161:19;9150:30;:45;;;;-1:-1:-1;9184:11:0;;-1:-1:-1;;;9184:11:0;;;;9150:45;:87;;;;;9220:17;;9199:20;:38;9150:87;:119;;;;;9251:18;;9241:9;;:28;9150:119;9146:419;;;9290:67;9307:49;9311:6;9318:37;9322:20;9343:11;;9318:3;:37::i;:::-;9307:3;:49::i;:::-;9290:16;:67::i;:::-;9405:21;9448:22;;9445:105;;9495:35;9508:21;9495:12;:35::i;:::-;9271:294;9146:419;7871:1705;7833:1743;9591:11;;9588:161;;9659:4;9641:24;;;;:9;:24;;;;;;:39;;9670:9;9641:28;:39::i;:::-;9634:4;9616:24;;;;:9;:24;;;;;;;:64;;;;9698:39;;-1:-1:-1;;;;;9698:39:0;;;;;;;9727:9;1871:25:1;;1859:2;1844:18;;1725:177;9698:39:0;;;;;;;;9588:161;-1:-1:-1;;;;;9775:15:0;;;;;;:9;:15;;;;;;:27;;9795:6;9775:19;:27::i;:::-;-1:-1:-1;;;;;9759:15:0;;;;;;:9;:15;;;;;:43;9827:40;9845:21;:6;9856:9;9845:10;:21::i;:::-;-1:-1:-1;;;;;9827:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9813:13:0;;;;;;;:9;:13;;;;;:54;;;;9883:41;;;9902:21;:6;9913:9;9902:10;:21::i;:::-;9883:41;;1871:25:1;;;1859:2;1844:18;9883:41:0;;;;;;;7406:2526;7337:2595;;;:::o;1397:190::-;1483:7;1519:12;1511:6;;;;1503:29;;;;-1:-1:-1;;;1503:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1543:9:0;1555:5;1559:1;1555;:5;:::i;:::-;1543:17;1397:190;-1:-1:-1;;;;;1397:190:0:o;10048:555::-;5280:6;:13;;-1:-1:-1;;;;5280:13:0;-1:-1:-1;;;5280:13:0;;;10126:27;;10145:7:::1;10126:27;10167:11;::::0;-1:-1:-1;;;10167:11:0;::::1;;;10163:25:::0;10180:7:::1;10163:25;10222:16;::::0;;10236:1:::1;10222:16:::0;;;;;::::1;::::0;;10198:21:::1;::::0;10222:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10222:16:0::1;10198:40;;10267:4;10249;10254:1;10249:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10249:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10293:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10293:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10249:7;;10293:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10283:4;10288:1;10283:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10283:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10358:15:::1;::::0;10326:62:::1;::::0;10343:4:::1;::::0;10358:15:::1;10376:11:::0;10326:8:::1;:62::i;:::-;10399:15;::::0;:196:::1;::::0;-1:-1:-1;;;10399:196:0;;-1:-1:-1;;;;;10399:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10480:11;;10399:15:::1;::::0;10522:4;;10549::::1;::::0;10569:15:::1;::::0;10399:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10115:488;5304:1;-1:-1:-1::0;5316:6:0;:14;;-1:-1:-1;;;;5316:14:0;;;10048:555::o;10932:92::-;10989:10;;:27;;:10;;;;-1:-1:-1;;;;;10989:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;1595:246;1653:7;1677:1;1682;1677:6;1673:47;;-1:-1:-1;1707:1:0;1700:8;;1673:47;1730:9;1742:5;1746:1;1742;:5;:::i;:::-;1730:17;-1:-1:-1;1775:1:0;1766:5;1770:1;1730:17;1766:5;:::i;:::-;:10;1758:56;;;;-1:-1:-1;;;1758:56:0;;13405:2:1;1758:56:0;;;13387:21:1;13444:2;13424:18;;;13417:30;13483:34;13463:18;;;13456:62;-1:-1:-1;;;13534:18:1;;;13527:31;13575:19;;1758:56:0;13203:397:1;1758:56:0;1832:1;1595:246;-1:-1:-1;;;1595:246:0:o;1849:132::-;1907:7;1934:39;1938:1;1941;1934:39;;;;;;;;;;;;;;;;;:3;:39::i;9942:98::-;9999:7;10026:1;10024;:3;10023:9;;10031:1;10023:9;;;-1:-1:-1;10029:1:0;9942:98;-1:-1:-1;9942:98:0:o;1066:179::-;1124:7;;1156:5;1160:1;1156;:5;:::i;:::-;1144:17;;1185:1;1180;:6;;1172:46;;;;-1:-1:-1;;;1172:46:0;;13807:2:1;1172:46:0;;;13789:21:1;13846:2;13826:18;;;13819:30;13885:29;13865:18;;;13858:57;13932:18;;1172:46:0;13605:351:1;1253:136:0;1311:7;1338:43;1342:1;1345;1338:43;;;;;;;;;;;;;;;;;:3;:43::i;1989:189::-;2075:7;2110:12;2103:5;2095:28;;;;-1:-1:-1;;;2095:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2134:9:0;2146:5;2150:1;2146;:5;:::i;14:131:1:-;-1:-1:-1;;;;;89:31:1;;79:42;;69:70;;135:1;132;125:12;69:70;14:131;:::o;150:118::-;236:5;229:13;222:21;215:5;212:32;202:60;;258:1;255;248:12;273:382;338:6;346;399:2;387:9;378:7;374:23;370:32;367:52;;;415:1;412;405:12;367:52;454:9;441:23;473:31;498:5;473:31;:::i;:::-;523:5;-1:-1:-1;580:2:1;565:18;;552:32;593:30;552:32;593:30;:::i;:::-;642:7;632:17;;;273:382;;;;;:::o;660:548::-;772:4;801:2;830;819:9;812:21;862:6;856:13;905:6;900:2;889:9;885:18;878:34;930:1;940:140;954:6;951:1;948:13;940:140;;;1049:14;;;1045:23;;1039:30;1015:17;;;1034:2;1011:26;1004:66;969:10;;940:140;;;944:3;1129:1;1124:2;1115:6;1104:9;1100:22;1096:31;1089:42;1199:2;1192;1188:7;1183:2;1175:6;1171:15;1167:29;1156:9;1152:45;1148:54;1140:62;;;;660:548;;;;:::o;1213:315::-;1281:6;1289;1342:2;1330:9;1321:7;1317:23;1313:32;1310:52;;;1358:1;1355;1348:12;1310:52;1397:9;1384:23;1416:31;1441:5;1416:31;:::i;:::-;1466:5;1518:2;1503:18;;;;1490:32;;-1:-1:-1;;;1213:315:1:o;1907:456::-;1984:6;1992;2000;2053:2;2041:9;2032:7;2028:23;2024:32;2021:52;;;2069:1;2066;2059:12;2021:52;2108:9;2095:23;2127:31;2152:5;2127:31;:::i;:::-;2177:5;-1:-1:-1;2234:2:1;2219:18;;2206:32;2247:33;2206:32;2247:33;:::i;:::-;1907:456;;2299:7;;-1:-1:-1;;;2353:2:1;2338:18;;;;2325:32;;1907:456::o;2557:247::-;2616:6;2669:2;2657:9;2648:7;2644:23;2640:32;2637:52;;;2685:1;2682;2675:12;2637:52;2724:9;2711:23;2743:31;2768:5;2743:31;:::i;3017:388::-;3085:6;3093;3146:2;3134:9;3125:7;3121:23;3117:32;3114:52;;;3162:1;3159;3152:12;3114:52;3201:9;3188:23;3220:31;3245:5;3220:31;:::i;:::-;3270:5;-1:-1:-1;3327:2:1;3312:18;;3299:32;3340:33;3299:32;3340:33;:::i;3410:356::-;3612:2;3594:21;;;3631:18;;;3624:30;3690:34;3685:2;3670:18;;3663:62;3757:2;3742:18;;3410:356::o;3771:127::-;3832:10;3827:3;3823:20;3820:1;3813:31;3863:4;3860:1;3853:15;3887:4;3884:1;3877:15;3903:422;3992:1;4035:5;3992:1;4049:270;4070:7;4060:8;4057:21;4049:270;;;4129:4;4125:1;4121:6;4117:17;4111:4;4108:27;4105:53;;;4138:18;;:::i;:::-;4188:7;4178:8;4174:22;4171:55;;;4208:16;;;;4171:55;4287:22;;;;4247:15;;;;4049:270;;;4053:3;3903:422;;;;;:::o;4330:806::-;4379:5;4409:8;4399:80;;-1:-1:-1;4450:1:1;4464:5;;4399:80;4498:4;4488:76;;-1:-1:-1;4535:1:1;4549:5;;4488:76;4580:4;4598:1;4593:59;;;;4666:1;4661:130;;;;4573:218;;4593:59;4623:1;4614:10;;4637:5;;;4661:130;4698:3;4688:8;4685:17;4682:43;;;4705:18;;:::i;:::-;-1:-1:-1;;4761:1:1;4747:16;;4776:5;;4573:218;;4875:2;4865:8;4862:16;4856:3;4850:4;4847:13;4843:36;4837:2;4827:8;4824:16;4819:2;4813:4;4810:12;4806:35;4803:77;4800:159;;;-1:-1:-1;4912:19:1;;;4944:5;;4800:159;4991:34;5016:8;5010:4;4991:34;:::i;:::-;5061:6;5057:1;5053:6;5049:19;5040:7;5037:32;5034:58;;;5072:18;;:::i;:::-;5110:20;;4330:806;-1:-1:-1;;;4330:806:1:o;5141:140::-;5199:5;5228:47;5269:4;5259:8;5255:19;5249:4;5228:47;:::i;5286:168::-;5359:9;;;5390;;5407:15;;;5401:22;;5387:37;5377:71;;5428:18;;:::i;5811:251::-;5881:6;5934:2;5922:9;5913:7;5909:23;5905:32;5902:52;;;5950:1;5947;5940:12;5902:52;5982:9;5976:16;6001:31;6026:5;6001:31;:::i;6988:306::-;7076:6;7084;7092;7145:2;7133:9;7124:7;7120:23;7116:32;7113:52;;;7161:1;7158;7151:12;7113:52;7190:9;7184:16;7174:26;;7240:2;7229:9;7225:18;7219:25;7209:35;;7284:2;7273:9;7269:18;7263:25;7253:35;;6988:306;;;;;:::o;7578:245::-;7645:6;7698:2;7686:9;7677:7;7673:23;7669:32;7666:52;;;7714:1;7711;7704:12;7666:52;7746:9;7740:16;7765:28;7787:5;7765:28;:::i;10974:125::-;11039:9;;;11060:10;;;11057:36;;;11073:18;;:::i;11459:135::-;11498:3;11519:17;;;11516:43;;11539:18;;:::i;:::-;-1:-1:-1;11586:1:1;11575:13;;11459:135::o;11599:128::-;11666:9;;;11687:11;;;11684:37;;;11701:18;;:::i;11864:127::-;11925:10;11920:3;11916:20;11913:1;11906:31;11956:4;11953:1;11946:15;11980:4;11977:1;11970:15;11996:980;12258:4;12306:3;12295:9;12291:19;12337:6;12326:9;12319:25;12363:2;12401:6;12396:2;12385:9;12381:18;12374:34;12444:3;12439:2;12428:9;12424:18;12417:31;12468:6;12503;12497:13;12534:6;12526;12519:22;12572:3;12561:9;12557:19;12550:26;;12611:2;12603:6;12599:15;12585:29;;12632:1;12642:195;12656:6;12653:1;12650:13;12642:195;;;12721:13;;-1:-1:-1;;;;;12717:39:1;12705:52;;12812:15;;;;12777:12;;;;12753:1;12671:9;12642:195;;;-1:-1:-1;;;;;;;12893:32:1;;;;12888:2;12873:18;;12866:60;-1:-1:-1;;;12957:3:1;12942:19;12935:35;12854:3;11996:980;-1:-1:-1;;;11996:980:1:o;12981:217::-;13021:1;13047;13037:132;;13091:10;13086:3;13082:20;13079:1;13072:31;13126:4;13123:1;13116:15;13154:4;13151:1;13144:15;13037:132;-1:-1:-1;13183:9:1;;12981:217::o
Swarm Source
ipfs://e18df22b7359488a3caaf656dded1198eb4ba23ea68c73af76061faa97e7cc8a
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.