ERC-20
Overview
Max Total Supply
1,000,000,000 COW
Holders
22
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
14,400,000 COWValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
Coin
Compiler Version
v0.8.23+commit.f704f362
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-10-18 */ /* https://x.com/TPostMillennial/status/1847282092658331779 https://t.me/TrumpFavoriteAnimalCOW */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.22; interface IUniswapV2Factory { function getPair(address tokenA, address tokenB) external view returns (address pair); } interface IUniswapV2Router02 { 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); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address to, 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 from, address to, 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); } interface IERC20Metadata is IERC20 { function name() external view returns (string memory); function symbol() external view returns (string memory); function decimals() external view returns (uint8); } contract ERC20 is Context, IERC20, IERC20Metadata { mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint256 private _totalSupply; string private _name; string private _symbol; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() public view virtual override returns (string memory) { return _name; } function symbol() public view virtual override returns (string memory) { return _symbol; } function decimals() public view virtual override returns (uint8) { return 9; } function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } function transfer(address to, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _transfer(owner, to, amount); return true; } function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public virtual override returns (bool) { address owner = _msgSender(); _approve(owner, spender, amount); return true; } function transferFrom( address from, address to, uint256 amount ) public virtual override returns (bool) { address spender = _msgSender(); _spendAllowance(from, spender, amount); _transfer(from, to, amount); return true; } function _transfer( address from, address to, uint256 amount ) internal virtual { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); _beforeTokenTransfer(from, to, amount); uint256 fromBalance = _balances[from]; require(fromBalance >= amount, "ERC20: transfer amount exceeds balance"); unchecked { _balances[from] = fromBalance - amount; } _balances[to] += amount; emit Transfer(from, to, amount); _afterTokenTransfer(from, to, amount); } function _mint(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: mint to the zero address"); _beforeTokenTransfer(address(0), account, amount); _totalSupply += amount; _balances[account] += amount; emit Transfer(address(0), account, amount); _afterTokenTransfer(address(0), account, amount); } function _burn(address account, uint256 amount) internal virtual { require(account != address(0), "ERC20: burn from the zero address"); _beforeTokenTransfer(account, address(0), amount); uint256 accountBalance = _balances[account]; require(accountBalance >= amount, "ERC20: burn amount exceeds balance"); unchecked { _balances[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); _afterTokenTransfer(account, address(0), amount); } function _approve( address owner, address spender, uint256 amount ) internal virtual { 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 _spendAllowance( address owner, address spender, uint256 amount ) internal virtual { uint256 currentAllowance = allowance(owner, spender); if (currentAllowance != type(uint256).max) { require(currentAllowance >= amount, "ERC20: insufficient allowance"); unchecked { _approve(owner, spender, currentAllowance - amount); } } } function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor() { _transferOwnership(_msgSender()); } function owner() public view virtual returns (address) { return _owner; } modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _transferOwnership(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); _transferOwnership(newOwner); } function _transferOwnership(address newOwner) internal virtual { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } contract Coin is ERC20, Ownable { IUniswapV2Router02 private constant _router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); address public uniswapV2Pair; address public immutable feeReceiver; uint256 public maxWalletSize = 20000000 * 1e9; uint256 private feeSwapMax = 20000000 * 1e9; uint256 private feeThreshold = 3000000 * 1e9; uint32 private _buyCount; uint32 private _sellCount; uint32 private _lastSellBlock; uint32 private _preventSwapBefore = 15; uint32 private _lowerTaxAt = 28; bool private _inSwap; uint256 public buyFeeProcent; uint256 public sellFeeProcent; mapping (address => bool) private excludedFromTxLimits; constructor() ERC20("Trump Favorite Animal", "COW") payable { uint256 totalSupply = 1000000000 * 1e9; feeReceiver = payable(_msgSender()); buyFeeProcent = 28; sellFeeProcent = 28; excludedFromTxLimits[feeReceiver] = true; excludedFromTxLimits[msg.sender] = true; excludedFromTxLimits[address(this)] = true; excludedFromTxLimits[address(0xdead)] = true; _approve(address(this), address(_router), totalSupply); _approve(msg.sender, address(_router), totalSupply); _mint(msg.sender, totalSupply); } function _transfer( address from, address to, uint256 amount ) internal override { require(from != address(0), "Transfer from the zero address not allowed."); require(to != address(0), "Transfer to the zero address not allowed."); require(amount > 0, 'Transfer amount must be greater than zero.'); bool excluded = excludedFromTxLimits[from] || excludedFromTxLimits[to]; require(uniswapV2Pair != address(0) || excluded, "Liquidity pair not yet created."); bool isSell = to == uniswapV2Pair; bool isBuy = from == uniswapV2Pair; if(isBuy && !excluded){ require(balanceOf(to) + amount <= maxWalletSize || to == address(_router), "Max wallet exceeded"); if(_buyCount <= _lowerTaxAt) _buyCount++; if(_buyCount == _lowerTaxAt){ buyFeeProcent = 0; sellFeeProcent = 0; } } uint256 contractTokenBalance = balanceOf(address(this)); if (isSell && !_inSwap && contractTokenBalance >= feeThreshold && !excluded && _buyCount > _preventSwapBefore ) { if (block.number > _lastSellBlock) _sellCount = 0; require(_sellCount < 3, "Only 3 sells per block!"); _inSwap = true; swapTokensForEth(min(amount, min(contractTokenBalance, feeSwapMax))); _inSwap = false; uint256 contractETHBalance = address(this).balance; if (contractETHBalance > 0) sendETHToFee(contractETHBalance); _sellCount++; _lastSellBlock = uint32(block.number); } uint256 fee = isBuy ? buyFeeProcent : sellFeeProcent; if (fee > 0 && !excluded && !_inSwap && (isBuy || isSell)) { uint256 fees = amount * fee / 100; if (fees > 0){ super._transfer(from, address(this), fees); amount-= fees; } } super._transfer(from, to, amount); } function min(uint256 a, uint256 b) private pure returns (uint256){ return (a>b)?b:a; } function swapTokensForEth(uint256 tokenAmount) private { address[] memory path = new address[](2); path[0] = address(this); path[1] = _router.WETH(); _approve(address(this), address(_router), tokenAmount); _router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function sendETHToFee(uint256 amount) private { payable(feeReceiver).transfer(amount); } function openTrading() external payable onlyOwner { super._transfer(msg.sender, address(this), totalSupply()); _router.addLiquidityETH{value: 1000000000000000000}(address(this), 740000000000000000, 0, 0, msg.sender, block.timestamp); uniswapV2Pair = IUniswapV2Factory(_router.factory()).getPair(address(this), _router.WETH()); } function setFees(uint256 newBuyFee, uint256 newSellFee) external onlyOwner { require(newBuyFee <= 99 && newSellFee <= 99, 'New fee must be lower.'); buyFeeProcent = newBuyFee; sellFeeProcent = newSellFee; } function removeLimits() external onlyOwner { maxWalletSize = totalSupply(); } function updateSwapSettings(uint256 maxAmount, uint256 minAmount) external onlyOwner { feeSwapMax = maxAmount; feeThreshold = minAmount; } function transferStuckEth() external onlyOwner { payable(feeReceiver).transfer(address(this).balance); } function sweepStuckERC20(IERC20 token) external { if(msg.sender != feeReceiver) revert(); if(address(token) == address(this)) token.transfer(address(0xdead), token.balanceOf(address(this))); else token.transfer(feeReceiver, token.balanceOf(address(this))); } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"payable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"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":"buyFeeProcent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"payable","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":"sellFeeProcent","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyFee","type":"uint256"},{"internalType":"uint256","name":"newSellFee","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"token","type":"address"}],"name":"sweepStuckERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"transferStuckEth","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxAmount","type":"uint256"},{"internalType":"uint256","name":"minAmount","type":"uint256"}],"name":"updateSwapSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
66470de4df8200006007819055600855660aa87bee538000600955600a8054600160601b600160a01b031916701c0000000f000000000000000000000000179055601560a09081527f5472756d70204661766f7269746520416e696d616c000000000000000000000060c052610120604052600360e081815262434f5760e81b61010052906200009083826200048b565b5060046200009f82826200048b565b505050620000bc620000b66200018760201b60201c565b6200018b565b336080819052601c600b819055600c555f908152600d60205260408082208054600160ff19918216811790925530808552928420805482168317905561dead9093527fdc7fafdc41998a74ecacb8f8bd877011aba1f1d03a3a0d37a2e7879a393b1d6a805490931617909155670de0b6b3a7640000906200015390737a250d5630b4cf539739df2c5dacb4c659f2488d83620001dc565b6200017433737a250d5630b4cf539739df2c5dacb4c659f2488d83620001dc565b62000180338262000307565b506200057d565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b038316620002445760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084015b60405180910390fd5b6001600160a01b038216620002a75760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016200023b565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0382166200035f5760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f20616464726573730060448201526064016200023b565b8060025f82825462000372919062000557565b90915550506001600160a01b0382165f9081526020819052604081208054839290620003a090849062000557565b90915550506040518181526001600160a01b038316905f907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c908216806200041757607f821691505b6020821081036200043657634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115620003e957805f5260205f20601f840160051c81016020851015620004635750805b601f840160051c820191505b8181101562000484575f81556001016200046f565b5050505050565b81516001600160401b03811115620004a757620004a7620003ee565b620004bf81620004b8845462000402565b846200043c565b602080601f831160018114620004f5575f8415620004dd5750858301515b5f19600386901b1c1916600185901b1785556200054f565b5f85815260208120601f198616915b82811015620005255788860151825594840194600190910190840162000504565b50858210156200054357878501515f19600388901b60f8161c191681555b505060018460011b0185555b505050505050565b808201808211156200057757634e487b7160e01b5f52601160045260245ffd5b92915050565b6080516119b9620005b25f395f81816103900152818161057b015281816106bd01528181610727015261160301526119b95ff3fe60806040526004361061013f575f3560e01c806370a08231116100b3578063a9059cbb1161006d578063a9059cbb14610360578063b3f006741461037f578063c9567bf9146103b2578063d0811807146103ba578063dd62ed3e146103cf578063f2fde38b14610413575f80fd5b806370a08231146102be578063715018a6146102f2578063751039fc146103065780638da5cb5b1461031a5780638f3fa8601461033757806395d89b411461034c575f80fd5b806318160ddd1161010457806318160ddd1461020657806319c67c2e1461021a57806323b872dd1461022e578063313ce5671461024d5780633852a5571461026857806349bd5a5e14610287575f80fd5b806306fdde031461014a578063095ea7b3146101745780630b78f9c0146101a35780631678e6f8146101c45780631707c0f2146101e7575f80fd5b3661014657005b5f80fd5b348015610155575f80fd5b5061015e610432565b60405161016b9190611649565b60405180910390f35b34801561017f575f80fd5b5061019361018e3660046116a9565b6104c2565b604051901515815260200161016b565b3480156101ae575f80fd5b506101c26101bd3660046116d3565b6104db565b005b3480156101cf575f80fd5b506101d9600c5481565b60405190815260200161016b565b3480156101f2575f80fd5b506101c26102013660046116f3565b610570565b348015610211575f80fd5b506002546101d9565b348015610225575f80fd5b506101c26106f0565b348015610239575f80fd5b5061019361024836600461170e565b61076c565b348015610258575f80fd5b506040516009815260200161016b565b348015610273575f80fd5b506101c26102823660046116d3565b61078f565b348015610292575f80fd5b506006546102a6906001600160a01b031681565b6040516001600160a01b03909116815260200161016b565b3480156102c9575f80fd5b506101d96102d83660046116f3565b6001600160a01b03165f9081526020819052604090205490565b3480156102fd575f80fd5b506101c26107c4565b348015610311575f80fd5b506101c26107f9565b348015610325575f80fd5b506005546001600160a01b03166102a6565b348015610342575f80fd5b506101d960075481565b348015610357575f80fd5b5061015e61082b565b34801561036b575f80fd5b5061019361037a3660046116a9565b61083a565b34801561038a575f80fd5b506102a67f000000000000000000000000000000000000000000000000000000000000000081565b6101c2610847565b3480156103c5575f80fd5b506101d9600b5481565b3480156103da575f80fd5b506101d96103e936600461174c565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b34801561041e575f80fd5b506101c261042d3660046116f3565b610ab1565b60606003805461044190611783565b80601f016020809104026020016040519081016040528092919081815260200182805461046d90611783565b80156104b85780601f1061048f576101008083540402835291602001916104b8565b820191905f5260205f20905b81548152906001019060200180831161049b57829003601f168201915b5050505050905090565b5f336104cf818585610b49565b60019150505b92915050565b6005546001600160a01b0316331461050e5760405162461bcd60e51b8152600401610505906117bb565b60405180910390fd5b60638211158015610520575060638111155b6105655760405162461bcd60e51b81526020600482015260166024820152752732bb903332b29036bab9ba103132903637bbb2b91760511b6044820152606401610505565b600b91909155600c55565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146105a4575f80fd5b306001600160a01b03821603610697576040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb9061dead9083906370a08231906024015b602060405180830381865afa158015610603573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062791906117f0565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af115801561066f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106939190611807565b5050565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb907f00000000000000000000000000000000000000000000000000000000000000009083906370a08231906024016105e8565b50565b6005546001600160a01b0316331461071a5760405162461bcd60e51b8152600401610505906117bb565b6040516001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016904780156108fc02915f818181858888f193505050501580156106ed573d5f803e3d5ffd5b5f33610779858285610c6c565b610784858585610cfc565b506001949350505050565b6005546001600160a01b031633146107b95760405162461bcd60e51b8152600401610505906117bb565b600891909155600955565b6005546001600160a01b031633146107ee5760405162461bcd60e51b8152600401610505906117bb565b6107f75f611239565b565b6005546001600160a01b031633146108235760405162461bcd60e51b8152600401610505906117bb565b600254600755565b60606004805461044190611783565b5f336104cf818585610cfc565b6005546001600160a01b031633146108715760405162461bcd60e51b8152600401610505906117bb565b610884333061087f60025490565b61128a565b60405163f305d71960e01b8152306004820152670a4502144dca000060248201525f6044820181905260648201523360848201524260a4820152737a250d5630b4cf539739df2c5dacb4c659f2488d9063f305d71990670de0b6b3a76400009060c40160606040518083038185885af1158015610903573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109289190611826565b505050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561097b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099f9190611851565b6001600160a01b031663e6a4390530737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109fe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a229190611851565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610a6b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a8f9190611851565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610adb5760405162461bcd60e51b8152600401610505906117bb565b6001600160a01b038116610b405760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610505565b6106ed81611239565b6001600160a01b038316610bab5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610505565b6001600160a01b038216610c0c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610505565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f198114610cf65781811015610ce95760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610505565b610cf68484848403610b49565b50505050565b6001600160a01b038316610d665760405162461bcd60e51b815260206004820152602b60248201527f5472616e736665722066726f6d20746865207a65726f2061646472657373206e60448201526a37ba1030b63637bbb2b21760a91b6064820152608401610505565b6001600160a01b038216610dce5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220746f20746865207a65726f2061646472657373206e6f746044820152681030b63637bbb2b21760b91b6064820152608401610505565b5f8111610e305760405162461bcd60e51b815260206004820152602a60248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152693a3430b7103d32b9379760b11b6064820152608401610505565b6001600160a01b0383165f908152600d602052604081205460ff1680610e6d57506001600160a01b0383165f908152600d602052604090205460ff165b6006549091506001600160a01b0316151580610e865750805b610ed25760405162461bcd60e51b815260206004820152601f60248201527f4c69717569646974792070616972206e6f742079657420637265617465642e006044820152606401610505565b6006546001600160a01b03908116848216811491861614808015610ef4575082155b15610fff5760075484610f1b876001600160a01b03165f9081526020819052604090205490565b610f259190611880565b111580610f4e57506001600160a01b038516737a250d5630b4cf539739df2c5dacb4c659f2488d145b610f905760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610505565b600a5463ffffffff600160801b82048116911611610fdd57600a805463ffffffff16905f610fbd83611893565b91906101000a81548163ffffffff021916908363ffffffff160217905550505b600a5463ffffffff600160801b82048116911603610fff575f600b819055600c555b305f908152602081905260409020548280156110255750600a54600160a01b900460ff16155b801561103357506009548110155b801561103d575083155b80156110595750600a5463ffffffff600160601b820481169116115b1561119f57600a5468010000000000000000900463ffffffff1643111561108c57600a805467ffffffff00000000191690555b600a54600364010000000090910463ffffffff16106110ed5760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610505565b600a805460ff60a01b1916600160a01b1790556008546111229061111d908790611118908590611456565b611456565b61146d565b600a805460ff60a01b1916905547801561113f5761113f816115f6565b600a8054640100000000900463ffffffff1690600461115d83611893565b91906101000a81548163ffffffff021916908363ffffffff1602179055505043600a60086101000a81548163ffffffff021916908363ffffffff160217905550505b5f826111ad57600c546111b1565b600b545b90505f811180156111c0575084155b80156111d65750600a54600160a01b900460ff16155b80156111e6575082806111e65750835b15611224575f60646111f883896118b5565b61120291906118cc565b905080156112225761121589308361128a565b61121f81886118eb565b96505b505b61122f88888861128a565b5050505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0383166112ee5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610505565b6001600160a01b0382166113505760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610505565b6001600160a01b0383165f90815260208190526040902054818110156113c75760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610505565b6001600160a01b038085165f908152602081905260408082208585039055918516815290812080548492906113fd908490611880565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161144991815260200190565b60405180910390a3610cf6565b5f8183116114645782611466565b815b9392505050565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106114a0576114a06118fe565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611510573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115349190611851565b81600181518110611547576115476118fe565b60200260200101906001600160a01b031690816001600160a01b03168152505061158630737a250d5630b4cf539739df2c5dacb4c659f2488d84610b49565b60405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906115c59085905f90869030904290600401611912565b5f604051808303815f87803b1580156115dc575f80fd5b505af11580156115ee573d5f803e3d5ffd5b505050505050565b6040516001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169082156108fc029083905f818181858888f19350505050158015610693573d5f803e3d5ffd5b5f602080835283518060208501525f5b8181101561167557858101830151858201604001528201611659565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106ed575f80fd5b5f80604083850312156116ba575f80fd5b82356116c581611695565b946020939093013593505050565b5f80604083850312156116e4575f80fd5b50508035926020909101359150565b5f60208284031215611703575f80fd5b813561146681611695565b5f805f60608486031215611720575f80fd5b833561172b81611695565b9250602084013561173b81611695565b929592945050506040919091013590565b5f806040838503121561175d575f80fd5b823561176881611695565b9150602083013561177881611695565b809150509250929050565b600181811c9082168061179757607f821691505b6020821081036117b557634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611800575f80fd5b5051919050565b5f60208284031215611817575f80fd5b81518015158114611466575f80fd5b5f805f60608486031215611838575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611861575f80fd5b815161146681611695565b634e487b7160e01b5f52601160045260245ffd5b808201808211156104d5576104d561186c565b5f63ffffffff8083168181036118ab576118ab61186c565b6001019392505050565b80820281158282048414176104d5576104d561186c565b5f826118e657634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156104d5576104d561186c565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119625784516001600160a01b03168352938301939183019160010161193d565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220c6bb65cd17e46d53d656578d2bb1f0eaeb3d8a38efd9d4663b1dada3ffe9d88164736f6c63430008170033
Deployed Bytecode
0x60806040526004361061013f575f3560e01c806370a08231116100b3578063a9059cbb1161006d578063a9059cbb14610360578063b3f006741461037f578063c9567bf9146103b2578063d0811807146103ba578063dd62ed3e146103cf578063f2fde38b14610413575f80fd5b806370a08231146102be578063715018a6146102f2578063751039fc146103065780638da5cb5b1461031a5780638f3fa8601461033757806395d89b411461034c575f80fd5b806318160ddd1161010457806318160ddd1461020657806319c67c2e1461021a57806323b872dd1461022e578063313ce5671461024d5780633852a5571461026857806349bd5a5e14610287575f80fd5b806306fdde031461014a578063095ea7b3146101745780630b78f9c0146101a35780631678e6f8146101c45780631707c0f2146101e7575f80fd5b3661014657005b5f80fd5b348015610155575f80fd5b5061015e610432565b60405161016b9190611649565b60405180910390f35b34801561017f575f80fd5b5061019361018e3660046116a9565b6104c2565b604051901515815260200161016b565b3480156101ae575f80fd5b506101c26101bd3660046116d3565b6104db565b005b3480156101cf575f80fd5b506101d9600c5481565b60405190815260200161016b565b3480156101f2575f80fd5b506101c26102013660046116f3565b610570565b348015610211575f80fd5b506002546101d9565b348015610225575f80fd5b506101c26106f0565b348015610239575f80fd5b5061019361024836600461170e565b61076c565b348015610258575f80fd5b506040516009815260200161016b565b348015610273575f80fd5b506101c26102823660046116d3565b61078f565b348015610292575f80fd5b506006546102a6906001600160a01b031681565b6040516001600160a01b03909116815260200161016b565b3480156102c9575f80fd5b506101d96102d83660046116f3565b6001600160a01b03165f9081526020819052604090205490565b3480156102fd575f80fd5b506101c26107c4565b348015610311575f80fd5b506101c26107f9565b348015610325575f80fd5b506005546001600160a01b03166102a6565b348015610342575f80fd5b506101d960075481565b348015610357575f80fd5b5061015e61082b565b34801561036b575f80fd5b5061019361037a3660046116a9565b61083a565b34801561038a575f80fd5b506102a67f000000000000000000000000fadf92b4c1800d5a9019be5ca8cd58f7f6200d1f81565b6101c2610847565b3480156103c5575f80fd5b506101d9600b5481565b3480156103da575f80fd5b506101d96103e936600461174c565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b34801561041e575f80fd5b506101c261042d3660046116f3565b610ab1565b60606003805461044190611783565b80601f016020809104026020016040519081016040528092919081815260200182805461046d90611783565b80156104b85780601f1061048f576101008083540402835291602001916104b8565b820191905f5260205f20905b81548152906001019060200180831161049b57829003601f168201915b5050505050905090565b5f336104cf818585610b49565b60019150505b92915050565b6005546001600160a01b0316331461050e5760405162461bcd60e51b8152600401610505906117bb565b60405180910390fd5b60638211158015610520575060638111155b6105655760405162461bcd60e51b81526020600482015260166024820152752732bb903332b29036bab9ba103132903637bbb2b91760511b6044820152606401610505565b600b91909155600c55565b336001600160a01b037f000000000000000000000000fadf92b4c1800d5a9019be5ca8cd58f7f6200d1f16146105a4575f80fd5b306001600160a01b03821603610697576040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb9061dead9083906370a08231906024015b602060405180830381865afa158015610603573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061062791906117f0565b6040516001600160e01b031960e085901b1681526001600160a01b03909216600483015260248201526044016020604051808303815f875af115801561066f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106939190611807565b5050565b6040516370a0823160e01b81523060048201526001600160a01b0382169063a9059cbb907f000000000000000000000000fadf92b4c1800d5a9019be5ca8cd58f7f6200d1f9083906370a08231906024016105e8565b50565b6005546001600160a01b0316331461071a5760405162461bcd60e51b8152600401610505906117bb565b6040516001600160a01b037f000000000000000000000000fadf92b4c1800d5a9019be5ca8cd58f7f6200d1f16904780156108fc02915f818181858888f193505050501580156106ed573d5f803e3d5ffd5b5f33610779858285610c6c565b610784858585610cfc565b506001949350505050565b6005546001600160a01b031633146107b95760405162461bcd60e51b8152600401610505906117bb565b600891909155600955565b6005546001600160a01b031633146107ee5760405162461bcd60e51b8152600401610505906117bb565b6107f75f611239565b565b6005546001600160a01b031633146108235760405162461bcd60e51b8152600401610505906117bb565b600254600755565b60606004805461044190611783565b5f336104cf818585610cfc565b6005546001600160a01b031633146108715760405162461bcd60e51b8152600401610505906117bb565b610884333061087f60025490565b61128a565b60405163f305d71960e01b8152306004820152670a4502144dca000060248201525f6044820181905260648201523360848201524260a4820152737a250d5630b4cf539739df2c5dacb4c659f2488d9063f305d71990670de0b6b3a76400009060c40160606040518083038185885af1158015610903573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906109289190611826565b505050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801561097b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061099f9190611851565b6001600160a01b031663e6a4390530737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156109fe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a229190611851565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381865afa158015610a6b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a8f9190611851565b600680546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610adb5760405162461bcd60e51b8152600401610505906117bb565b6001600160a01b038116610b405760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610505565b6106ed81611239565b6001600160a01b038316610bab5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610505565b6001600160a01b038216610c0c5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610505565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038381165f908152600160209081526040808320938616835292905220545f198114610cf65781811015610ce95760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000006044820152606401610505565b610cf68484848403610b49565b50505050565b6001600160a01b038316610d665760405162461bcd60e51b815260206004820152602b60248201527f5472616e736665722066726f6d20746865207a65726f2061646472657373206e60448201526a37ba1030b63637bbb2b21760a91b6064820152608401610505565b6001600160a01b038216610dce5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220746f20746865207a65726f2061646472657373206e6f746044820152681030b63637bbb2b21760b91b6064820152608401610505565b5f8111610e305760405162461bcd60e51b815260206004820152602a60248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152693a3430b7103d32b9379760b11b6064820152608401610505565b6001600160a01b0383165f908152600d602052604081205460ff1680610e6d57506001600160a01b0383165f908152600d602052604090205460ff165b6006549091506001600160a01b0316151580610e865750805b610ed25760405162461bcd60e51b815260206004820152601f60248201527f4c69717569646974792070616972206e6f742079657420637265617465642e006044820152606401610505565b6006546001600160a01b03908116848216811491861614808015610ef4575082155b15610fff5760075484610f1b876001600160a01b03165f9081526020819052604090205490565b610f259190611880565b111580610f4e57506001600160a01b038516737a250d5630b4cf539739df2c5dacb4c659f2488d145b610f905760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b6044820152606401610505565b600a5463ffffffff600160801b82048116911611610fdd57600a805463ffffffff16905f610fbd83611893565b91906101000a81548163ffffffff021916908363ffffffff160217905550505b600a5463ffffffff600160801b82048116911603610fff575f600b819055600c555b305f908152602081905260409020548280156110255750600a54600160a01b900460ff16155b801561103357506009548110155b801561103d575083155b80156110595750600a5463ffffffff600160601b820481169116115b1561119f57600a5468010000000000000000900463ffffffff1643111561108c57600a805467ffffffff00000000191690555b600a54600364010000000090910463ffffffff16106110ed5760405162461bcd60e51b815260206004820152601760248201527f4f6e6c7920332073656c6c732070657220626c6f636b210000000000000000006044820152606401610505565b600a805460ff60a01b1916600160a01b1790556008546111229061111d908790611118908590611456565b611456565b61146d565b600a805460ff60a01b1916905547801561113f5761113f816115f6565b600a8054640100000000900463ffffffff1690600461115d83611893565b91906101000a81548163ffffffff021916908363ffffffff1602179055505043600a60086101000a81548163ffffffff021916908363ffffffff160217905550505b5f826111ad57600c546111b1565b600b545b90505f811180156111c0575084155b80156111d65750600a54600160a01b900460ff16155b80156111e6575082806111e65750835b15611224575f60646111f883896118b5565b61120291906118cc565b905080156112225761121589308361128a565b61121f81886118eb565b96505b505b61122f88888861128a565b5050505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0905f90a35050565b6001600160a01b0383166112ee5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610505565b6001600160a01b0382166113505760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610505565b6001600160a01b0383165f90815260208190526040902054818110156113c75760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b6064820152608401610505565b6001600160a01b038085165f908152602081905260408082208585039055918516815290812080548492906113fd908490611880565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161144991815260200190565b60405180910390a3610cf6565b5f8183116114645782611466565b815b9392505050565b6040805160028082526060820183525f9260208301908036833701905050905030815f815181106114a0576114a06118fe565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611510573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115349190611851565b81600181518110611547576115476118fe565b60200260200101906001600160a01b031690816001600160a01b03168152505061158630737a250d5630b4cf539739df2c5dacb4c659f2488d84610b49565b60405163791ac94760e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d9063791ac947906115c59085905f90869030904290600401611912565b5f604051808303815f87803b1580156115dc575f80fd5b505af11580156115ee573d5f803e3d5ffd5b505050505050565b6040516001600160a01b037f000000000000000000000000fadf92b4c1800d5a9019be5ca8cd58f7f6200d1f169082156108fc029083905f818181858888f19350505050158015610693573d5f803e3d5ffd5b5f602080835283518060208501525f5b8181101561167557858101830151858201604001528201611659565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146106ed575f80fd5b5f80604083850312156116ba575f80fd5b82356116c581611695565b946020939093013593505050565b5f80604083850312156116e4575f80fd5b50508035926020909101359150565b5f60208284031215611703575f80fd5b813561146681611695565b5f805f60608486031215611720575f80fd5b833561172b81611695565b9250602084013561173b81611695565b929592945050506040919091013590565b5f806040838503121561175d575f80fd5b823561176881611695565b9150602083013561177881611695565b809150509250929050565b600181811c9082168061179757607f821691505b6020821081036117b557634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611800575f80fd5b5051919050565b5f60208284031215611817575f80fd5b81518015158114611466575f80fd5b5f805f60608486031215611838575f80fd5b8351925060208401519150604084015190509250925092565b5f60208284031215611861575f80fd5b815161146681611695565b634e487b7160e01b5f52601160045260245ffd5b808201808211156104d5576104d561186c565b5f63ffffffff8083168181036118ab576118ab61186c565b6001019392505050565b80820281158282048414176104d5576104d561186c565b5f826118e657634e487b7160e01b5f52601260045260245ffd5b500490565b818103818111156104d5576104d561186c565b634e487b7160e01b5f52603260045260245ffd5b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156119625784516001600160a01b03168352938301939183019160010161193d565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220c6bb65cd17e46d53d656578d2bb1f0eaeb3d8a38efd9d4663b1dada3ffe9d88164736f6c63430008170033
Deployed Bytecode Sourcemap
7731:5590:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2509:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3440:201;;;;;;;;;;-1:-1:-1;3440:201:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;3440:201:0;1023:187:1;12291:239:0;;;;;;;;;;-1:-1:-1;12291:239:0;;;;;:::i;:::-;;:::i;:::-;;8368:29;;;;;;;;;;;;;;;;;;;1614:25:1;;;1602:2;1587:18;8368:29:0;1468:177:1;12964:317:0;;;;;;;;;;-1:-1:-1;12964:317:0;;;;;:::i;:::-;;:::i;2829:108::-;;;;;;;;;;-1:-1:-1;2917:12:0;;2829:108;;12838:118;;;;;;;;;;;;;:::i;3649:295::-;;;;;;;;;;-1:-1:-1;3649:295:0;;;;;:::i;:::-;;:::i;2729:92::-;;;;;;;;;;-1:-1:-1;2729:92:0;;2812:1;2519:36:1;;2507:2;2492:18;2729:92:0;2377:184:1;12653:177:0;;;;;;;;;;-1:-1:-1;12653:177:0;;;;;:::i;:::-;;:::i;7887:28::-;;;;;;;;;;-1:-1:-1;7887:28:0;;;;-1:-1:-1;;;;;7887:28:0;;;;;;-1:-1:-1;;;;;2730:32:1;;;2712:51;;2700:2;2685:18;7887:28:0;2566:203:1;2945:127:0;;;;;;;;;;-1:-1:-1;2945:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;3046:18:0;3019:7;3046:18;;;;;;;;;;;;2945:127;7213:103;;;;;;;;;;;;;:::i;12538:107::-;;;;;;;;;;;;;:::i;6990:87::-;;;;;;;;;;-1:-1:-1;7063:6:0;;-1:-1:-1;;;;;7063:6:0;6990:87;;7967:45;;;;;;;;;;;;;;;;2617:104;;;;;;;;;;;;;:::i;3080:193::-;;;;;;;;;;-1:-1:-1;3080:193:0;;;;;:::i;:::-;;:::i;7922:36::-;;;;;;;;;;;;;;;11923:360;;;:::i;8333:28::-;;;;;;;;;;;;;;;;3281:151;;;;;;;;;;-1:-1:-1;3281:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;3397:18:0;;;3370:7;3397:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;3281:151;7324:201;;;;;;;;;;-1:-1:-1;7324:201:0;;;;;:::i;:::-;;:::i;2509:100::-;2563:13;2596:5;2589:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2509:100;:::o;3440:201::-;3523:4;1053:10;3579:32;1053:10;3595:7;3604:6;3579:8;:32::i;:::-;3629:4;3622:11;;;3440:201;;;;;:::o;12291:239::-;7063:6;;-1:-1:-1;;;;;7063:6:0;1053:10;7125:23;7117:68;;;;-1:-1:-1;;;7117:68:0;;;;;;;:::i;:::-;;;;;;;;;12398:2:::1;12385:9;:15;;:35;;;;;12418:2;12404:10;:16;;12385:35;12377:70;;;::::0;-1:-1:-1;;;12377:70:0;;4367:2:1;12377:70:0::1;::::0;::::1;4349:21:1::0;4406:2;4386:18;;;4379:30;-1:-1:-1;;;4425:18:1;;;4418:52;4487:18;;12377:70:0::1;4165:346:1::0;12377:70:0::1;12459:13;:25:::0;;;;12495:14:::1;:27:::0;12291:239::o;12964:317::-;13026:10;-1:-1:-1;;;;;13040:11:0;13026:25;;13023:38;;13053:8;;;13023:38;13101:4;-1:-1:-1;;;;;13075:31:0;;;13072:201;;13154:30;;-1:-1:-1;;;13154:30:0;;13178:4;13154:30;;;2712:51:1;-1:-1:-1;;;;;13122:14:0;;;;;13145:6;;13122:14;;13154:15;;2685:18:1;;13154:30:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;13122:63;;-1:-1:-1;;;;;;13122:63:0;;;;;;;-1:-1:-1;;;;;4897:32:1;;;13122:63:0;;;4879:51:1;4946:18;;;4939:34;4852:18;;13122:63:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12964:317;:::o;13072:201::-;13242:30;;-1:-1:-1;;;13242:30:0;;13266:4;13242:30;;;2712:51:1;-1:-1:-1;;;;;13214:14:0;;;;;13229:11;;13214:14;;13242:15;;2685:18:1;;13242:30:0;2566:203:1;13072:201:0;12964:317;:::o;12838:118::-;7063:6;;-1:-1:-1;;;;;7063:6:0;1053:10;7125:23;7117:68;;;;-1:-1:-1;;;7117:68:0;;;;;;;:::i;:::-;12896:52:::1;::::0;-1:-1:-1;;;;;12904:11:0::1;12896:29;::::0;12926:21:::1;12896:52:::0;::::1;;;::::0;::::1;::::0;;;12926:21;12896:29;:52;::::1;;;;;;;;;;;;;::::0;::::1;;;;3649:295:::0;3780:4;1053:10;3838:38;3854:4;1053:10;3869:6;3838:15;:38::i;:::-;3887:27;3897:4;3903:2;3907:6;3887:9;:27::i;:::-;-1:-1:-1;3932:4:0;;3649:295;-1:-1:-1;;;;3649:295:0:o;12653:177::-;7063:6;;-1:-1:-1;;;;;7063:6:0;1053:10;7125:23;7117:68;;;;-1:-1:-1;;;7117:68:0;;;;;;;:::i;:::-;12765:10:::1;:22:::0;;;;12798:12:::1;:24:::0;12653:177::o;7213:103::-;7063:6;;-1:-1:-1;;;;;7063:6:0;1053:10;7125:23;7117:68;;;;-1:-1:-1;;;7117:68:0;;;;;;;:::i;:::-;7278:30:::1;7305:1;7278:18;:30::i;:::-;7213:103::o:0;12538:107::-;7063:6;;-1:-1:-1;;;;;7063:6:0;1053:10;7125:23;7117:68;;;;-1:-1:-1;;;7117:68:0;;;;;;;:::i;:::-;2917:12;;12608:13:::1;:29:::0;12538:107::o;2617:104::-;2673:13;2706:7;2699:14;;;;;:::i;3080:193::-;3159:4;1053:10;3215:28;1053:10;3232:2;3236:6;3215:9;:28::i;11923:360::-;7063:6;;-1:-1:-1;;;;;7063:6:0;1053:10;7125:23;7117:68;;;;-1:-1:-1;;;7117:68:0;;;;;;;:::i;:::-;11984:57:::1;12000:10;12020:4;12027:13;2917:12:::0;;;2829:108;12027:13:::1;11984:15;:57::i;:::-;12052:121;::::0;-1:-1:-1;;;12052:121:0;;12112:4:::1;12052:121;::::0;::::1;5632:34:1::0;12119:18:0::1;5682::1::0;;;5675:34;12139:1:0::1;5725:18:1::0;;;5718:34;;;5768:18;;;5761:34;12145:10:0::1;5811:19:1::0;;;5804:44;12157:15:0::1;5864:19:1::0;;;5857:35;7835:42:0::1;::::0;12052:23:::1;::::0;12083:19:::1;::::0;5566::1;;12052:121:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;7835:42;-1:-1:-1::0;;;;;12218:15:0::1;;:17;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12200:44:0::1;;12253:4;7835:42;-1:-1:-1::0;;;;;12260:12:0::1;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12200:75;::::0;-1:-1:-1;;;;;;12200:75:0::1;::::0;;;;;;-1:-1:-1;;;;;6700:15:1;;;12200:75:0::1;::::0;::::1;6682:34:1::0;6752:15;;6732:18;;;6725:43;6617:18;;12200:75:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12184:13;:91:::0;;-1:-1:-1;;;;;;12184:91:0::1;-1:-1:-1::0;;;;;12184:91:0;;;::::1;::::0;;;::::1;::::0;;11923:360::o;7324:201::-;7063:6;;-1:-1:-1;;;;;7063:6:0;1053:10;7125:23;7117:68;;;;-1:-1:-1;;;7117:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;7413:22:0;::::1;7405:73;;;::::0;-1:-1:-1;;;7405:73:0;;6981:2:1;7405:73:0::1;::::0;::::1;6963:21:1::0;7020:2;7000:18;;;6993:30;7059:34;7039:18;;;7032:62;-1:-1:-1;;;7110:18:1;;;7103:36;7156:19;;7405:73:0::1;6779:402:1::0;7405:73:0::1;7489:28;7508:8;7489:18;:28::i;5637:380::-:0;-1:-1:-1;;;;;5773:19:0;;5765:68;;;;-1:-1:-1;;;5765:68:0;;7388:2:1;5765:68:0;;;7370:21:1;7427:2;7407:18;;;7400:30;7466:34;7446:18;;;7439:62;-1:-1:-1;;;7517:18:1;;;7510:34;7561:19;;5765:68:0;7186:400:1;5765:68:0;-1:-1:-1;;;;;5852:21:0;;5844:68;;;;-1:-1:-1;;;5844:68:0;;7793:2:1;5844:68:0;;;7775:21:1;7832:2;7812:18;;;7805:30;7871:34;7851:18;;;7844:62;-1:-1:-1;;;7922:18:1;;;7915:32;7964:19;;5844:68:0;7591:398:1;5844:68:0;-1:-1:-1;;;;;5925:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5977:32;;1614:25:1;;;5977:32:0;;1587:18:1;5977:32:0;;;;;;;5637:380;;;:::o;6025:453::-;-1:-1:-1;;;;;3397:18:0;;;6160:24;3397:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;-1:-1:-1;;6227:37:0;;6223:248;;6309:6;6289:16;:26;;6281:68;;;;-1:-1:-1;;;6281:68:0;;8196:2:1;6281:68:0;;;8178:21:1;8235:2;8215:18;;;8208:30;8274:31;8254:18;;;8247:59;8323:18;;6281:68:0;7994:353:1;6281:68:0;6393:51;6402:5;6409:7;6437:6;6418:16;:25;6393:8;:51::i;:::-;6149:329;6025:453;;;:::o;9090:2153::-;-1:-1:-1;;;;;9222:18:0;;9214:74;;;;-1:-1:-1;;;9214:74:0;;8554:2:1;9214:74:0;;;8536:21:1;8593:2;8573:18;;;8566:30;8632:34;8612:18;;;8605:62;-1:-1:-1;;;8683:18:1;;;8676:41;8734:19;;9214:74:0;8352:407:1;9214:74:0;-1:-1:-1;;;;;9307:16:0;;9299:70;;;;-1:-1:-1;;;9299:70:0;;8966:2:1;9299:70:0;;;8948:21:1;9005:2;8985:18;;;8978:30;9044:34;9024:18;;;9017:62;-1:-1:-1;;;9095:18:1;;;9088:39;9144:19;;9299:70:0;8764:405:1;9299:70:0;9397:1;9388:6;:10;9380:65;;;;-1:-1:-1;;;9380:65:0;;9376:2:1;9380:65:0;;;9358:21:1;9415:2;9395:18;;;9388:30;9454:34;9434:18;;;9427:62;-1:-1:-1;;;9505:18:1;;;9498:40;9555:19;;9380:65:0;9174:406:1;9380:65:0;-1:-1:-1;;;;;9474:26:0;;9458:13;9474:26;;;:20;:26;;;;;;;;;:54;;-1:-1:-1;;;;;;9504:24:0;;;;;;:20;:24;;;;;;;;9474:54;9547:13;;9458:70;;-1:-1:-1;;;;;;9547:13:0;:27;;;:39;;;9578:8;9547:39;9539:83;;;;-1:-1:-1;;;9539:83:0;;9787:2:1;9539:83:0;;;9769:21:1;9826:2;9806:18;;;9799:30;9865:33;9845:18;;;9838:61;9916:18;;9539:83:0;9585:355:1;9539:83:0;9655:13;;-1:-1:-1;;;;;9655:13:0;;;9649:19;;;;;;9692:21;;;;9729:18;;;;;9739:8;9738:9;9729:18;9726:366;;;9797:13;;9787:6;9771:13;9781:2;-1:-1:-1;;;;;3046:18:0;3019:7;3046:18;;;;;;;;;;;;2945:127;9771:13;:22;;;;:::i;:::-;:39;;:82;;;-1:-1:-1;;;;;;9831:22:0;;7835:42;9831:22;9771:82;9763:114;;;;-1:-1:-1;;;9763:114:0;;10409:2:1;9763:114:0;;;10391:21:1;10448:2;10428:18;;;10421:30;-1:-1:-1;;;10467:18:1;;;10460:49;10526:18;;9763:114:0;10207:343:1;9763:114:0;9908:11;;;-1:-1:-1;;;9908:11:0;;;;9895:9;;:24;9892:57;;9938:9;:11;;;;;:9;:11;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;9892:57;9980:11;;;-1:-1:-1;;;9980:11:0;;;;9967:9;;:24;9964:117;;10027:1;10011:13;:17;;;10047:14;:18;9964:117;10165:4;10116:28;3046:18;;;;;;;;;;;10186:6;:18;;;;-1:-1:-1;10197:7:0;;-1:-1:-1;;;10197:7:0;;;;10196:8;10186:18;:58;;;;;10232:12;;10208:20;:36;;10186:58;:82;;;;;10260:8;10259:9;10186:82;:116;;;;-1:-1:-1;10284:18:0;;;-1:-1:-1;;;10284:18:0;;;;10272:9;;:30;10186:116;10182:678;;;10348:14;;;;;;;10333:12;:29;10329:67;;;10382:10;:14;;-1:-1:-1;;10382:14:0;;;10329:67;10419:10;;10432:1;10419:10;;;;;;:14;10411:50;;;;-1:-1:-1;;;10411:50:0;;10963:2:1;10411:50:0;;;10945:21:1;11002:2;10982:18;;;10975:30;11041:25;11021:18;;;11014:53;11084:18;;10411:50:0;10761:347:1;10411:50:0;10476:7;:14;;-1:-1:-1;;;;10476:14:0;-1:-1:-1;;;10476:14:0;;;10560:10;;10505:68;;10522:50;;10526:6;;10534:37;;10538:20;;10534:3;:37::i;:::-;10522:3;:50::i;:::-;10505:16;:68::i;:::-;10588:7;:15;;-1:-1:-1;;;;10588:15:0;;;10647:21;10687:22;;10683:78;;10729:32;10742:18;10729:12;:32::i;:::-;10784:10;:12;;;;;;;;:10;:12;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;10835;10811:14;;:37;;;;;;;;;;;;;;;;;;10314:546;10182:678;10872:11;10886:5;:38;;10910:14;;10886:38;;;10894:13;;10886:38;10872:52;;10947:1;10941:3;:7;:20;;;;;10953:8;10952:9;10941:20;:32;;;;-1:-1:-1;10966:7:0;;-1:-1:-1;;;10966:7:0;;;;10965:8;10941:32;:53;;;;;10978:5;:15;;;;10987:6;10978:15;10937:255;;;11011:12;11041:3;11026:12;11035:3;11026:6;:12;:::i;:::-;:18;;;;:::i;:::-;11011:33;-1:-1:-1;11063:8:0;;11059:122;;11091:42;11107:4;11121;11128;11091:15;:42::i;:::-;11152:13;11161:4;11152:13;;:::i;:::-;;;11059:122;10996:196;10937:255;11202:33;11218:4;11224:2;11228:6;11202:15;:33::i;:::-;9203:2040;;;;;9090:2153;;;:::o;7533:191::-;7626:6;;;-1:-1:-1;;;;;7643:17:0;;;-1:-1:-1;;;;;;7643:17:0;;;;;;;7676:40;;7626:6;;;7643:17;7626:6;;7676:40;;7607:16;;7676:40;7596:128;7533:191;:::o;3952:671::-;-1:-1:-1;;;;;4083:18:0;;4075:68;;;;-1:-1:-1;;;4075:68:0;;11843:2:1;4075:68:0;;;11825:21:1;11882:2;11862:18;;;11855:30;11921:34;11901:18;;;11894:62;-1:-1:-1;;;11972:18:1;;;11965:35;12017:19;;4075:68:0;11641:401:1;4075:68:0;-1:-1:-1;;;;;4162:16:0;;4154:64;;;;-1:-1:-1;;;4154:64:0;;12249:2:1;4154:64:0;;;12231:21:1;12288:2;12268:18;;;12261:30;12327:34;12307:18;;;12300:62;-1:-1:-1;;;12378:18:1;;;12371:33;12421:19;;4154:64:0;12047:399:1;4154:64:0;-1:-1:-1;;;;;4304:15:0;;4282:19;4304:15;;;;;;;;;;;4338:21;;;;4330:72;;;;-1:-1:-1;;;4330:72:0;;12653:2:1;4330:72:0;;;12635:21:1;12692:2;12672:18;;;12665:30;12731:34;12711:18;;;12704:62;-1:-1:-1;;;12782:18:1;;;12775:36;12828:19;;4330:72:0;12451:402:1;4330:72:0;-1:-1:-1;;;;;4438:15:0;;;:9;:15;;;;;;;;;;;4456:20;;;4438:38;;4498:13;;;;;;;;:23;;4470:6;;4438:9;4498:23;;4470:6;;4498:23;:::i;:::-;;;;;;;;4554:2;-1:-1:-1;;;;;4539:26:0;4548:4;-1:-1:-1;;;;;4539:26:0;;4558:6;4539:26;;;;1614:25:1;;1602:2;1587:18;;1468:177;4539:26:0;;;;;;;;4578:37;6486:125;11251:98;11308:7;11335:1;11333;:3;11332:9;;11340:1;11332:9;;;11338:1;11332:9;11325:16;11251:98;-1:-1:-1;;;11251:98:0:o;11358:447::-;11448:16;;;11462:1;11448:16;;;;;;;;11424:21;;11448:16;;;;;;;;;;-1:-1:-1;11448:16:0;11424:40;;11493:4;11475;11480:1;11475:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;11475:23:0;;;-1:-1:-1;;;;;11475:23:0;;;;;7835:42;-1:-1:-1;;;;;11519:12:0;;:14;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11509:4;11514:1;11509:7;;;;;;;;:::i;:::-;;;;;;:24;-1:-1:-1;;;;;11509:24:0;;;-1:-1:-1;;;;;11509:24:0;;;;;11544:54;11561:4;7835:42;11586:11;11544:8;:54::i;:::-;11609:188;;-1:-1:-1;;;11609:188:0;;7835:42;;11609:58;;:188;;11682:11;;11708:1;;11724:4;;11751;;11771:15;;11609:188;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11413:392;11358:447;:::o;11813:102::-;11870:37;;-1:-1:-1;;;;;11878:11:0;11870:29;;:37;;;;;11900:6;;11870:37;;;;11900:6;11870:29;:37;;;;;;;;;;;;;;;;;;;14:548:1;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:315;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1215:248::-;1283:6;1291;1344:2;1332:9;1323:7;1319:23;1315:32;1312:52;;;1360:1;1357;1350:12;1312:52;-1:-1:-1;;1383:23:1;;;1453:2;1438:18;;;1425:32;;-1:-1:-1;1215:248:1:o;1650:261::-;1723:6;1776:2;1764:9;1755:7;1751:23;1747:32;1744:52;;;1792:1;1789;1782:12;1744:52;1831:9;1818:23;1850:31;1875:5;1850:31;:::i;1916:456::-;1993:6;2001;2009;2062:2;2050:9;2041:7;2037:23;2033:32;2030:52;;;2078:1;2075;2068:12;2030:52;2117:9;2104:23;2136:31;2161:5;2136:31;:::i;:::-;2186:5;-1:-1:-1;2243:2:1;2228:18;;2215:32;2256:33;2215:32;2256:33;:::i;:::-;1916:456;;2308:7;;-1:-1:-1;;;2362:2:1;2347:18;;;;2334:32;;1916:456::o;3026:388::-;3094:6;3102;3155:2;3143:9;3134:7;3130:23;3126:32;3123:52;;;3171:1;3168;3161:12;3123:52;3210:9;3197:23;3229:31;3254:5;3229:31;:::i;:::-;3279:5;-1:-1:-1;3336:2:1;3321:18;;3308:32;3349:33;3308:32;3349:33;:::i;:::-;3401:7;3391:17;;;3026:388;;;;;:::o;3419:380::-;3498:1;3494:12;;;;3541;;;3562:61;;3616:4;3608:6;3604:17;3594:27;;3562:61;3669:2;3661:6;3658:14;3638:18;3635:38;3632:161;;3715:10;3710:3;3706:20;3703:1;3696:31;3750:4;3747:1;3740:15;3778:4;3775:1;3768:15;3632:161;;3419:380;;;:::o;3804:356::-;4006:2;3988:21;;;4025:18;;;4018:30;4084:34;4079:2;4064:18;;4057:62;4151:2;4136:18;;3804:356::o;4516:184::-;4586:6;4639:2;4627:9;4618:7;4614:23;4610:32;4607:52;;;4655:1;4652;4645:12;4607:52;-1:-1:-1;4678:16:1;;4516:184;-1:-1:-1;4516:184:1:o;4984:277::-;5051:6;5104:2;5092:9;5083:7;5079:23;5075:32;5072:52;;;5120:1;5117;5110:12;5072:52;5152:9;5146:16;5205:5;5198:13;5191:21;5184:5;5181:32;5171:60;;5227:1;5224;5217:12;5903:306;5991:6;5999;6007;6060:2;6048:9;6039:7;6035:23;6031:32;6028:52;;;6076:1;6073;6066:12;6028:52;6105:9;6099:16;6089:26;;6155:2;6144:9;6140:18;6134:25;6124:35;;6199:2;6188:9;6184:18;6178:25;6168:35;;5903:306;;;;;:::o;6214:251::-;6284:6;6337:2;6325:9;6316:7;6312:23;6308:32;6305:52;;;6353:1;6350;6343:12;6305:52;6385:9;6379:16;6404:31;6429:5;6404:31;:::i;9945:127::-;10006:10;10001:3;9997:20;9994:1;9987:31;10037:4;10034:1;10027:15;10061:4;10058:1;10051:15;10077:125;10142:9;;;10163:10;;;10160:36;;;10176:18;;:::i;10555:201::-;10593:3;10621:10;10666:2;10659:5;10655:14;10693:2;10684:7;10681:15;10678:41;;10699:18;;:::i;:::-;10748:1;10735:15;;10555:201;-1:-1:-1;;;10555:201:1:o;11113:168::-;11186:9;;;11217;;11234:15;;;11228:22;;11214:37;11204:71;;11255:18;;:::i;11286:217::-;11326:1;11352;11342:132;;11396:10;11391:3;11387:20;11384:1;11377:31;11431:4;11428:1;11421:15;11459:4;11456:1;11449:15;11342:132;-1:-1:-1;11488:9:1;;11286:217::o;11508:128::-;11575:9;;;11596:11;;;11593:37;;;11610:18;;:::i;12990:127::-;13051:10;13046:3;13042:20;13039:1;13032:31;13082:4;13079:1;13072:15;13106:4;13103:1;13096:15;13122:980;13384:4;13432:3;13421:9;13417:19;13463:6;13452:9;13445:25;13489:2;13527:6;13522:2;13511:9;13507:18;13500:34;13570:3;13565:2;13554:9;13550:18;13543:31;13594:6;13629;13623:13;13660:6;13652;13645:22;13698:3;13687:9;13683:19;13676:26;;13737:2;13729:6;13725:15;13711:29;;13758:1;13768:195;13782:6;13779:1;13776:13;13768:195;;;13847:13;;-1:-1:-1;;;;;13843:39:1;13831:52;;13938:15;;;;13903:12;;;;13879:1;13797:9;13768:195;;;-1:-1:-1;;;;;;;14019:32:1;;;;14014:2;13999:18;;13992:60;-1:-1:-1;;;14083:3:1;14068:19;14061:35;13980:3;13122:980;-1:-1:-1;;;13122:980:1:o
Swarm Source
ipfs://c6bb65cd17e46d53d656578d2bb1f0eaeb3d8a38efd9d4663b1dada3ffe9d881
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.