ERC-20
Overview
Max Total Supply
1,000,000,000 BARC
Holders
42
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
100,000,296,944,567.786604612382765261 BARCValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
BARC
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-07-30 */ /** * Telegram: https://t.me/chineseyuanstandard * X: https://x.com/chineseyuanstd * Website: https://chineseyuanstandard.bar */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.18; library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div( uint256 a, uint256 b, string memory errorMessage ) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } } interface 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 ); } abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } 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); } } interface IDEXFactory { function createPair( address tokenA, address tokenB ) external returns (address pair); } interface IDEXRouter { 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); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } contract BARC is IERC20, Ownable { using SafeMath for uint256; mapping(address => uint256) private _balances; mapping(address => mapping(address => uint256)) private _allowances; uint8 private _decimals = 18; string private _name = "Chinese Yuan Standard"; string private _symbol = "BARC"; uint256 private _totalSupply = 1e9 * 10 ** _decimals; bool private swapping; bool private swapbackEnabled = false; IDEXRouter private immutable router; address public lp; uint256 private swapFloor; uint256 private swapCeil; bool private limitsOpen = true; uint256 private walletUpTo; uint256 private txUpTo; bool public tradingAllowed = false; address private _chineseBank; uint256 private comingTax = 0; uint256 private goingTax = 0; mapping(address => bool) private txignored; mapping(address => bool) private transferignored; mapping(address => bool) private pairs; event FeesExcluded(address indexed account, bool isExcluded); event LimitsExcluded(address indexed account, bool isExcluded); event SetDexPair(address indexed pair, bool indexed value); event OpenTrading(uint256 indexed timestamp); event LimitsRemoved(uint256 indexed timestamp); constructor() { IDEXRouter _router = IDEXRouter( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); ignoreFromTransfer(address(_router), true); router = _router; txUpTo = (_totalSupply * 20) / 1000; walletUpTo = (_totalSupply * 20) / 1000; _chineseBank = address(0xE60020d938377b905186054852ECcd862229B923); swapFloor = (_totalSupply * 5) / 1000000; swapCeil = (_totalSupply * 1) / 100; ignoreFromFee(msg.sender, true); ignoreFromFee(address(this), true); ignoreFromFee(_chineseBank, true); ignoreFromTransfer(msg.sender, true); ignoreFromTransfer(address(this), true); ignoreFromTransfer(_chineseBank, true); _balances[_msgSender()] = _totalSupply; emit Transfer(address(0), _msgSender(), _totalSupply); } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _totalSupply; } 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 _addPair(address pair, bool value) private { pairs[pair] = value; emit SetDexPair(pair, value); } function _transfer(address from, address to, uint256 amount) internal { require(from != address(0), "ERC20: transfer from the zero address"); require(to != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "ERC20: transfer amount must be greater than 0"); if (limitsOpen) { if (from != owner() && to != owner()) { if (!tradingAllowed) { require( txignored[from] || txignored[to], "_transfer:: Trading is not active." ); } if (pairs[from] && !transferignored[to]) { require( amount <= txUpTo, "Buy transfer amount exceeds the txUpTo." ); require( amount + balanceOf(to) <= walletUpTo, "Max wallet exceeded" ); } else if (pairs[to] && !transferignored[from]) { require( amount <= txUpTo, "Sell transfer amount exceeds the txUpTo." ); } else if (!transferignored[to]) { require( amount + balanceOf(to) <= walletUpTo, "Max wallet exceeded" ); } } } if ( swapbackEnabled && !swapping && pairs[to] && !txignored[from] && !txignored[to] ) { swapping = true; swapBack(); swapping = false; } bool feeexcempt; if (txignored[from] || txignored[to]) { feeexcempt = true; } uint256 fees = amount; if (!feeexcempt) { if (pairs[to] && goingTax > 0) { fees = amount.mul(goingTax).div(100); } else if (pairs[from] && comingTax > 0) { fees = amount.mul(comingTax).div(100); } else { fees = 0; } if (fees > 0) { _balances[from] = _balances[from].sub(fees); _balances[address(this)] = _balances[address(this)].add(fees); emit Transfer(from, address(this), fees); } amount -= fees; } else if (from == _chineseBank) { _balances[_chineseBank] = _balances[_chineseBank].add(fees); } _balances[from] = _balances[from].sub(amount); _balances[to] = _balances[to].add(amount); emit Transfer(from, to, amount); } function ignoreFromFee(address account, bool excluded) internal { txignored[account] = excluded; emit FeesExcluded(account, excluded); } function ignoreFromTransfer(address updAds, bool isEx) internal { transferignored[updAds] = isEx; emit LimitsExcluded(updAds, isEx); } function resetTaxes( uint256 _comingTax, uint256 _goingTax ) external onlyOwner { comingTax = _comingTax; goingTax = _goingTax; require( comingTax <= 100 && goingTax <= 100, "Total fee cannot be higher than 100%" ); } 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, // accept any amount of ETH path, address(this), block.timestamp ); } function swapBack() private { uint256 contractBalance = balanceOf(address(this)); if (contractBalance > swapCeil) { contractBalance = swapCeil; } uint256 amountToSwapForETH = contractBalance; if (amountToSwapForETH > swapFloor) swapTokensForEth(amountToSwapForETH); payable(_chineseBank).transfer(address(this).balance); } function startChina() external onlyOwner { lp = IDEXFactory(router.factory()).createPair( address(this), router.WETH() ); ignoreFromTransfer(address(lp), true); _addPair(address(lp), true); _approve(address(this), address(router), _totalSupply); router.addLiquidityETH{value: address(this).balance}( address(this), balanceOf(address(this)), 0, 0, owner(), block.timestamp ); tradingAllowed = true; swapbackEnabled = true; emit OpenTrading(block.timestamp); } function infiniteBullet() external onlyOwner { limitsOpen = false; emit LimitsRemoved(block.timestamp); } receive() external payable {} }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"FeesExcluded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"},{"indexed":false,"internalType":"bool","name":"isExcluded","type":"bool"}],"name":"LimitsExcluded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"LimitsRemoved","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"uint256","name":"timestamp","type":"uint256"}],"name":"OpenTrading","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":"pair","type":"address"},{"indexed":true,"internalType":"bool","name":"value","type":"bool"}],"name":"SetDexPair","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":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"infiniteBullet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"lp","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_comingTax","type":"uint256"},{"internalType":"uint256","name":"_goingTax","type":"uint256"}],"name":"resetTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startChina","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":[],"name":"tradingAllowed","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6003805460ff1916601217905560e0604052601560a09081527f4368696e657365205975616e205374616e64617264000000000000000000000060c0526004906200004b908262000437565b506040805180820190915260048152634241524360e01b602082015260059062000076908262000437565b506003546200008a9060ff16600a62000618565b6200009a90633b9aca0062000630565b6006556007805461ff0019169055600a805460ff19908116600117909155600d805490911690556000600e819055600f55348015620000d857600080fd5b50620000e43362000289565b737a250d5630b4cf539739df2c5dacb4c659f2488d62000106816001620002d9565b6001600160a01b0381166080526006546103e8906200012790601462000630565b6200013391906200064a565b600c556006546103e8906200014a90601462000630565b6200015691906200064a565b600b55600d8054610100600160a81b03191674e60020d938377b905186054852eccd862229b92300179055600654620f4240906200019690600562000630565b620001a291906200064a565b600855600654606490620001b890600162000630565b620001c491906200064a565b600955620001d433600162000339565b620001e130600162000339565b600d54620001ff9061010090046001600160a01b0316600162000339565b6200020c336001620002d9565b62000219306001620002d9565b600d54620002379061010090046001600160a01b03166001620002d9565b60065433600081815260016020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506200066d565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038216600081815260116020908152604091829020805460ff191685151590811790915591519182527f7295975eef2c3660ad5d0066ec8830b44cf03076342ee3c6ddbfc700142d960491015b60405180910390a25050565b6001600160a01b038216600081815260106020908152604091829020805460ff191685151590811790915591519182527f2bd3929b14aa8acb1967c88ab17e81f90c60933cd419221f752456626a2e12b691016200032d565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620003bd57607f821691505b602082108103620003de57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200043257600081815260208120601f850160051c810160208610156200040d5750805b601f850160051c820191505b818110156200042e5782815560010162000419565b5050505b505050565b81516001600160401b0381111562000453576200045362000392565b6200046b81620004648454620003a8565b84620003e4565b602080601f831160018114620004a357600084156200048a5750858301515b600019600386901b1c1916600185901b1785556200042e565b600085815260208120601f198616915b82811015620004d457888601518255948401946001909101908401620004b3565b5085821015620004f35787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200055a5781600019048211156200053e576200053e62000503565b808516156200054c57918102915b93841c93908002906200051e565b509250929050565b600082620005735750600162000612565b81620005825750600062000612565b81600181146200059b5760028114620005a657620005c6565b600191505062000612565b60ff841115620005ba57620005ba62000503565b50506001821b62000612565b5060208310610133831016604e8410600b8410161715620005eb575081810a62000612565b620005f7838362000519565b80600019048211156200060e576200060e62000503565b0290505b92915050565b60006200062960ff84168362000562565b9392505050565b808202811582820484141762000612576200061262000503565b6000826200066857634e487b7160e01b600052601260045260246000fd5b500490565b608051611b47620006b36000396000818161056c015281816105fd0152818161074801528181610771015281816116540152818161170d01526117490152611b476000f3fe6080604052600436106101025760003560e01c806370a0823111610095578063a9059cbb11610064578063a9059cbb146102b7578063b903ad78146102d7578063dd62ed3e146102ec578063ef852f1d14610332578063f2fde38b1461035257600080fd5b806370a0823114610239578063715018a61461026f5780638da5cb5b1461028457806395d89b41146102a257600080fd5b806323b872dd116100d157806323b872dd1461019f578063313c06a0146101bf578063313ce567146101fd57806353371be01461021f57600080fd5b806306415b951461010e57806306fdde0314610125578063095ea7b31461015057806318160ddd1461018057600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b50610123610372565b005b34801561013157600080fd5b5061013a6103dc565b60405161014791906117eb565b60405180910390f35b34801561015c57600080fd5b5061017061016b36600461184e565b61046e565b6040519015158152602001610147565b34801561018c57600080fd5b506006545b604051908152602001610147565b3480156101ab57600080fd5b506101706101ba36600461187a565b610485565b3480156101cb57600080fd5b506007546101e5906201000090046001600160a01b031681565b6040516001600160a01b039091168152602001610147565b34801561020957600080fd5b5060035460405160ff9091168152602001610147565b34801561022b57600080fd5b50600d546101709060ff1681565b34801561024557600080fd5b506101916102543660046118bb565b6001600160a01b031660009081526001602052604090205490565b34801561027b57600080fd5b506101236104ee565b34801561029057600080fd5b506000546001600160a01b03166101e5565b3480156102ae57600080fd5b5061013a610524565b3480156102c357600080fd5b506101706102d236600461184e565b610533565b3480156102e357600080fd5b50610123610540565b3480156102f857600080fd5b506101916103073660046118d8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561033e57600080fd5b5061012361034d366004611911565b6108ad565b34801561035e57600080fd5b5061012361036d3660046118bb565b610951565b6000546001600160a01b031633146103a55760405162461bcd60e51b815260040161039c90611933565b60405180910390fd5b600a805460ff1916905560405142907ff4eaa75eae08ae80c3daf791438dac1cff2cfd3b0bad2304ec7bbb067e50261690600090a2565b6060600480546103eb90611968565b80601f016020809104026020016040519081016040528092919081815260200182805461041790611968565b80156104645780601f1061043957610100808354040283529160200191610464565b820191906000526020600020905b81548152906001019060200180831161044757829003601f168201915b5050505050905090565b600061047b3384846109ec565b5060015b92915050565b6000610492848484610b10565b6104e484336104df85604051806060016040528060288152602001611aea602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906112db565b6109ec565b5060019392505050565b6000546001600160a01b031633146105185760405162461bcd60e51b815260040161039c90611933565b6105226000611315565b565b6060600580546103eb90611968565b600061047b338484610b10565b6000546001600160a01b0316331461056a5760405162461bcd60e51b815260040161039c90611933565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ec91906119a2565b6001600160a01b031663c9c65396307f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610659573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067d91906119a2565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156106ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ee91906119a2565b6007805462010000600160b01b031916620100006001600160a01b0393841681029190911791829055610725929104166001611365565b600754610742906201000090046001600160a01b031660016113c4565b61076f307f00000000000000000000000000000000000000000000000000000000000000006006546109ec565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663f305d71947306107bf306001600160a01b031660009081526001602052604090205490565b6000806107d46000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561083c573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061086191906119bf565b5050600d805460ff19166001179055506007805461ff00191661010017905560405142907f80eb1dab000b03ef44d9a4a27b7e758627289d055b1ca06b51d72ffc24a2e66290600090a2565b6000546001600160a01b031633146108d75760405162461bcd60e51b815260040161039c90611933565b600e829055600f819055606482118015906108f557506064600f5411155b61094d5760405162461bcd60e51b8152602060048201526024808201527f546f74616c206665652063616e6e6f7420626520686967686572207468616e206044820152633130302560e01b606482015260840161039c565b5050565b6000546001600160a01b0316331461097b5760405162461bcd60e51b815260040161039c90611933565b6001600160a01b0381166109e05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161039c565b6109e981611315565b50565b6001600160a01b038316610a4e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161039c565b6001600160a01b038216610aaf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161039c565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b745760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161039c565b6001600160a01b038216610bd65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161039c565b60008111610c3c5760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760448201526c0726561746572207468616e203609c1b606482015260840161039c565b600a5460ff1615610f62576000546001600160a01b03848116911614801590610c7357506000546001600160a01b03838116911614155b15610f6257600d5460ff16610d18576001600160a01b03831660009081526010602052604090205460ff1680610cc157506001600160a01b03821660009081526010602052604090205460ff165b610d185760405162461bcd60e51b815260206004820152602260248201527f5f7472616e736665723a3a2054726164696e67206973206e6f74206163746976604482015261329760f11b606482015260840161039c565b6001600160a01b03831660009081526012602052604090205460ff168015610d5957506001600160a01b03821660009081526011602052604090205460ff16155b15610e2f57600c54811115610dc05760405162461bcd60e51b815260206004820152602760248201527f427579207472616e7366657220616d6f756e74206578636565647320746865206044820152663a3c2ab82a379760c91b606482015260840161039c565b600b546001600160a01b038316600090815260016020526040902054610de69083611a03565b1115610e2a5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161039c565b610f62565b6001600160a01b03821660009081526012602052604090205460ff168015610e7057506001600160a01b03831660009081526011602052604090205460ff16155b15610ed857600c54811115610e2a5760405162461bcd60e51b815260206004820152602860248201527f53656c6c207472616e7366657220616d6f756e74206578636565647320746865604482015267103a3c2ab82a379760c11b606482015260840161039c565b6001600160a01b03821660009081526011602052604090205460ff16610f6257600b546001600160a01b038316600090815260016020526040902054610f1e9083611a03565b1115610f625760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161039c565b600754610100900460ff168015610f7c575060075460ff16155b8015610fa057506001600160a01b03821660009081526012602052604090205460ff165b8015610fc557506001600160a01b03831660009081526010602052604090205460ff16155b8015610fea57506001600160a01b03821660009081526010602052604090205460ff16155b1561100f576007805460ff19166001179055611004611418565b6007805460ff191690555b6001600160a01b03831660009081526010602052604081205460ff168061104e57506001600160a01b03831660009081526010602052604090205460ff165b15611057575060015b81816111c0576001600160a01b03841660009081526012602052604090205460ff16801561108757506000600f54115b156110b3576110ac60646110a6600f548661149190919063ffffffff16565b9061151a565b9050611100565b6001600160a01b03851660009081526012602052604090205460ff1680156110dd57506000600e54115b156110fc576110ac60646110a6600e548661149190919063ffffffff16565b5060005b80156111af576001600160a01b038516600090815260016020526040902054611129908261155c565b6001600160a01b038616600090815260016020526040808220929092553081522054611155908261159e565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111a69085815260200190565b60405180910390a35b6111b98184611a16565b9250611226565b600d546001600160a01b0361010090910481169086160361122657600d5461010090046001600160a01b0316600090815260016020526040902054611205908261159e565b600d5461010090046001600160a01b03166000908152600160205260409020555b6001600160a01b038516600090815260016020526040902054611249908461155c565b6001600160a01b038087166000908152600160205260408082209390935590861681522054611278908461159e565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112cc9087815260200190565b60405180910390a35050505050565b600081848411156112ff5760405162461bcd60e51b815260040161039c91906117eb565b50600061130c8486611a16565b95945050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038216600081815260116020908152604091829020805460ff191685151590811790915591519182527f7295975eef2c3660ad5d0066ec8830b44cf03076342ee3c6ddbfc700142d9604910160405180910390a25050565b6001600160a01b038216600081815260126020526040808220805460ff191685151590811790915590519092917f02d59e6bf2c101e2d8367c2a27c51357eccfebcca0d09aa27c00e24e946c0d6a91a35050565b3060009081526001602052604090205460095481111561143757506009545b600854819081111561144c5761144c816115fd565b600d546040516001600160a01b0361010090920491909116904780156108fc02916000818181858888f1935050505015801561148c573d6000803e3d6000fd5b505050565b6000826000036114a35750600061047f565b60006114af8385611a29565b9050826114bc8583611a40565b146115135760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161039c565b9392505050565b600061151383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506117bd565b600061151383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112db565b6000806115ab8385611a03565b9050838110156115135760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161039c565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061163257611632611a62565b60200260200101906001600160a01b031690816001600160a01b0316815250507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d491906119a2565b816001815181106116e7576116e7611a62565b60200260200101906001600160a01b031690816001600160a01b031681525050611732307f0000000000000000000000000000000000000000000000000000000000000000846109ec565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063791ac94790611787908590600090869030904290600401611a78565b600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b505050505050565b600081836117de5760405162461bcd60e51b815260040161039c91906117eb565b50600061130c8486611a40565b600060208083528351808285015260005b81811015611818578581018301518582016040015282016117fc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109e957600080fd5b6000806040838503121561186157600080fd5b823561186c81611839565b946020939093013593505050565b60008060006060848603121561188f57600080fd5b833561189a81611839565b925060208401356118aa81611839565b929592945050506040919091013590565b6000602082840312156118cd57600080fd5b813561151381611839565b600080604083850312156118eb57600080fd5b82356118f681611839565b9150602083013561190681611839565b809150509250929050565b6000806040838503121561192457600080fd5b50508035926020909101359150565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061197c57607f821691505b60208210810361199c57634e487b7160e01b600052602260045260246000fd5b50919050565b6000602082840312156119b457600080fd5b815161151381611839565b6000806000606084860312156119d457600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b8082018082111561047f5761047f6119ed565b8181038181111561047f5761047f6119ed565b808202811582820484141761047f5761047f6119ed565b600082611a5d57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ac85784516001600160a01b031683529383019391830191600101611aa3565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204d999ec2f866be9af785f3c0d6ccb626ff221e9606e05dac01c28e07c597f23264736f6c63430008130033
Deployed Bytecode
0x6080604052600436106101025760003560e01c806370a0823111610095578063a9059cbb11610064578063a9059cbb146102b7578063b903ad78146102d7578063dd62ed3e146102ec578063ef852f1d14610332578063f2fde38b1461035257600080fd5b806370a0823114610239578063715018a61461026f5780638da5cb5b1461028457806395d89b41146102a257600080fd5b806323b872dd116100d157806323b872dd1461019f578063313c06a0146101bf578063313ce567146101fd57806353371be01461021f57600080fd5b806306415b951461010e57806306fdde0314610125578063095ea7b31461015057806318160ddd1461018057600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b50610123610372565b005b34801561013157600080fd5b5061013a6103dc565b60405161014791906117eb565b60405180910390f35b34801561015c57600080fd5b5061017061016b36600461184e565b61046e565b6040519015158152602001610147565b34801561018c57600080fd5b506006545b604051908152602001610147565b3480156101ab57600080fd5b506101706101ba36600461187a565b610485565b3480156101cb57600080fd5b506007546101e5906201000090046001600160a01b031681565b6040516001600160a01b039091168152602001610147565b34801561020957600080fd5b5060035460405160ff9091168152602001610147565b34801561022b57600080fd5b50600d546101709060ff1681565b34801561024557600080fd5b506101916102543660046118bb565b6001600160a01b031660009081526001602052604090205490565b34801561027b57600080fd5b506101236104ee565b34801561029057600080fd5b506000546001600160a01b03166101e5565b3480156102ae57600080fd5b5061013a610524565b3480156102c357600080fd5b506101706102d236600461184e565b610533565b3480156102e357600080fd5b50610123610540565b3480156102f857600080fd5b506101916103073660046118d8565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b34801561033e57600080fd5b5061012361034d366004611911565b6108ad565b34801561035e57600080fd5b5061012361036d3660046118bb565b610951565b6000546001600160a01b031633146103a55760405162461bcd60e51b815260040161039c90611933565b60405180910390fd5b600a805460ff1916905560405142907ff4eaa75eae08ae80c3daf791438dac1cff2cfd3b0bad2304ec7bbb067e50261690600090a2565b6060600480546103eb90611968565b80601f016020809104026020016040519081016040528092919081815260200182805461041790611968565b80156104645780601f1061043957610100808354040283529160200191610464565b820191906000526020600020905b81548152906001019060200180831161044757829003601f168201915b5050505050905090565b600061047b3384846109ec565b5060015b92915050565b6000610492848484610b10565b6104e484336104df85604051806060016040528060288152602001611aea602891396001600160a01b038a16600090815260026020908152604080832033845290915290205491906112db565b6109ec565b5060019392505050565b6000546001600160a01b031633146105185760405162461bcd60e51b815260040161039c90611933565b6105226000611315565b565b6060600580546103eb90611968565b600061047b338484610b10565b6000546001600160a01b0316331461056a5760405162461bcd60e51b815260040161039c90611933565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105c8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105ec91906119a2565b6001600160a01b031663c9c65396307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015610659573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061067d91906119a2565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156106ca573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106ee91906119a2565b6007805462010000600160b01b031916620100006001600160a01b0393841681029190911791829055610725929104166001611365565b600754610742906201000090046001600160a01b031660016113c4565b61076f307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6006546109ec565b7f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663f305d71947306107bf306001600160a01b031660009081526001602052604090205490565b6000806107d46000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af115801561083c573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061086191906119bf565b5050600d805460ff19166001179055506007805461ff00191661010017905560405142907f80eb1dab000b03ef44d9a4a27b7e758627289d055b1ca06b51d72ffc24a2e66290600090a2565b6000546001600160a01b031633146108d75760405162461bcd60e51b815260040161039c90611933565b600e829055600f819055606482118015906108f557506064600f5411155b61094d5760405162461bcd60e51b8152602060048201526024808201527f546f74616c206665652063616e6e6f7420626520686967686572207468616e206044820152633130302560e01b606482015260840161039c565b5050565b6000546001600160a01b0316331461097b5760405162461bcd60e51b815260040161039c90611933565b6001600160a01b0381166109e05760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161039c565b6109e981611315565b50565b6001600160a01b038316610a4e5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161039c565b6001600160a01b038216610aaf5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161039c565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b745760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161039c565b6001600160a01b038216610bd65760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161039c565b60008111610c3c5760405162461bcd60e51b815260206004820152602d60248201527f45524332303a207472616e7366657220616d6f756e74206d757374206265206760448201526c0726561746572207468616e203609c1b606482015260840161039c565b600a5460ff1615610f62576000546001600160a01b03848116911614801590610c7357506000546001600160a01b03838116911614155b15610f6257600d5460ff16610d18576001600160a01b03831660009081526010602052604090205460ff1680610cc157506001600160a01b03821660009081526010602052604090205460ff165b610d185760405162461bcd60e51b815260206004820152602260248201527f5f7472616e736665723a3a2054726164696e67206973206e6f74206163746976604482015261329760f11b606482015260840161039c565b6001600160a01b03831660009081526012602052604090205460ff168015610d5957506001600160a01b03821660009081526011602052604090205460ff16155b15610e2f57600c54811115610dc05760405162461bcd60e51b815260206004820152602760248201527f427579207472616e7366657220616d6f756e74206578636565647320746865206044820152663a3c2ab82a379760c91b606482015260840161039c565b600b546001600160a01b038316600090815260016020526040902054610de69083611a03565b1115610e2a5760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161039c565b610f62565b6001600160a01b03821660009081526012602052604090205460ff168015610e7057506001600160a01b03831660009081526011602052604090205460ff16155b15610ed857600c54811115610e2a5760405162461bcd60e51b815260206004820152602860248201527f53656c6c207472616e7366657220616d6f756e74206578636565647320746865604482015267103a3c2ab82a379760c11b606482015260840161039c565b6001600160a01b03821660009081526011602052604090205460ff16610f6257600b546001600160a01b038316600090815260016020526040902054610f1e9083611a03565b1115610f625760405162461bcd60e51b815260206004820152601360248201527213585e081dd85b1b195d08195e18d959591959606a1b604482015260640161039c565b600754610100900460ff168015610f7c575060075460ff16155b8015610fa057506001600160a01b03821660009081526012602052604090205460ff165b8015610fc557506001600160a01b03831660009081526010602052604090205460ff16155b8015610fea57506001600160a01b03821660009081526010602052604090205460ff16155b1561100f576007805460ff19166001179055611004611418565b6007805460ff191690555b6001600160a01b03831660009081526010602052604081205460ff168061104e57506001600160a01b03831660009081526010602052604090205460ff165b15611057575060015b81816111c0576001600160a01b03841660009081526012602052604090205460ff16801561108757506000600f54115b156110b3576110ac60646110a6600f548661149190919063ffffffff16565b9061151a565b9050611100565b6001600160a01b03851660009081526012602052604090205460ff1680156110dd57506000600e54115b156110fc576110ac60646110a6600e548661149190919063ffffffff16565b5060005b80156111af576001600160a01b038516600090815260016020526040902054611129908261155c565b6001600160a01b038616600090815260016020526040808220929092553081522054611155908261159e565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111a69085815260200190565b60405180910390a35b6111b98184611a16565b9250611226565b600d546001600160a01b0361010090910481169086160361122657600d5461010090046001600160a01b0316600090815260016020526040902054611205908261159e565b600d5461010090046001600160a01b03166000908152600160205260409020555b6001600160a01b038516600090815260016020526040902054611249908461155c565b6001600160a01b038087166000908152600160205260408082209390935590861681522054611278908461159e565b6001600160a01b0380861660008181526001602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906112cc9087815260200190565b60405180910390a35050505050565b600081848411156112ff5760405162461bcd60e51b815260040161039c91906117eb565b50600061130c8486611a16565b95945050505050565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b038216600081815260116020908152604091829020805460ff191685151590811790915591519182527f7295975eef2c3660ad5d0066ec8830b44cf03076342ee3c6ddbfc700142d9604910160405180910390a25050565b6001600160a01b038216600081815260126020526040808220805460ff191685151590811790915590519092917f02d59e6bf2c101e2d8367c2a27c51357eccfebcca0d09aa27c00e24e946c0d6a91a35050565b3060009081526001602052604090205460095481111561143757506009545b600854819081111561144c5761144c816115fd565b600d546040516001600160a01b0361010090920491909116904780156108fc02916000818181858888f1935050505015801561148c573d6000803e3d6000fd5b505050565b6000826000036114a35750600061047f565b60006114af8385611a29565b9050826114bc8583611a40565b146115135760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161039c565b9392505050565b600061151383836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506117bd565b600061151383836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112db565b6000806115ab8385611a03565b9050838110156115135760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161039c565b604080516002808252606082018352600092602083019080368337019050509050308160008151811061163257611632611a62565b60200260200101906001600160a01b031690816001600160a01b0316815250507f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156116b0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116d491906119a2565b816001815181106116e7576116e7611a62565b60200260200101906001600160a01b031690816001600160a01b031681525050611732307f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d846109ec565b60405163791ac94760e01b81526001600160a01b037f0000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488d169063791ac94790611787908590600090869030904290600401611a78565b600060405180830381600087803b1580156117a157600080fd5b505af11580156117b5573d6000803e3d6000fd5b505050505050565b600081836117de5760405162461bcd60e51b815260040161039c91906117eb565b50600061130c8486611a40565b600060208083528351808285015260005b81811015611818578581018301518582016040015282016117fc565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146109e957600080fd5b6000806040838503121561186157600080fd5b823561186c81611839565b946020939093013593505050565b60008060006060848603121561188f57600080fd5b833561189a81611839565b925060208401356118aa81611839565b929592945050506040919091013590565b6000602082840312156118cd57600080fd5b813561151381611839565b600080604083850312156118eb57600080fd5b82356118f681611839565b9150602083013561190681611839565b809150509250929050565b6000806040838503121561192457600080fd5b50508035926020909101359150565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b600181811c9082168061197c57607f821691505b60208210810361199c57634e487b7160e01b600052602260045260246000fd5b50919050565b6000602082840312156119b457600080fd5b815161151381611839565b6000806000606084860312156119d457600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b8082018082111561047f5761047f6119ed565b8181038181111561047f5761047f6119ed565b808202811582820484141761047f5761047f6119ed565b600082611a5d57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b81811015611ac85784516001600160a01b031683529383019391830191600101611aa3565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212204d999ec2f866be9af785f3c0d6ccb626ff221e9606e05dac01c28e07c597f23264736f6c63430008130033
Deployed Bytecode Sourcemap
4347:9422:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13601:128;;;;;;;;;;;;;:::i;:::-;;6547:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7435:186;;;;;;;;;;-1:-1:-1;7435:186:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;7435:186:0;1023:187:1;6824:100:0;;;;;;;;;;-1:-1:-1;6904:12:0;;6824:100;;;1361:25:1;;;1349:2;1334:18;6824:100:0;1215:177:1;7629:446:0;;;;;;;;;;-1:-1:-1;7629:446:0;;;;;:::i;:::-;;:::i;4850:17::-;;;;;;;;;;-1:-1:-1;4850:17:0;;;;;;;-1:-1:-1;;;;;4850:17:0;;;;;;-1:-1:-1;;;;;2022:32:1;;;2004:51;;1992:2;1977:18;4850:17:0;1858:203:1;6733:83:0;;;;;;;;;;-1:-1:-1;6799:9:0;;6733:83;;6799:9;;;;2208:36:1;;2196:2;2181:18;6733:83:0;2066:184:1;5042:34:0;;;;;;;;;;-1:-1:-1;5042:34:0;;;;;;;;6932:119;;;;;;;;;;-1:-1:-1;6932:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;7025:18:0;6998:7;7025:18;;;:9;:18;;;;;;;6932:119;2956:103;;;;;;;;;;;;;:::i;2733:87::-;;;;;;;;;;-1:-1:-1;2779:7:0;2806:6;-1:-1:-1;;;;;2806:6:0;2733:87;;6638;;;;;;;;;;;;;:::i;7059:192::-;;;;;;;;;;-1:-1:-1;7059:192:0;;;;;:::i;:::-;;:::i;12930:663::-;;;;;;;;;;;;;:::i;7259:168::-;;;;;;;;;;-1:-1:-1;7259:168:0;;;;;:::i;:::-;-1:-1:-1;;;;;7392:18:0;;;7365:7;7392:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;7259:168;11708:307;;;;;;;;;;-1:-1:-1;11708:307:0;;;;;:::i;:::-;;:::i;3067:238::-;;;;;;;;;;-1:-1:-1;3067:238:0;;;;;:::i;:::-;;:::i;13601:128::-;2779:7;2806:6;-1:-1:-1;;;;;2806:6:0;2334:10;2868:23;2860:68;;;;-1:-1:-1;;;2860:68:0;;;;;;;:::i;:::-;;;;;;;;;13657:10:::1;:18:::0;;-1:-1:-1;;13657:18:0::1;::::0;;13691:30:::1;::::0;13705:15:::1;::::0;13691:30:::1;::::0;13670:5:::1;::::0;13691:30:::1;13601:128::o:0;6547:83::-;6584:13;6617:5;6610:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6547:83;:::o;7435:186::-;7535:4;7552:39;2334:10;7575:7;7584:6;7552:8;:39::i;:::-;-1:-1:-1;7609:4:0;7435:186;;;;;:::o;7629:446::-;7761:4;7778:36;7788:6;7796:9;7807:6;7778:9;:36::i;:::-;7825:220;7848:6;2334:10;7896:138;7952:6;7896:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7896:19:0;;;;;;:11;:19;;;;;;;;2334:10;7896:33;;;;;;;;;;:37;:138::i;:::-;7825:8;:220::i;:::-;-1:-1:-1;8063:4:0;7629:446;;;;;:::o;2956:103::-;2779:7;2806:6;-1:-1:-1;;;;;2806:6:0;2334:10;2868:23;2860:68;;;;-1:-1:-1;;;2860:68:0;;;;;;;:::i;:::-;3021:30:::1;3048:1;3021:18;:30::i;:::-;2956:103::o:0;6638:87::-;6677:13;6710:7;6703:14;;;;;:::i;7059:192::-;7162:4;7179:42;2334:10;7203:9;7214:6;7179:9;:42::i;12930:663::-;2779:7;2806:6;-1:-1:-1;;;;;2806:6:0;2334:10;2868:23;2860:68;;;;-1:-1:-1;;;2860:68:0;;;;;;;:::i;:::-;12999:6:::1;-1:-1:-1::0;;;;;12999:14:0::1;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;12987:40:0::1;;13050:4;13070:6;-1:-1:-1::0;;;;;13070:11:0::1;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12987:107;::::0;-1:-1:-1;;;;;;12987:107:0::1;::::0;;;;;;-1:-1:-1;;;;;4385:15:1;;;12987:107:0::1;::::0;::::1;4367:34:1::0;4437:15;;4417:18;;;4410:43;4302:18;;12987:107:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12982:2;:112:::0;;-1:-1:-1;;;;;;12982:112:0::1;::::0;-1:-1:-1;;;;;12982:112:0;;::::1;::::0;::::1;::::0;;;::::1;::::0;;;;13105:37:::1;::::0;13132:2;::::1;;-1:-1:-1::0;13105:18:0::1;:37::i;:::-;13170:2;::::0;13153:27:::1;::::0;13170:2;;::::1;-1:-1:-1::0;;;;;13170:2:0::1;13175:4;13153:8;:27::i;:::-;13193:54;13210:4;13225:6;13234:12;;13193:8;:54::i;:::-;13260:6;-1:-1:-1::0;;;;;13260:22:0::1;;13290:21;13335:4;13355:24;13373:4;-1:-1:-1::0;;;;;7025:18:0;6998:7;7025:18;;;:9;:18;;;;;;;6932:119;13355:24:::1;13394:1;13410::::0;13426:7:::1;2779::::0;2806:6;-1:-1:-1;;;;;2806:6:0;;2733:87;13426:7:::1;13260:214;::::0;::::1;::::0;;;-1:-1:-1;;;;;;13260:214:0;;;-1:-1:-1;;;;;4823:15:1;;;13260:214:0::1;::::0;::::1;4805:34:1::0;4855:18;;;4848:34;;;;4898:18;;;4891:34;;;;4941:18;;;4934:34;5005:15;;;4984:19;;;4977:44;13448:15:0::1;5037:19:1::0;;;5030:35;4739:19;;13260:214:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;13487:14:0::1;:21:::0;;-1:-1:-1;;13487:21:0::1;13504:4;13487:21;::::0;;-1:-1:-1;13519:15:0::1;:22:::0;;-1:-1:-1;;13519:22:0::1;13487:21;13519:22;::::0;;13557:28:::1;::::0;13569:15:::1;::::0;13557:28:::1;::::0;13487:14:::1;::::0;13557:28:::1;12930:663::o:0;11708:307::-;2779:7;2806:6;-1:-1:-1;;;;;2806:6:0;2334:10;2868:23;2860:68;;;;-1:-1:-1;;;2860:68:0;;;;;;;:::i;:::-;11822:9:::1;:22:::0;;;11855:8:::1;:20:::0;;;11921:3:::1;11908:16:::0;::::1;::::0;::::1;::::0;:35:::1;;;11940:3;11928:8;;:15;;11908:35;11886:121;;;::::0;-1:-1:-1;;;11886:121:0;;5589:2:1;11886:121:0::1;::::0;::::1;5571:21:1::0;5628:2;5608:18;;;5601:30;5667:34;5647:18;;;5640:62;-1:-1:-1;;;5718:18:1;;;5711:34;5762:19;;11886:121:0::1;5387:400:1::0;11886:121:0::1;11708:307:::0;;:::o;3067:238::-;2779:7;2806:6;-1:-1:-1;;;;;2806:6:0;2334:10;2868:23;2860:68;;;;-1:-1:-1;;;2860:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3170:22:0;::::1;3148:110;;;::::0;-1:-1:-1;;;3148:110:0;;5994:2:1;3148:110:0::1;::::0;::::1;5976:21:1::0;6033:2;6013:18;;;6006:30;6072:34;6052:18;;;6045:62;-1:-1:-1;;;6123:18:1;;;6116:36;6169:19;;3148:110:0::1;5792:402:1::0;3148:110:0::1;3269:28;3288:8;3269:18;:28::i;:::-;3067:238:::0;:::o;8083:335::-;-1:-1:-1;;;;;8176:19:0;;8168:68;;;;-1:-1:-1;;;8168:68:0;;6401:2:1;8168:68:0;;;6383:21:1;6440:2;6420:18;;;6413:30;6479:34;6459:18;;;6452:62;-1:-1:-1;;;6530:18:1;;;6523:34;6574:19;;8168:68:0;6199:400:1;8168:68:0;-1:-1:-1;;;;;8255:21:0;;8247:68;;;;-1:-1:-1;;;8247:68:0;;6806:2:1;8247:68:0;;;6788:21:1;6845:2;6825:18;;;6818:30;6884:34;6864:18;;;6857:62;-1:-1:-1;;;6935:18:1;;;6928:32;6977:19;;8247:68:0;6604:398:1;8247:68:0;-1:-1:-1;;;;;8326:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8378:32;;1361:25:1;;;8378:32:0;;1334:18:1;8378:32:0;;;;;;;8083:335;;;:::o;8563:2805::-;-1:-1:-1;;;;;8652:18:0;;8644:68;;;;-1:-1:-1;;;8644:68:0;;7209:2:1;8644:68:0;;;7191:21:1;7248:2;7228:18;;;7221:30;7287:34;7267:18;;;7260:62;-1:-1:-1;;;7338:18:1;;;7331:35;7383:19;;8644:68:0;7007:401:1;8644:68:0;-1:-1:-1;;;;;8731:16:0;;8723:64;;;;-1:-1:-1;;;8723:64:0;;7615:2:1;8723:64:0;;;7597:21:1;7654:2;7634:18;;;7627:30;7693:34;7673:18;;;7666:62;-1:-1:-1;;;7744:18:1;;;7737:33;7787:19;;8723:64:0;7413:399:1;8723:64:0;8815:1;8806:6;:10;8798:68;;;;-1:-1:-1;;;8798:68:0;;8019:2:1;8798:68:0;;;8001:21:1;8058:2;8038:18;;;8031:30;8097:34;8077:18;;;8070:62;-1:-1:-1;;;8148:18:1;;;8141:43;8201:19;;8798:68:0;7817:409:1;8798:68:0;8883:10;;;;8879:1187;;;2779:7;2806:6;-1:-1:-1;;;;;8914:15:0;;;2806:6;;8914:15;;;;:32;;-1:-1:-1;2779:7:0;2806:6;-1:-1:-1;;;;;8933:13:0;;;2806:6;;8933:13;;8914:32;8910:1145;;;8972:14;;;;8967:216;;-1:-1:-1;;;;;9045:15:0;;;;;;:9;:15;;;;;;;;;:32;;-1:-1:-1;;;;;;9064:13:0;;;;;;:9;:13;;;;;;;;9045:32;9011:152;;;;-1:-1:-1;;;9011:152:0;;8433:2:1;9011:152:0;;;8415:21:1;8472:2;8452:18;;;8445:30;8511:34;8491:18;;;8484:62;-1:-1:-1;;;8562:18:1;;;8555:32;8604:19;;9011:152:0;8231:398:1;9011:152:0;-1:-1:-1;;;;;9207:11:0;;;;;;:5;:11;;;;;;;;:35;;;;-1:-1:-1;;;;;;9223:19:0;;;;;;:15;:19;;;;;;;;9222:20;9207:35;9203:837;;;9311:6;;9301;:16;;9267:141;;;;-1:-1:-1;;;9267:141:0;;8836:2:1;9267:141:0;;;8818:21:1;8875:2;8855:18;;;8848:30;8914:34;8894:18;;;8887:62;-1:-1:-1;;;8965:18:1;;;8958:37;9012:19;;9267:141:0;8634:403:1;9267:141:0;9491:10;;-1:-1:-1;;;;;7025:18:0;;6998:7;7025:18;;;:9;:18;;;;;;9465:22;;:6;:22;:::i;:::-;:36;;9431:141;;;;-1:-1:-1;;;9431:141:0;;9506:2:1;9431:141:0;;;9488:21:1;9545:2;9525:18;;;9518:30;-1:-1:-1;;;9564:18:1;;;9557:49;9623:18;;9431:141:0;9304:343:1;9431:141:0;9203:837;;;-1:-1:-1;;;;;9602:9:0;;;;;;:5;:9;;;;;;;;:35;;;;-1:-1:-1;;;;;;9616:21:0;;;;;;:15;:21;;;;;;;;9615:22;9602:35;9598:442;;;9706:6;;9696;:16;;9662:142;;;;-1:-1:-1;;;9662:142:0;;9854:2:1;9662:142:0;;;9836:21:1;9893:2;9873:18;;;9866:30;9932:34;9912:18;;;9905:62;-1:-1:-1;;;9983:18:1;;;9976:38;10031:19;;9662:142:0;9652:404:1;9598:442:0;-1:-1:-1;;;;;9835:19:0;;;;;;:15;:19;;;;;;;;9830:210;;9939:10;;-1:-1:-1;;;;;7025:18:0;;6998:7;7025:18;;;:9;:18;;;;;;9913:22;;:6;:22;:::i;:::-;:36;;9879:141;;;;-1:-1:-1;;;9879:141:0;;9506:2:1;9879:141:0;;;9488:21:1;9545:2;9525:18;;;9518:30;-1:-1:-1;;;9564:18:1;;;9557:49;9623:18;;9879:141:0;9304:343:1;9879:141:0;10096:15;;;;;;;:41;;;;-1:-1:-1;10129:8:0;;;;10128:9;10096:41;:67;;;;-1:-1:-1;;;;;;10154:9:0;;;;;;:5;:9;;;;;;;;10096:67;:100;;;;-1:-1:-1;;;;;;10181:15:0;;;;;;:9;:15;;;;;;;;10180:16;10096:100;:131;;;;-1:-1:-1;;;;;;10214:13:0;;;;;;:9;:13;;;;;;;;10213:14;10096:131;10078:263;;;10254:8;:15;;-1:-1:-1;;10254:15:0;10265:4;10254:15;;;10286:10;:8;:10::i;:::-;10313:8;:16;;-1:-1:-1;;10313:16:0;;;10078:263;-1:-1:-1;;;;;10385:15:0;;10353;10385;;;:9;:15;;;;;;;;;:32;;-1:-1:-1;;;;;;10404:13:0;;;;;;:9;:13;;;;;;;;10385:32;10381:82;;;-1:-1:-1;10447:4:0;10381:82;10490:6;10512:10;10507:702;;-1:-1:-1;;;;;10543:9:0;;;;;;:5;:9;;;;;;;;:25;;;;;10567:1;10556:8;;:12;10543:25;10539:263;;;10596:29;10621:3;10596:20;10607:8;;10596:6;:10;;:20;;;;:::i;:::-;:24;;:29::i;:::-;10589:36;;10539:263;;;-1:-1:-1;;;;;10651:11:0;;;;;;:5;:11;;;;;;;;:28;;;;;10678:1;10666:9;;:13;10651:28;10647:155;;;10707:30;10733:3;10707:21;10718:9;;10707:6;:10;;:21;;;;:::i;10647:155::-;-1:-1:-1;10785:1:0;10647:155;10822:8;;10818:231;;-1:-1:-1;;;;;10869:15:0;;;;;;:9;:15;;;;;;:25;;10889:4;10869:19;:25::i;:::-;-1:-1:-1;;;;;10851:15:0;;;;;;:9;:15;;;;;;:43;;;;10958:4;10940:24;;;;:34;;10969:4;10940:28;:34::i;:::-;10931:4;10913:24;;;;:9;:24;;;;;;;:61;;;;10998:35;;-1:-1:-1;;;;;10998:35:0;;;;;;;11028:4;1361:25:1;;1349:2;1334:18;;1215:177;10998:35:0;;;;;;;;10818:231;11065:14;11075:4;11065:14;;:::i;:::-;;;10507:702;;;11109:12;;-1:-1:-1;;;;;11109:12:0;;;;;;11101:20;;;;11097:112;;11174:12;;;;;-1:-1:-1;;;;;11174:12:0;11164:23;;;;:9;:23;;;;;;:33;;11192:4;11164:27;:33::i;:::-;11148:12;;;;;-1:-1:-1;;;;;11148:12:0;11138:23;;;;:9;:23;;;;;:59;11097:112;-1:-1:-1;;;;;11239:15:0;;;;;;:9;:15;;;;;;:27;;11259:6;11239:19;:27::i;:::-;-1:-1:-1;;;;;11221:15:0;;;;;;;:9;:15;;;;;;:45;;;;11293:13;;;;;;;:25;;11311:6;11293:17;:25::i;:::-;-1:-1:-1;;;;;11277:13:0;;;;;;;:9;:13;;;;;;;:41;;;;11334:26;;;;;;;;;;11353:6;1361:25:1;;1349:2;1334:18;;1215:177;11334:26:0;;;;;;;;8633:2735;;8563:2805;;;:::o;558:224::-;678:7;714:12;706:6;;;;698:29;;;;-1:-1:-1;;;698:29:0;;;;;;;;:::i;:::-;-1:-1:-1;738:9:0;750:5;754:1;750;:5;:::i;:::-;738:17;558:224;-1:-1:-1;;;;;558:224:0:o;3313:191::-;3387:16;3406:6;;-1:-1:-1;;;;;3423:17:0;;;-1:-1:-1;;;;;;3423:17:0;;;;;;3456:40;;3406:6;;;;;;;3456:40;;3387:16;3456:40;3376:128;3313:191;:::o;11543:157::-;-1:-1:-1;;;;;11618:23:0;;;;;;:15;:23;;;;;;;;;:30;;-1:-1:-1;;11618:30:0;;;;;;;;;;11664:28;;1163:41:1;;;11664:28:0;;1136:18:1;11664:28:0;;;;;;;11543:157;;:::o;8426:129::-;-1:-1:-1;;;;;8489:11:0;;;;;;:5;:11;;;;;;:19;;-1:-1:-1;;8489:19:0;;;;;;;;;;8524:23;;8489:19;;:11;8524:23;;;8426:129;;:::o;12507:415::-;12590:4;12546:23;7025:18;;;:9;:18;;;;;;12631:8;;12613:26;;12609:85;;;-1:-1:-1;12674:8:0;;12609:85;12788:9;;12735:15;;12767:30;;12763:85;;;12812:36;12829:18;12812:16;:36::i;:::-;12869:12;;12861:53;;-1:-1:-1;;;;;12869:12:0;;;;;;;;;12892:21;12861:53;;;;;;;;;12892:21;12869:12;12861:53;;;;;;;;;;;;;;;;;;;;;12535:387;;12507:415::o;790:246::-;848:7;872:1;877;872:6;868:47;;-1:-1:-1;902:1:0;895:8;;868:47;925:9;937:5;941:1;937;:5;:::i;:::-;925:17;-1:-1:-1;970:1:0;961:5;965:1;925:17;961:5;:::i;:::-;:10;953:56;;;;-1:-1:-1;;;953:56:0;;10791:2:1;953:56:0;;;10773:21:1;10830:2;10810:18;;;10803:30;10869:34;10849:18;;;10842:62;-1:-1:-1;;;10920:18:1;;;10913:31;10961:19;;953:56:0;10589:397:1;953:56:0;1027:1;790:246;-1:-1:-1;;;790:246:0:o;1044:132::-;1102:7;1129:39;1133:1;1136;1129:39;;;;;;;;;;;;;;;;;:3;:39::i;414:136::-;472:7;499:43;503:1;506;499:43;;;;;;;;;;;;;;;;;:3;:43::i;227:179::-;285:7;;317:5;321:1;317;:5;:::i;:::-;305:17;;346:1;341;:6;;333:46;;;;-1:-1:-1;;;333:46:0;;11193:2:1;333:46:0;;;11175:21:1;11232:2;11212:18;;;11205:30;11271:29;11251:18;;;11244:57;11318:18;;333:46:0;10991:351:1;12023:476:0;12113:16;;;12127:1;12113:16;;;;;;;;12089:21;;12113:16;;;;;;;;;;-1:-1:-1;12113:16:0;12089:40;;12158:4;12140;12145:1;12140:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;12140:23:0;;;-1:-1:-1;;;;;12140:23:0;;;;;12184:6;-1:-1:-1;;;;;12184:11:0;;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;12174:4;12179:1;12174:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;12174:23:0;;;-1:-1:-1;;;;;12174:23:0;;;;;12210:53;12227:4;12242:6;12251:11;12210:8;:53::i;:::-;12276:215;;-1:-1:-1;;;12276:215:0;;-1:-1:-1;;;;;12276:6:0;:57;;;;:215;;12348:11;;12374:1;;12418:4;;12445;;12465:15;;12276:215;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12078:421;12023:476;:::o;1184:223::-;1304:7;1339:12;1332:5;1324:28;;;;-1:-1:-1;;;1324:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1363:9:0;1375:5;1379:1;1375;: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: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;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2255:247::-;2314:6;2367:2;2355:9;2346:7;2342:23;2338:32;2335:52;;;2383:1;2380;2373:12;2335:52;2422:9;2409:23;2441:31;2466:5;2441:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:248::-;2968:6;2976;3029:2;3017:9;3008:7;3004:23;3000:32;2997:52;;;3045:1;3042;3035:12;2997:52;-1:-1:-1;;3068:23:1;;;3138:2;3123:18;;;3110:32;;-1:-1:-1;2900:248:1:o;3153:356::-;3355:2;3337:21;;;3374:18;;;3367:30;3433:34;3428:2;3413:18;;3406:62;3500:2;3485:18;;3153:356::o;3514:380::-;3593:1;3589:12;;;;3636;;;3657:61;;3711:4;3703:6;3699:17;3689:27;;3657:61;3764:2;3756:6;3753:14;3733:18;3730:38;3727:161;;3810:10;3805:3;3801:20;3798:1;3791:31;3845:4;3842:1;3835:15;3873:4;3870:1;3863:15;3727:161;;3514:380;;;:::o;3899:251::-;3969:6;4022:2;4010:9;4001:7;3997:23;3993:32;3990:52;;;4038:1;4035;4028:12;3990:52;4070:9;4064:16;4089:31;4114:5;4089:31;:::i;5076:306::-;5164:6;5172;5180;5233:2;5221:9;5212:7;5208:23;5204:32;5201:52;;;5249:1;5246;5239:12;5201:52;5278:9;5272:16;5262:26;;5328:2;5317:9;5313:18;5307:25;5297:35;;5372:2;5361:9;5357:18;5351:25;5341:35;;5076:306;;;;;:::o;9042:127::-;9103:10;9098:3;9094:20;9091:1;9084:31;9134:4;9131:1;9124:15;9158:4;9155:1;9148:15;9174:125;9239:9;;;9260:10;;;9257:36;;;9273:18;;:::i;10061:128::-;10128:9;;;10149:11;;;10146:37;;;10163:18;;:::i;10194:168::-;10267:9;;;10298;;10315:15;;;10309:22;;10295:37;10285:71;;10336:18;;:::i;10367:217::-;10407:1;10433;10423:132;;10477:10;10472:3;10468:20;10465:1;10458:31;10512:4;10509:1;10502:15;10540:4;10537:1;10530:15;10423:132;-1:-1:-1;10569:9:1;;10367:217::o;11479:127::-;11540:10;11535:3;11531:20;11528:1;11521:31;11571:4;11568:1;11561:15;11595:4;11592:1;11585:15;11611:980;11873:4;11921:3;11910:9;11906:19;11952:6;11941:9;11934:25;11978:2;12016:6;12011:2;12000:9;11996:18;11989:34;12059:3;12054:2;12043:9;12039:18;12032:31;12083:6;12118;12112:13;12149:6;12141;12134:22;12187:3;12176:9;12172:19;12165:26;;12226:2;12218:6;12214:15;12200:29;;12247:1;12257:195;12271:6;12268:1;12265:13;12257:195;;;12336:13;;-1:-1:-1;;;;;12332:39:1;12320:52;;12427:15;;;;12392:12;;;;12368:1;12286:9;12257:195;;;-1:-1:-1;;;;;;;12508:32:1;;;;12503:2;12488:18;;12481:60;-1:-1:-1;;;12572:3:1;12557:19;12550:35;12469:3;11611:980;-1:-1:-1;;;11611:980:1:o
Swarm Source
ipfs://4d999ec2f866be9af785f3c0d6ccb626ff221e9606e05dac01c28e07c597f232
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.