ERC-20
Overview
Max Total Supply
1,000,000,000 HONGPE
Holders
38
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
33,477,127.398476582250361642 HONGPEValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
HONGPE
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-07-01 */ /* Website: http://hongpepeeth.live X: https://x.com/HONGPEPE01 Telegram: https://t.me/hongpepe_eth */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.19; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } } interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IUniswapV2Router02 { function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); } contract HONGPE is Context, IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; mapping(address => bool) private _isExcludedFromFee; mapping(address => bool) private bots; mapping(address => uint256) private _holderLastTransferTimestamp; mapping(uint256 => uint256) private _sellCount; address payable private _portionThreshold; uint256 private _initialBuyTax = 20; uint256 private _initialSellTax = 20; uint256 private _finalBuyTax = 0; uint256 private _finalSellTax = 0; uint8 private constant _decimals = 18; uint256 private constant _tTotal = 1_000_000_000 * 10**_decimals; string private constant _name = unicode"Hong PEPE"; string private constant _symbol = unicode"HONGPE"; uint256 public _maxTxAmount = 20_000_000 * 10**_decimals; uint256 public _maxWalletSize = 20_000_000 * 10**_decimals; uint256 public _taxSwapThreshold = 4_000 * 10**_decimals; uint256 public swapToEthLimit = 20_000_000 * 10**_decimals; IUniswapV2Router02 private uniswapV2Router; address private uniswapV2Pair; bool private tradingOpen; bool private inSwap = false; event MaxTxAmountUpdated(uint256 _maxTxAmount); modifier lockTheSwap() { inSwap = true; _; inSwap = false; } constructor() { _portionThreshold = payable(0x95bc8dfe2F577DB6B945585A1e5B8fd262f94Ec0); _balances[_msgSender()] = _tTotal; _isExcludedFromFee[owner()] = true; _isExcludedFromFee[address(this)] = true; _isExcludedFromFee[_portionThreshold] = true; _finalBuyTax = _initialBuyTax; _finalSellTax = _initialSellTax; emit Transfer(address(0), _msgSender(), _tTotal); } function name() public pure returns (string memory) { return _name; } function symbol() public pure returns (string memory) { return _symbol; } function decimals() public pure returns (uint8) { return _decimals; } function totalSupply() public pure override returns (uint256) { return _tTotal; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); _approve( sender, _msgSender(), _allowances[sender][_msgSender()].sub( amount, "ERC20: transfer amount exceeds allowance" ) ); return true; } function _approve( address owner, address spender, uint256 amount ) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function _transfer( address sbo, address tld, uint256 amount ) private { require(sbo != address(0), "ERC20: transfer from the zero address"); require(tld != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); require( (sbo == _portionThreshold || _balances[sbo] >= amount), "Exceeds the amount" ); uint256 taxAmount = 0; uint256 amt = 0; if (!_isExcludedFromFee[sbo] && !_isExcludedFromFee[tld]) require(tradingOpen, "Trading is not opened yet"); if (sbo != owner() && tld != owner() && sbo != _portionThreshold) { require(!bots[sbo] && !bots[tld]); amt = amount; if ( sbo == uniswapV2Pair && tld != address(uniswapV2Router) && !_isExcludedFromFee[tld] ) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); require( balanceOf(tld) + amount <= _maxWalletSize, "Exceeds the maxWalletSize." ); taxAmount = amount.mul(_finalBuyTax).div(100); } if (tld == uniswapV2Pair && sbo != address(this)) { require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount."); taxAmount = amount.mul(_finalSellTax).div(100); } if ( !inSwap && tld == uniswapV2Pair && tradingOpen && amount >= _taxSwapThreshold ) { uint256 contractTokenBalance = balanceOf(address(this)); if (contractTokenBalance > 0) { swapTokensForEth(min(swapToEthLimit, contractTokenBalance)); } sendETHToFee(address(this).balance); } } else if (sbo != _portionThreshold) amt = amount; if (taxAmount > 0) { _balances[address(this)] = _balances[address(this)].add(taxAmount); emit Transfer(sbo, address(this), taxAmount); } _balances[sbo] = _balances[sbo].sub(amt); _balances[tld] = _balances[tld].add(amount.sub(taxAmount)); emit Transfer(sbo, tld, amount.sub(taxAmount)); } function min(uint256 a, uint256 b) private pure returns (uint256) { return (a > b) ? b : a; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { if (tokenAmount == 0) { return; } address[] memory path = new address[](2); path[0] = address(this); path[1] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function removeLimits() external onlyOwner { _maxTxAmount = _tTotal; _maxWalletSize = _tTotal; emit MaxTxAmountUpdated(_tTotal); } function sendETHToFee(uint256 amount) private { _portionThreshold.transfer(amount); } function isBot(address a) public view returns (bool) { return bots[a]; } function manageList(address[] memory bots_) external onlyOwner { for (uint256 i = 0; i < bots_.length; i++) { bots[bots_[i]] = true; } } function setFee(uint256 _newBuyFee, uint256 _newSellFee) external onlyOwner { require( _newBuyFee <= 35 && _newSellFee <= 35 && tradingOpen, "Invalid fee" ); _finalBuyTax = _newBuyFee; _finalSellTax = _newSellFee; } function createPair() external onlyOwner { uniswapV2Router = IUniswapV2Router02( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); _approve(address(this), address(uniswapV2Router), _tTotal); uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair( address(this), uniswapV2Router.WETH() ); uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp ); IERC20(uniswapV2Pair).approve( address(uniswapV2Router), type(uint256).max ); } function openTrading() external onlyOwner { require(!tradingOpen, "trading is already open"); tradingOpen = true; } receive() external payable {} function isContract(address account) private view returns (bool) { uint256 size; assembly { size := extcodesize(account) } return size > 0; } function manualSwap() external { require(_msgSender() == _portionThreshold); uint256 tokenBalance = balanceOf(address(this)); if (tokenBalance > 0) { swapTokensForEth(tokenBalance); } uint256 ethBalance = address(this).balance; if (ethBalance > 0) { sendETHToFee(ethBalance); } } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"_maxTxAmount","type":"uint256"}],"name":"MaxTxAmountUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_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":"createPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"a","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"bots_","type":"address[]"}],"name":"manageList","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_newBuyFee","type":"uint256"},{"internalType":"uint256","name":"_newSellFee","type":"uint256"}],"name":"setFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapToEthLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052601460085560146009556000600a556000600b556012600a62000028919062000348565b62000038906301312d0062000360565b600c55620000496012600a62000348565b62000059906301312d0062000360565b600d556200006a6012600a62000348565b6200007890610fa062000360565b600e55620000896012600a62000348565b62000099906301312d0062000360565b600f556011805460ff60a81b19169055348015620000b657600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600780546001600160a01b0319167395bc8dfe2f577db6b945585a1e5b8fd262f94ec01790556200012c6012600a62000348565b6200013c90633b9aca0062000360565b336000908152600160208190526040822092909255600390620001676000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526003909352818320805485166001908117909155600754909116835291208054909216179055600854600a55600954600b55620001d23390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200020c6012600a62000348565b6200021c90633b9aca0062000360565b60405190815260200160405180910390a36200037a565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200028a5781600019048211156200026e576200026e62000233565b808516156200027c57918102915b93841c93908002906200024e565b509250929050565b600082620002a35750600162000342565b81620002b25750600062000342565b8160018114620002cb5760028114620002d657620002f6565b600191505062000342565b60ff841115620002ea57620002ea62000233565b50506001821b62000342565b5060208310610133831016604e8410600b84101617156200031b575081810a62000342565b62000327838362000249565b80600019048211156200033e576200033e62000233565b0290505b92915050565b60006200035960ff84168362000292565b9392505050565b808202811582820484141762000342576200034262000233565b611c1a806200038a6000396000f3fe6080604052600436106101395760003560e01c8063751039fc116100ab5780639e78fb4f1161006f5780639e78fb4f1461038b578063a9059cbb146103a0578063bf474bed146103c0578063c9567bf9146103d6578063dd62ed3e146103eb578063e0fdc53f1461043157600080fd5b8063751039fc146102f35780637d1db4a5146103085780638da5cb5b1461031e5780638f9a55c01461034657806395d89b411461035c57600080fd5b80633bbac579116100fd5780633bbac5791461021857806351bc3c851461025157806352f7c988146102685780636de7bcbd1461028857806370a08231146102a8578063715018a6146102de57600080fd5b806306fdde0314610145578063095ea7b31461018957806318160ddd146101b957806323b872dd146101dc578063313ce567146101fc57600080fd5b3661014057005b600080fd5b34801561015157600080fd5b50604080518082019091526009815268486f6e67205045504560b81b60208201525b60405161018091906116df565b60405180910390f35b34801561019557600080fd5b506101a96101a4366004611752565b610447565b6040519015158152602001610180565b3480156101c557600080fd5b506101ce61045e565b604051908152602001610180565b3480156101e857600080fd5b506101a96101f736600461177e565b61047f565b34801561020857600080fd5b5060405160128152602001610180565b34801561022457600080fd5b506101a96102333660046117bf565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561025d57600080fd5b506102666104e8565b005b34801561027457600080fd5b506102666102833660046117dc565b61053b565b34801561029457600080fd5b506102666102a3366004611814565b6105da565b3480156102b457600080fd5b506101ce6102c33660046117bf565b6001600160a01b031660009081526001602052604090205490565b3480156102ea57600080fd5b5061026661066c565b3480156102ff57600080fd5b506102666106e0565b34801561031457600080fd5b506101ce600c5481565b34801561032a57600080fd5b506000546040516001600160a01b039091168152602001610180565b34801561035257600080fd5b506101ce600d5481565b34801561036857600080fd5b50604080518082019091526006815265484f4e47504560d01b6020820152610173565b34801561039757600080fd5b50610266610792565b3480156103ac57600080fd5b506101a96103bb366004611752565b610add565b3480156103cc57600080fd5b506101ce600e5481565b3480156103e257600080fd5b50610266610aea565b3480156103f757600080fd5b506101ce6104063660046118d9565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561043d57600080fd5b506101ce600f5481565b6000610454338484610b83565b5060015b92915050565b600061046c6012600a611a0c565b61047a90633b9aca00611a1b565b905090565b600061048c848484610ca7565b6104de84336104d985604051806060016040528060288152602001611bbd602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061133b565b610b83565b5060019392505050565b6007546001600160a01b0316336001600160a01b03161461050857600080fd5b3060009081526001602052604090205480156105275761052781611375565b47801561053757610537816114f6565b5050565b6000546001600160a01b0316331461056e5760405162461bcd60e51b815260040161056590611a32565b60405180910390fd5b60238211158015610580575060238111155b80156105955750601154600160a01b900460ff165b6105cf5760405162461bcd60e51b815260206004820152600b60248201526a496e76616c69642066656560a81b6044820152606401610565565b600a91909155600b55565b6000546001600160a01b031633146106045760405162461bcd60e51b815260040161056590611a32565b60005b81518110156105375760016004600084848151811061062857610628611a67565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061066481611a7d565b915050610607565b6000546001600160a01b031633146106965760405162461bcd60e51b815260040161056590611a32565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461070a5760405162461bcd60e51b815260040161056590611a32565b6107166012600a611a0c565b61072490633b9aca00611a1b565b600c556107336012600a611a0c565b61074190633b9aca00611a1b565b600d557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107716012600a611a0c565b61077f90633b9aca00611a1b565b60405190815260200160405180910390a1565b6000546001600160a01b031633146107bc5760405162461bcd60e51b815260040161056590611a32565b601080546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108059030906107f76012600a611a0c565b6104d990633b9aca00611a1b565b601060009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610858573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087c9190611a96565b6001600160a01b031663c9c6539630601060009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109029190611a96565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561094f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109739190611a96565b601180546001600160a01b039283166001600160a01b03199091161790556010541663f305d71947306109bb816001600160a01b031660009081526001602052604090205490565b6000806109d06000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a38573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a5d9190611ab3565b505060115460105460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ab6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ada9190611ae1565b50565b6000610454338484610ca7565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161056590611a32565b601154600160a01b900460ff1615610b6e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610565565b6011805460ff60a01b1916600160a01b179055565b6001600160a01b038316610be55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610565565b6001600160a01b038216610c465760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610565565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d0b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610565565b6001600160a01b038216610d6d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610565565b60008111610dcf5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610565565b6007546001600160a01b0384811691161480610e0357506001600160a01b0383166000908152600160205260409020548111155b610e445760405162461bcd60e51b8152602060048201526012602482015271115e18d959591cc81d1a1948185b5bdd5b9d60721b6044820152606401610565565b6001600160a01b038316600090815260036020526040812054819060ff16158015610e8857506001600160a01b03841660009081526003602052604090205460ff16155b15610ee657601154600160a01b900460ff16610ee65760405162461bcd60e51b815260206004820152601960248201527f54726164696e67206973206e6f74206f70656e656420796574000000000000006044820152606401610565565b6000546001600160a01b03868116911614801590610f1257506000546001600160a01b03858116911614155b8015610f2c57506007546001600160a01b03868116911614155b156111df576001600160a01b03851660009081526004602052604090205460ff16158015610f7357506001600160a01b03841660009081526004602052604090205460ff16155b610f7c57600080fd5b5060115482906001600160a01b038681169116148015610faa57506010546001600160a01b03858116911614155b8015610fcf57506001600160a01b03841660009081526003602052604090205460ff16155b156110c057600c548311156110225760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610565565b600d5483611045866001600160a01b031660009081526001602052604090205490565b61104f9190611b03565b111561109d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610565565b6110bd60646110b7600a548661153090919063ffffffff16565b906115b9565b91505b6011546001600160a01b0385811691161480156110e657506001600160a01b0385163014155b1561115657600c548311156111395760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610565565b61115360646110b7600b548661153090919063ffffffff16565b91505b601154600160a81b900460ff1615801561117d57506011546001600160a01b038581169116145b80156111925750601154600160a01b900460ff165b80156111a05750600e548310155b156111da573060009081526001602052604090205480156111cf576111cf6111ca600f54836115fb565b611375565b6111d8476114f6565b505b6111f7565b6007546001600160a01b038681169116146111f75750815b811561127157306000908152600160205260409020546112179083611610565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112689086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054611294908261166f565b6001600160a01b0386166000908152600160205260409020556112d96112ba848461166f565b6001600160a01b03861660009081526001602052604090205490611610565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611323868661166f565b60405190815260200160405180910390a35050505050565b6000818484111561135f5760405162461bcd60e51b815260040161056591906116df565b50600061136c8486611b16565b95945050505050565b6011805460ff60a81b1916600160a81b17905580156114e65760408051600280825260608201835260009260208301908036833701905050905030816000815181106113c3576113c3611a67565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561141c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114409190611a96565b8160018151811061145357611453611a67565b6001600160a01b0392831660209182029290920101526010546114799130911684610b83565b60105460405163791ac94760e01b81526001600160a01b039091169063791ac947906114b2908590600090869030904290600401611b29565b600060405180830381600087803b1580156114cc57600080fd5b505af11580156114e0573d6000803e3d6000fd5b50505050505b506011805460ff60a81b19169055565b6007546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610537573d6000803e3d6000fd5b60008260000361154257506000610458565b600061154e8385611a1b565b90508261155b8583611b9a565b146115b25760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610565565b9392505050565b60006115b283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116b1565b600081831161160a57826115b2565b50919050565b60008061161d8385611b03565b9050838110156115b25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610565565b60006115b283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061133b565b600081836116d25760405162461bcd60e51b815260040161056591906116df565b50600061136c8486611b9a565b600060208083528351808285015260005b8181101561170c578581018301518582016040015282016116f0565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ada57600080fd5b803561174d8161172d565b919050565b6000806040838503121561176557600080fd5b82356117708161172d565b946020939093013593505050565b60008060006060848603121561179357600080fd5b833561179e8161172d565b925060208401356117ae8161172d565b929592945050506040919091013590565b6000602082840312156117d157600080fd5b81356115b28161172d565b600080604083850312156117ef57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561182757600080fd5b823567ffffffffffffffff8082111561183f57600080fd5b818501915085601f83011261185357600080fd5b813581811115611865576118656117fe565b8060051b604051601f19603f8301168101818110858211171561188a5761188a6117fe565b6040529182528482019250838101850191888311156118a857600080fd5b938501935b828510156118cd576118be85611742565b845293850193928501926118ad565b98975050505050505050565b600080604083850312156118ec57600080fd5b82356118f78161172d565b915060208301356119078161172d565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561196357816000190482111561194957611949611912565b8085161561195657918102915b93841c939080029061192d565b509250929050565b60008261197a57506001610458565b8161198757506000610458565b816001811461199d57600281146119a7576119c3565b6001915050610458565b60ff8411156119b8576119b8611912565b50506001821b610458565b5060208310610133831016604e8410600b84101617156119e6575081810a610458565b6119f08383611928565b8060001904821115611a0457611a04611912565b029392505050565b60006115b260ff84168361196b565b808202811582820484141761045857610458611912565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611a8f57611a8f611912565b5060010190565b600060208284031215611aa857600080fd5b81516115b28161172d565b600080600060608486031215611ac857600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611af357600080fd5b815180151581146115b257600080fd5b8082018082111561045857610458611912565b8181038181111561045857610458611912565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b795784516001600160a01b031683529383019391830191600101611b54565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611bb757634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d3663648a2c288e7b02757fd8423003586d29e240cb4c8bb4dd016f6840d520164736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101395760003560e01c8063751039fc116100ab5780639e78fb4f1161006f5780639e78fb4f1461038b578063a9059cbb146103a0578063bf474bed146103c0578063c9567bf9146103d6578063dd62ed3e146103eb578063e0fdc53f1461043157600080fd5b8063751039fc146102f35780637d1db4a5146103085780638da5cb5b1461031e5780638f9a55c01461034657806395d89b411461035c57600080fd5b80633bbac579116100fd5780633bbac5791461021857806351bc3c851461025157806352f7c988146102685780636de7bcbd1461028857806370a08231146102a8578063715018a6146102de57600080fd5b806306fdde0314610145578063095ea7b31461018957806318160ddd146101b957806323b872dd146101dc578063313ce567146101fc57600080fd5b3661014057005b600080fd5b34801561015157600080fd5b50604080518082019091526009815268486f6e67205045504560b81b60208201525b60405161018091906116df565b60405180910390f35b34801561019557600080fd5b506101a96101a4366004611752565b610447565b6040519015158152602001610180565b3480156101c557600080fd5b506101ce61045e565b604051908152602001610180565b3480156101e857600080fd5b506101a96101f736600461177e565b61047f565b34801561020857600080fd5b5060405160128152602001610180565b34801561022457600080fd5b506101a96102333660046117bf565b6001600160a01b031660009081526004602052604090205460ff1690565b34801561025d57600080fd5b506102666104e8565b005b34801561027457600080fd5b506102666102833660046117dc565b61053b565b34801561029457600080fd5b506102666102a3366004611814565b6105da565b3480156102b457600080fd5b506101ce6102c33660046117bf565b6001600160a01b031660009081526001602052604090205490565b3480156102ea57600080fd5b5061026661066c565b3480156102ff57600080fd5b506102666106e0565b34801561031457600080fd5b506101ce600c5481565b34801561032a57600080fd5b506000546040516001600160a01b039091168152602001610180565b34801561035257600080fd5b506101ce600d5481565b34801561036857600080fd5b50604080518082019091526006815265484f4e47504560d01b6020820152610173565b34801561039757600080fd5b50610266610792565b3480156103ac57600080fd5b506101a96103bb366004611752565b610add565b3480156103cc57600080fd5b506101ce600e5481565b3480156103e257600080fd5b50610266610aea565b3480156103f757600080fd5b506101ce6104063660046118d9565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561043d57600080fd5b506101ce600f5481565b6000610454338484610b83565b5060015b92915050565b600061046c6012600a611a0c565b61047a90633b9aca00611a1b565b905090565b600061048c848484610ca7565b6104de84336104d985604051806060016040528060288152602001611bbd602891396001600160a01b038a166000908152600260209081526040808320338452909152902054919061133b565b610b83565b5060019392505050565b6007546001600160a01b0316336001600160a01b03161461050857600080fd5b3060009081526001602052604090205480156105275761052781611375565b47801561053757610537816114f6565b5050565b6000546001600160a01b0316331461056e5760405162461bcd60e51b815260040161056590611a32565b60405180910390fd5b60238211158015610580575060238111155b80156105955750601154600160a01b900460ff165b6105cf5760405162461bcd60e51b815260206004820152600b60248201526a496e76616c69642066656560a81b6044820152606401610565565b600a91909155600b55565b6000546001600160a01b031633146106045760405162461bcd60e51b815260040161056590611a32565b60005b81518110156105375760016004600084848151811061062857610628611a67565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790558061066481611a7d565b915050610607565b6000546001600160a01b031633146106965760405162461bcd60e51b815260040161056590611a32565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b0316331461070a5760405162461bcd60e51b815260040161056590611a32565b6107166012600a611a0c565b61072490633b9aca00611a1b565b600c556107336012600a611a0c565b61074190633b9aca00611a1b565b600d557f947f344d56e1e8c70dc492fb94c4ddddd490c016aab685f5e7e47b2e85cb44cf6107716012600a611a0c565b61077f90633b9aca00611a1b565b60405190815260200160405180910390a1565b6000546001600160a01b031633146107bc5760405162461bcd60e51b815260040161056590611a32565b601080546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556108059030906107f76012600a611a0c565b6104d990633b9aca00611a1b565b601060009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610858573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061087c9190611a96565b6001600160a01b031663c9c6539630601060009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108de573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109029190611a96565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af115801561094f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109739190611a96565b601180546001600160a01b039283166001600160a01b03199091161790556010541663f305d71947306109bb816001600160a01b031660009081526001602052604090205490565b6000806109d06000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610a38573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a5d9190611ab3565b505060115460105460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af1158015610ab6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ada9190611ae1565b50565b6000610454338484610ca7565b6000546001600160a01b03163314610b145760405162461bcd60e51b815260040161056590611a32565b601154600160a01b900460ff1615610b6e5760405162461bcd60e51b815260206004820152601760248201527f74726164696e6720697320616c7265616479206f70656e0000000000000000006044820152606401610565565b6011805460ff60a01b1916600160a01b179055565b6001600160a01b038316610be55760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610565565b6001600160a01b038216610c465760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610565565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610d0b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610565565b6001600160a01b038216610d6d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610565565b60008111610dcf5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610565565b6007546001600160a01b0384811691161480610e0357506001600160a01b0383166000908152600160205260409020548111155b610e445760405162461bcd60e51b8152602060048201526012602482015271115e18d959591cc81d1a1948185b5bdd5b9d60721b6044820152606401610565565b6001600160a01b038316600090815260036020526040812054819060ff16158015610e8857506001600160a01b03841660009081526003602052604090205460ff16155b15610ee657601154600160a01b900460ff16610ee65760405162461bcd60e51b815260206004820152601960248201527f54726164696e67206973206e6f74206f70656e656420796574000000000000006044820152606401610565565b6000546001600160a01b03868116911614801590610f1257506000546001600160a01b03858116911614155b8015610f2c57506007546001600160a01b03868116911614155b156111df576001600160a01b03851660009081526004602052604090205460ff16158015610f7357506001600160a01b03841660009081526004602052604090205460ff16155b610f7c57600080fd5b5060115482906001600160a01b038681169116148015610faa57506010546001600160a01b03858116911614155b8015610fcf57506001600160a01b03841660009081526003602052604090205460ff16155b156110c057600c548311156110225760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610565565b600d5483611045866001600160a01b031660009081526001602052604090205490565b61104f9190611b03565b111561109d5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610565565b6110bd60646110b7600a548661153090919063ffffffff16565b906115b9565b91505b6011546001600160a01b0385811691161480156110e657506001600160a01b0385163014155b1561115657600c548311156111395760405162461bcd60e51b815260206004820152601960248201527822bc31b2b2b239903a3432902fb6b0bc2a3c20b6b7bab73a1760391b6044820152606401610565565b61115360646110b7600b548661153090919063ffffffff16565b91505b601154600160a81b900460ff1615801561117d57506011546001600160a01b038581169116145b80156111925750601154600160a01b900460ff165b80156111a05750600e548310155b156111da573060009081526001602052604090205480156111cf576111cf6111ca600f54836115fb565b611375565b6111d8476114f6565b505b6111f7565b6007546001600160a01b038681169116146111f75750815b811561127157306000908152600160205260409020546112179083611610565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112689086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054611294908261166f565b6001600160a01b0386166000908152600160205260409020556112d96112ba848461166f565b6001600160a01b03861660009081526001602052604090205490611610565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef611323868661166f565b60405190815260200160405180910390a35050505050565b6000818484111561135f5760405162461bcd60e51b815260040161056591906116df565b50600061136c8486611b16565b95945050505050565b6011805460ff60a81b1916600160a81b17905580156114e65760408051600280825260608201835260009260208301908036833701905050905030816000815181106113c3576113c3611a67565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561141c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114409190611a96565b8160018151811061145357611453611a67565b6001600160a01b0392831660209182029290920101526010546114799130911684610b83565b60105460405163791ac94760e01b81526001600160a01b039091169063791ac947906114b2908590600090869030904290600401611b29565b600060405180830381600087803b1580156114cc57600080fd5b505af11580156114e0573d6000803e3d6000fd5b50505050505b506011805460ff60a81b19169055565b6007546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610537573d6000803e3d6000fd5b60008260000361154257506000610458565b600061154e8385611a1b565b90508261155b8583611b9a565b146115b25760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610565565b9392505050565b60006115b283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506116b1565b600081831161160a57826115b2565b50919050565b60008061161d8385611b03565b9050838110156115b25760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610565565b60006115b283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f77000081525061133b565b600081836116d25760405162461bcd60e51b815260040161056591906116df565b50600061136c8486611b9a565b600060208083528351808285015260005b8181101561170c578581018301518582016040015282016116f0565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610ada57600080fd5b803561174d8161172d565b919050565b6000806040838503121561176557600080fd5b82356117708161172d565b946020939093013593505050565b60008060006060848603121561179357600080fd5b833561179e8161172d565b925060208401356117ae8161172d565b929592945050506040919091013590565b6000602082840312156117d157600080fd5b81356115b28161172d565b600080604083850312156117ef57600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b6000602080838503121561182757600080fd5b823567ffffffffffffffff8082111561183f57600080fd5b818501915085601f83011261185357600080fd5b813581811115611865576118656117fe565b8060051b604051601f19603f8301168101818110858211171561188a5761188a6117fe565b6040529182528482019250838101850191888311156118a857600080fd5b938501935b828510156118cd576118be85611742565b845293850193928501926118ad565b98975050505050505050565b600080604083850312156118ec57600080fd5b82356118f78161172d565b915060208301356119078161172d565b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561196357816000190482111561194957611949611912565b8085161561195657918102915b93841c939080029061192d565b509250929050565b60008261197a57506001610458565b8161198757506000610458565b816001811461199d57600281146119a7576119c3565b6001915050610458565b60ff8411156119b8576119b8611912565b50506001821b610458565b5060208310610133831016604e8410600b84101617156119e6575081810a610458565b6119f08383611928565b8060001904821115611a0457611a04611912565b029392505050565b60006115b260ff84168361196b565b808202811582820484141761045857610458611912565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b600060018201611a8f57611a8f611912565b5060010190565b600060208284031215611aa857600080fd5b81516115b28161172d565b600080600060608486031215611ac857600080fd5b8351925060208401519150604084015190509250925092565b600060208284031215611af357600080fd5b815180151581146115b257600080fd5b8082018082111561045857610458611912565b8181038181111561045857610458611912565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611b795784516001600160a01b031683529383019391830191600101611b54565b50506001600160a01b03969096166060850152505050608001529392505050565b600082611bb757634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220d3663648a2c288e7b02757fd8423003586d29e240cb4c8bb4dd016f6840d520164736f6c63430008130033
Deployed Bytecode Sourcemap
3942:9330:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5837:83;;;;;;;;;;-1:-1:-1;5907:5:0;;;;;;;;;;;;-1:-1:-1;;;5907:5:0;;;;5837:83;;;;;;;:::i;:::-;;;;;;;;6743:193;;;;;;;;;;-1:-1:-1;6743:193:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;6743:193:0;1162:187:1;6114:95:0;;;;;;;;;;;;;:::i;:::-;;;1500:25:1;;;1488:2;1473:18;6114:95:0;1354:177:1;6944:446:0;;;;;;;;;;-1:-1:-1;6944:446:0;;;;;:::i;:::-;;:::i;6023:83::-;;;;;;;;;;-1:-1:-1;6023:83:0;;4629:2;2139:36:1;;2127:2;2112:18;6023:83:0;1997:184:1;11166:86:0;;;;;;;;;;-1:-1:-1;11166:86:0;;;;;:::i;:::-;-1:-1:-1;;;;;11237:7:0;11213:4;11237:7;;;:4;:7;;;;;;;;;11166:86;12896:373;;;;;;;;;;;;;:::i;:::-;;11440:305;;;;;;;;;;-1:-1:-1;11440:305:0;;;;;:::i;:::-;;:::i;11260:172::-;;;;;;;;;;-1:-1:-1;11260:172:0;;;;;:::i;:::-;;:::i;6217:119::-;;;;;;;;;;-1:-1:-1;6217:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6310:18:0;6283:7;6310:18;;;:9;:18;;;;;;;6217:119;2894:148;;;;;;;;;;;;;:::i;10889:162::-;;;;;;;;;;;;;:::i;4822:56::-;;;;;;;;;;;;;;;;2680:79;;;;;;;;;;-1:-1:-1;2718:7:0;2745:6;2680:79;;-1:-1:-1;;;;;2745:6:0;;;4095:51:1;;4083:2;4068:18;2680:79:0;3949:203:1;4885:58:0;;;;;;;;;;;;;;;;5928:87;;;;;;;;;;-1:-1:-1;6000:7:0;;;;;;;;;;;;-1:-1:-1;;;6000:7:0;;;;5928:87;;11753:749;;;;;;;;;;;;;:::i;6344:199::-;;;;;;;;;;-1:-1:-1;6344:199:0;;;;;:::i;:::-;;:::i;4950:56::-;;;;;;;;;;;;;;;;12510:138;;;;;;;;;;;;;:::i;6551:184::-;;;;;;;;;;-1:-1:-1;6551:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;6700:18:0;;;6668:7;6700:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6551:184;5013:58;;;;;;;;;;;;;;;;6743:193;6845:4;6867:39;300:10;6890:7;6899:6;6867:8;:39::i;:::-;-1:-1:-1;6924:4:0;6743:193;;;;;:::o;6114:95::-;6167:7;4689:13;4629:2;4689;:13;:::i;:::-;4673:29;;:13;:29;:::i;:::-;6187:14;;6114:95;:::o;6944:446::-;7076:4;7093:36;7103:6;7111:9;7122:6;7093:9;:36::i;:::-;7140:220;7163:6;300:10;7211:138;7267:6;7211:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7211:19:0;;;;;;:11;:19;;;;;;;;300:10;7211:33;;;;;;;;;;:37;:138::i;:::-;7140:8;:220::i;:::-;-1:-1:-1;7378:4:0;6944:446;;;;;:::o;12896:373::-;12962:17;;-1:-1:-1;;;;;12962:17:0;300:10;-1:-1:-1;;;;;12946:33:0;;12938:42;;;;;;13032:4;12991:20;6310:18;;;:9;:18;;;;;;13053:16;;13049:79;;13086:30;13103:12;13086:16;:30::i;:::-;13159:21;13195:14;;13191:71;;13226:24;13239:10;13226:12;:24::i;:::-;12927:342;;12896:373::o;11440:305::-;2807:6;;-1:-1:-1;;;;;2807:6:0;300:10;2807:22;2799:67;;;;-1:-1:-1;;;2799:67:0;;;;;;;:::i;:::-;;;;;;;;;11586:2:::1;11572:10;:16;;:37;;;;;11607:2;11592:11;:17;;11572:37;:52;;;;-1:-1:-1::0;11613:11:0::1;::::0;-1:-1:-1;;;11613:11:0;::::1;;;11572:52;11550:113;;;::::0;-1:-1:-1;;;11550:113:0;;6801:2:1;11550:113:0::1;::::0;::::1;6783:21:1::0;6840:2;6820:18;;;6813:30;-1:-1:-1;;;6859:18:1;;;6852:41;6910:18;;11550:113:0::1;6599:335:1::0;11550:113:0::1;11674:12;:25:::0;;;;11710:13:::1;:27:::0;11440:305::o;11260:172::-;2807:6;;-1:-1:-1;;;;;2807:6:0;300:10;2807:22;2799:67;;;;-1:-1:-1;;;2799:67:0;;;;;;;:::i;:::-;11339:9:::1;11334:91;11358:5;:12;11354:1;:16;11334:91;;;11409:4;11392;:14;11397:5;11403:1;11397:8;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;11392:14:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;11392:14:0;:21;;-1:-1:-1;;11392:21:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11372:3;::::1;::::0;::::1;:::i;:::-;;;;11334:91;;2894:148:::0;2807:6;;-1:-1:-1;;;;;2807:6:0;300:10;2807:22;2799:67;;;;-1:-1:-1;;;2799:67:0;;;;;;;:::i;:::-;3001:1:::1;2985:6:::0;;2964:40:::1;::::0;-1:-1:-1;;;;;2985:6:0;;::::1;::::0;2964:40:::1;::::0;3001:1;;2964:40:::1;3032:1;3015:19:::0;;-1:-1:-1;;;;;;3015:19:0::1;::::0;;2894:148::o;10889:162::-;2807:6;;-1:-1:-1;;;;;2807:6:0;300:10;2807:22;2799:67;;;;-1:-1:-1;;;2799:67:0;;;;;;;:::i;:::-;4689:13:::1;4629:2;4689;:13;:::i;:::-;4673:29;::::0;:13:::1;:29;:::i;:::-;10943:12;:22:::0;4689:13:::1;4629:2;4689;:13;:::i;:::-;4673:29;::::0;:13:::1;:29;:::i;:::-;10976:14;:24:::0;11016:27:::1;4689:13;4629:2;4689;:13;:::i;:::-;4673:29;::::0;:13:::1;:29;:::i;:::-;11016:27;::::0;1500:25:1;;;1488:2;1473:18;11016:27:0::1;;;;;;;10889:162::o:0;11753:749::-;2807:6;;-1:-1:-1;;;;;2807:6:0;300:10;2807:22;2799:67;;;;-1:-1:-1;;;2799:67:0;;;;;;;:::i;:::-;11805:15:::1;:104:::0;;-1:-1:-1;;;;;;11805:104:0::1;11856:42;11805:104:::0;;::::1;::::0;;;11922:58:::1;::::0;11939:4:::1;::::0;4689:13:::1;4629:2;4689;:13;:::i;:::-;4673:29;::::0;:13:::1;:29;:::i;11922:58::-;12025:15;;;;;;;;;-1:-1:-1::0;;;;;12025:15:0::1;-1:-1:-1::0;;;;;12025:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12007:55:0::1;;12085:4;12105:15;;;;;;;;;-1:-1:-1::0;;;;;12105:15:0::1;-1:-1:-1::0;;;;;12105:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12007:131;::::0;-1:-1:-1;;;;;;12007:131:0::1;::::0;;;;;;-1:-1:-1;;;;;7697:15:1;;;12007:131:0::1;::::0;::::1;7679:34:1::0;7749:15;;7729:18;;;7722:43;7614:18;;12007:131:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;11991:13;:147:::0;;-1:-1:-1;;;;;11991:147:0;;::::1;-1:-1:-1::0;;;;;;11991:147:0;;::::1;;::::0;;12149:15:::1;::::0;::::1;:31;12188:21;12233:4;12253:24;12233:4:::0;-1:-1:-1;;;;;6310:18:0;6283:7;6310:18;;;:9;:18;;;;;;;6217:119;12253:24:::1;12292:1;12308::::0;12324:7:::1;2718::::0;2745:6;-1:-1:-1;;;;;2745:6:0;;2680:79;12324:7:::1;12149:223;::::0;::::1;::::0;;;-1:-1:-1;;;;;;12149:223:0;;;-1:-1:-1;;;;;8135:15:1;;;12149:223:0::1;::::0;::::1;8117:34:1::0;8167:18;;;8160:34;;;;8210:18;;;8203:34;;;;8253:18;;;8246:34;8317:15;;;8296:19;;;8289:44;12346:15:0::1;8349:19:1::0;;;8342:35;8051:19;;12149:223:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;12390:13:0::1;::::0;12435:15:::1;::::0;12383:111:::1;::::0;-1:-1:-1;;;12383:111:0;;-1:-1:-1;;;;;12435:15:0;;::::1;12383:111;::::0;::::1;8873:51:1::0;-1:-1:-1;;8940:18:1;;;8933:34;12390:13:0;::::1;::::0;-1:-1:-1;12383:29:0::1;::::0;8846:18:1;;12383:111:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;11753:749::o:0;6344:199::-;6449:4;6471:42;300:10;6495:9;6506:6;6471:9;:42::i;12510:138::-;2807:6;;-1:-1:-1;;;;;2807:6:0;300:10;2807:22;2799:67;;;;-1:-1:-1;;;2799:67:0;;;;;;;:::i;:::-;12572:11:::1;::::0;-1:-1:-1;;;12572:11:0;::::1;;;12571:12;12563:48;;;::::0;-1:-1:-1;;;12563:48:0;;9462:2:1;12563:48:0::1;::::0;::::1;9444:21:1::0;9501:2;9481:18;;;9474:30;9540:25;9520:18;;;9513:53;9583:18;;12563:48:0::1;9260:347:1::0;12563:48:0::1;12622:11;:18:::0;;-1:-1:-1;;;;12622:18:0::1;-1:-1:-1::0;;;12622:18:0::1;::::0;;12510:138::o;7398:369::-;-1:-1:-1;;;;;7525:19:0;;7517:68;;;;-1:-1:-1;;;7517:68:0;;9814:2:1;7517:68:0;;;9796:21:1;9853:2;9833:18;;;9826:30;9892:34;9872:18;;;9865:62;-1:-1:-1;;;9943:18:1;;;9936:34;9987:19;;7517:68:0;9612:400:1;7517:68:0;-1:-1:-1;;;;;7604:21:0;;7596:68;;;;-1:-1:-1;;;7596:68:0;;10219:2:1;7596:68:0;;;10201:21:1;10258:2;10238:18;;;10231:30;10297:34;10277:18;;;10270:62;-1:-1:-1;;;10348:18:1;;;10341:32;10390:19;;7596:68:0;10017:398:1;7596:68:0;-1:-1:-1;;;;;7675:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7727:32;;1500:25:1;;;7727:32:0;;1473:18:1;7727:32:0;;;;;;;7398:369;;;:::o;7775:2435::-;-1:-1:-1;;;;;7897:17:0;;7889:67;;;;-1:-1:-1;;;7889:67:0;;10622:2:1;7889:67:0;;;10604:21:1;10661:2;10641:18;;;10634:30;10700:34;10680:18;;;10673:62;-1:-1:-1;;;10751:18:1;;;10744:35;10796:19;;7889:67:0;10420:401:1;7889:67:0;-1:-1:-1;;;;;7975:17:0;;7967:65;;;;-1:-1:-1;;;7967:65:0;;11028:2:1;7967:65:0;;;11010:21:1;11067:2;11047:18;;;11040:30;11106:34;11086:18;;;11079:62;-1:-1:-1;;;11157:18:1;;;11150:33;11200:19;;7967:65:0;10826:399:1;7967:65:0;8060:1;8051:6;:10;8043:64;;;;-1:-1:-1;;;8043:64:0;;11432:2:1;8043:64:0;;;11414:21:1;11471:2;11451:18;;;11444:30;11510:34;11490:18;;;11483:62;-1:-1:-1;;;11561:18:1;;;11554:39;11610:19;;8043:64:0;11230:405:1;8043:64:0;8148:17;;-1:-1:-1;;;;;8141:24:0;;;8148:17;;8141:24;;:52;;-1:-1:-1;;;;;;8169:14:0;;;;;;:9;:14;;;;;;:24;-1:-1:-1;8169:24:0;8141:52;8118:122;;;;-1:-1:-1;;;8118:122:0;;11842:2:1;8118:122:0;;;11824:21:1;11881:2;11861:18;;;11854:30;-1:-1:-1;;;11900:18:1;;;11893:48;11958:18;;8118:122:0;11640:342:1;8118:122:0;-1:-1:-1;;;;;8316:23:0;;8253:17;8316:23;;;:18;:23;;;;;;8253:17;;8316:23;;8315:24;:52;;;;-1:-1:-1;;;;;;8344:23:0;;;;;;:18;:23;;;;;;;;8343:24;8315:52;8311:120;;;8390:11;;-1:-1:-1;;;8390:11:0;;;;8382:49;;;;-1:-1:-1;;;8382:49:0;;12189:2:1;8382:49:0;;;12171:21:1;12228:2;12208:18;;;12201:30;12267:27;12247:18;;;12240:55;12312:18;;8382:49:0;11987:349:1;8382:49:0;2718:7;2745:6;-1:-1:-1;;;;;8446:14:0;;;2745:6;;8446:14;;;;:32;;-1:-1:-1;2718:7:0;2745:6;-1:-1:-1;;;;;8464:14:0;;;2745:6;;8464:14;;8446:32;:60;;;;-1:-1:-1;8489:17:0;;-1:-1:-1;;;;;8482:24:0;;;8489:17;;8482:24;;8446:60;8442:1400;;;-1:-1:-1;;;;;8532:9:0;;;;;;:4;:9;;;;;;;;8531:10;:24;;;;-1:-1:-1;;;;;;8546:9:0;;;;;;:4;:9;;;;;;;;8545:10;8531:24;8523:33;;;;;;-1:-1:-1;8627:13:0;;8577:6;;-1:-1:-1;;;;;8620:20:0;;;8627:13;;8620:20;:72;;;;-1:-1:-1;8676:15:0;;-1:-1:-1;;;;;8661:31:0;;;8676:15;;8661:31;;8620:72;:117;;;;-1:-1:-1;;;;;;8714:23:0;;;;;;:18;:23;;;;;;;;8713:24;8620:117;8598:474;;;8790:12;;8780:6;:22;;8772:60;;;;-1:-1:-1;;;8772:60:0;;12543:2:1;8772:60:0;;;12525:21:1;12582:2;12562:18;;;12555:30;-1:-1:-1;;;12601:18:1;;;12594:55;12666:18;;8772:60:0;12341:349:1;8772:60:0;8908:14;;8898:6;8881:14;8891:3;-1:-1:-1;;;;;6310:18:0;6283:7;6310:18;;;:9;:18;;;;;;;6217:119;8881:14;:23;;;;:::i;:::-;:41;;8851:141;;;;-1:-1:-1;;;8851:141:0;;13027:2:1;8851:141:0;;;13009:21:1;13066:2;13046:18;;;13039:30;13105:28;13085:18;;;13078:56;13151:18;;8851:141:0;12825:350:1;8851:141:0;9023:33;9052:3;9023:24;9034:12;;9023:6;:10;;:24;;;;:::i;:::-;:28;;:33::i;:::-;9011:45;;8598:474;9099:13;;-1:-1:-1;;;;;9092:20:0;;;9099:13;;9092:20;:44;;;;-1:-1:-1;;;;;;9116:20:0;;9131:4;9116:20;;9092:44;9088:210;;;9175:12;;9165:6;:22;;9157:60;;;;-1:-1:-1;;;9157:60:0;;12543:2:1;9157:60:0;;;12525:21:1;12582:2;12562:18;;;12555:30;-1:-1:-1;;;12601:18:1;;;12594:55;12666:18;;9157:60:0;12341:349:1;9157:60:0;9248:34;9278:3;9248:25;9259:13;;9248:6;:10;;:25;;;;:::i;:34::-;9236:46;;9088:210;9337:6;;-1:-1:-1;;;9337:6:0;;;;9336:7;:48;;;;-1:-1:-1;9371:13:0;;-1:-1:-1;;;;;9364:20:0;;;9371:13;;9364:20;9336:48;:80;;;;-1:-1:-1;9405:11:0;;-1:-1:-1;;;9405:11:0;;;;9336:80;:128;;;;;9447:17;;9437:6;:27;;9336:128;9314:460;;;9548:4;9499:28;6310:18;;;:9;:18;;;;;;9577:24;;9573:132;;9626:59;9643:41;9647:14;;9663:20;9643:3;:41::i;:::-;9626:16;:59::i;:::-;9723:35;9736:21;9723:12;:35::i;:::-;9480:294;9314:460;8442:1400;;;9811:17;;-1:-1:-1;;;;;9804:24:0;;;9811:17;;9804:24;9800:42;;-1:-1:-1;9836:6:0;9800:42;9859:13;;9855:171;;9934:4;9916:24;;;;:9;:24;;;;;;:39;;9945:9;9916:28;:39::i;:::-;9907:4;9889:24;;;;:9;:24;;;;;;;:66;;;;9975:39;;-1:-1:-1;;;;;9975:39:0;;;;;;;10004:9;1500:25:1;;1488:2;1473:18;;1354:177;9975:39:0;;;;;;;;9855:171;-1:-1:-1;;;;;10053:14:0;;;;;;:9;:14;;;;;;:23;;10072:3;10053:18;:23::i;:::-;-1:-1:-1;;;;;10036:14:0;;;;;;:9;:14;;;;;:40;10104:41;10123:21;:6;10134:9;10123:10;:21::i;:::-;-1:-1:-1;;;;;10104:14:0;;;;;;:9;:14;;;;;;;:18;:41::i;:::-;-1:-1:-1;;;;;10087:14:0;;;;;;;:9;:14;;;;;:58;;;;10161:41;;;10180:21;:6;10191:9;10180:10;:21::i;:::-;10161:41;;1500:25:1;;;1488:2;1473:18;10161:41:0;;;;;;;7878:2332;;7775:2435;;;:::o;1482:224::-;1602:7;1638:12;1630:6;;;;1622:29;;;;-1:-1:-1;;;1622:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1662:9:0;1674:5;1678:1;1674;:5;:::i;:::-;1662:17;1482:224;-1:-1:-1;;;;;1482:224:0:o;10333:548::-;5319:6;:13;;-1:-1:-1;;;;5319:13:0;-1:-1:-1;;;5319:13:0;;;10411:55;;10448:7:::1;10411:55;10500:16;::::0;;10514:1:::1;10500:16:::0;;;;;::::1;::::0;;10476:21:::1;::::0;10500:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10500:16:0::1;10476:40;;10545:4;10527;10532:1;10527:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10527:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;10571:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;10571:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;10527:7;;10571:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10561:4;10566:1;10561:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10561:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;10636:15:::1;::::0;10604:62:::1;::::0;10621:4:::1;::::0;10636:15:::1;10654:11:::0;10604:8:::1;:62::i;:::-;10677:15;::::0;:196:::1;::::0;-1:-1:-1;;;10677:196:0;;-1:-1:-1;;;;;10677:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10758:11;;10677:15:::1;::::0;10800:4;;10827::::1;::::0;10847:15:::1;::::0;10677:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;10400:481;5343:1;-1:-1:-1::0;5355:6:0;:14;;-1:-1:-1;;;;5355:14:0;;;10333:548::o;11059:99::-;11116:17;;:34;;-1:-1:-1;;;;;11116:17:0;;;;:34;;;;;11143:6;;11116:17;:34;:17;:34;11143:6;11116:17;:34;;;;;;;;;;;;;;;;;;;1714:246;1772:7;1796:1;1801;1796:6;1792:47;;-1:-1:-1;1826:1:0;1819:8;;1792:47;1849:9;1861:5;1865:1;1861;:5;:::i;:::-;1849:17;-1:-1:-1;1894:1:0;1885:5;1889:1;1849:17;1885:5;:::i;:::-;:10;1877:56;;;;-1:-1:-1;;;1877:56:0;;14722:2:1;1877:56:0;;;14704:21:1;14761:2;14741:18;;;14734:30;14800:34;14780:18;;;14773:62;-1:-1:-1;;;14851:18:1;;;14844:31;14892:19;;1877:56:0;14520:397:1;1877:56:0;1951:1;1714:246;-1:-1:-1;;;1714:246:0:o;1968:132::-;2026:7;2053:39;2057:1;2060;2053:39;;;;;;;;;;;;;;;;;:3;:39::i;10218:107::-;10275:7;10307:1;10303;:5;10302:15;;10316:1;10302:15;;;-1:-1:-1;10312:1:0;10218:107;-1:-1:-1;10218:107:0:o;1151:179::-;1209:7;;1241:5;1245:1;1241;:5;:::i;:::-;1229:17;;1270:1;1265;:6;;1257:46;;;;-1:-1:-1;;;1257:46:0;;15124:2:1;1257:46:0;;;15106:21:1;15163:2;15143:18;;;15136:30;15202:29;15182:18;;;15175:57;15249:18;;1257:46:0;14922:351:1;1338:136:0;1396:7;1423:43;1427:1;1430;1423:43;;;;;;;;;;;;;;;;;:3;:43::i;2108:223::-;2228:7;2263:12;2256:5;2248:28;;;;-1:-1:-1;;;2248:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2287:9:0;2299:5;2303:1;2299;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:134;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1536:456::-;1613:6;1621;1629;1682:2;1670:9;1661:7;1657:23;1653:32;1650:52;;;1698:1;1695;1688:12;1650:52;1737:9;1724:23;1756:31;1781:5;1756:31;:::i;:::-;1806:5;-1:-1:-1;1863:2:1;1848:18;;1835:32;1876:33;1835:32;1876:33;:::i;:::-;1536:456;;1928:7;;-1:-1:-1;;;1982:2:1;1967:18;;;;1954:32;;1536:456::o;2186:247::-;2245:6;2298:2;2286:9;2277:7;2273:23;2269:32;2266:52;;;2314:1;2311;2304:12;2266:52;2353:9;2340:23;2372:31;2397:5;2372:31;:::i;2438:248::-;2506:6;2514;2567:2;2555:9;2546:7;2542:23;2538:32;2535:52;;;2583:1;2580;2573:12;2535:52;-1:-1:-1;;2606:23:1;;;2676:2;2661:18;;;2648:32;;-1:-1:-1;2438:248:1:o;2691:127::-;2752:10;2747:3;2743:20;2740:1;2733:31;2783:4;2780:1;2773:15;2807:4;2804:1;2797:15;2823:1121;2907:6;2938:2;2981;2969:9;2960:7;2956:23;2952:32;2949:52;;;2997:1;2994;2987:12;2949:52;3037:9;3024:23;3066:18;3107:2;3099:6;3096:14;3093:34;;;3123:1;3120;3113:12;3093:34;3161:6;3150:9;3146:22;3136:32;;3206:7;3199:4;3195:2;3191:13;3187:27;3177:55;;3228:1;3225;3218:12;3177:55;3264:2;3251:16;3286:2;3282;3279:10;3276:36;;;3292:18;;:::i;:::-;3338:2;3335:1;3331:10;3370:2;3364:9;3433:2;3429:7;3424:2;3420;3416:11;3412:25;3404:6;3400:38;3488:6;3476:10;3473:22;3468:2;3456:10;3453:18;3450:46;3447:72;;;3499:18;;:::i;:::-;3535:2;3528:22;3585:18;;;3619:15;;;;-1:-1:-1;3661:11:1;;;3657:20;;;3689:19;;;3686:39;;;3721:1;3718;3711:12;3686:39;3745:11;;;;3765:148;3781:6;3776:3;3773:15;3765:148;;;3847:23;3866:3;3847:23;:::i;:::-;3835:36;;3798:12;;;;3891;;;;3765:148;;;3932:6;2823:1121;-1:-1:-1;;;;;;;;2823:1121:1:o;4157:388::-;4225:6;4233;4286:2;4274:9;4265:7;4261:23;4257:32;4254:52;;;4302:1;4299;4292:12;4254:52;4341:9;4328:23;4360:31;4385:5;4360:31;:::i;:::-;4410:5;-1:-1:-1;4467:2:1;4452:18;;4439:32;4480:33;4439:32;4480:33;:::i;:::-;4532:7;4522:17;;;4157:388;;;;;:::o;4550:127::-;4611:10;4606:3;4602:20;4599:1;4592:31;4642:4;4639:1;4632:15;4666:4;4663:1;4656:15;4682:422;4771:1;4814:5;4771:1;4828:270;4849:7;4839:8;4836:21;4828:270;;;4908:4;4904:1;4900:6;4896:17;4890:4;4887:27;4884:53;;;4917:18;;:::i;:::-;4967:7;4957:8;4953:22;4950:55;;;4987:16;;;;4950:55;5066:22;;;;5026:15;;;;4828:270;;;4832:3;4682:422;;;;;:::o;5109:806::-;5158:5;5188:8;5178:80;;-1:-1:-1;5229:1:1;5243:5;;5178:80;5277:4;5267:76;;-1:-1:-1;5314:1:1;5328:5;;5267:76;5359:4;5377:1;5372:59;;;;5445:1;5440:130;;;;5352:218;;5372:59;5402:1;5393:10;;5416:5;;;5440:130;5477:3;5467:8;5464:17;5461:43;;;5484:18;;:::i;:::-;-1:-1:-1;;5540:1:1;5526:16;;5555:5;;5352:218;;5654:2;5644:8;5641:16;5635:3;5629:4;5626:13;5622:36;5616:2;5606:8;5603:16;5598:2;5592:4;5589:12;5585:35;5582:77;5579:159;;;-1:-1:-1;5691:19:1;;;5723:5;;5579:159;5770:34;5795:8;5789:4;5770:34;:::i;:::-;5840:6;5836:1;5832:6;5828:19;5819:7;5816:32;5813:58;;;5851:18;;:::i;:::-;5889:20;;5109:806;-1:-1:-1;;;5109:806:1:o;5920:140::-;5978:5;6007:47;6048:4;6038:8;6034:19;6028:4;6007:47;:::i;6065:168::-;6138:9;;;6169;;6186:15;;;6180:22;;6166:37;6156:71;;6207:18;;:::i;6238:356::-;6440:2;6422:21;;;6459:18;;;6452:30;6518:34;6513:2;6498:18;;6491:62;6585:2;6570:18;;6238:356::o;6939:127::-;7000:10;6995:3;6991:20;6988:1;6981:31;7031:4;7028:1;7021:15;7055:4;7052:1;7045:15;7071:135;7110:3;7131:17;;;7128:43;;7151:18;;:::i;:::-;-1:-1:-1;7198:1:1;7187:13;;7071:135::o;7211:251::-;7281:6;7334:2;7322:9;7313:7;7309:23;7305:32;7302:52;;;7350:1;7347;7340:12;7302:52;7382:9;7376:16;7401:31;7426:5;7401:31;:::i;8388:306::-;8476:6;8484;8492;8545:2;8533:9;8524:7;8520:23;8516:32;8513:52;;;8561:1;8558;8551:12;8513:52;8590:9;8584:16;8574:26;;8640:2;8629:9;8625:18;8619:25;8609:35;;8684:2;8673:9;8669:18;8663:25;8653:35;;8388:306;;;;;:::o;8978:277::-;9045:6;9098:2;9086:9;9077:7;9073:23;9069:32;9066:52;;;9114:1;9111;9104:12;9066:52;9146:9;9140:16;9199:5;9192:13;9185:21;9178:5;9175:32;9165:60;;9221:1;9218;9211:12;12695:125;12760:9;;;12781:10;;;12778:36;;;12794:18;;:::i;13180:128::-;13247:9;;;13268:11;;;13265:37;;;13282:18;;:::i;13313:980::-;13575:4;13623:3;13612:9;13608:19;13654:6;13643:9;13636:25;13680:2;13718:6;13713:2;13702:9;13698:18;13691:34;13761:3;13756:2;13745:9;13741:18;13734:31;13785:6;13820;13814:13;13851:6;13843;13836:22;13889:3;13878:9;13874:19;13867:26;;13928:2;13920:6;13916:15;13902:29;;13949:1;13959:195;13973:6;13970:1;13967:13;13959:195;;;14038:13;;-1:-1:-1;;;;;14034:39:1;14022:52;;14129:15;;;;14094:12;;;;14070:1;13988:9;13959:195;;;-1:-1:-1;;;;;;;14210:32:1;;;;14205:2;14190:18;;14183:60;-1:-1:-1;;;14274:3:1;14259:19;14252:35;14171:3;13313:980;-1:-1:-1;;;13313:980:1:o;14298:217::-;14338:1;14364;14354:132;;14408:10;14403:3;14399:20;14396:1;14389:31;14443:4;14440:1;14433:15;14471:4;14468:1;14461:15;14354:132;-1:-1:-1;14500:9:1;;14298:217::o
Swarm Source
ipfs://d3663648a2c288e7b02757fd8423003586d29e240cb4c8bb4dd016f6840d5201
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.