Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
10,000,000 ETF
Holders
29
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
0.000000001 ETFValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Source Code Verified (Exact Match)
Contract Name:
ETHETF
Compiler Version
v0.7.4+commit.3f05b770
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2024-05-21 */ /* https://t.me/ethetf_coin https://x.com/eth_etf_erc20 */ //SPDX-License-Identifier: Unlicensed pragma solidity ^0.7.4; 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 IBEP20 { function totalSupply() external view returns (uint256); function decimals() external view returns (uint8); function symbol() external view returns (string memory); function name() external view returns (string memory); function getOwner() external view returns (address); 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); } 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 addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } abstract contract Auth { address internal owner; mapping (address => bool) internal authorizations; constructor(address _owner) { owner = _owner; authorizations[_owner] = true; } /** * Function modifier to require caller to be contract owner */ modifier onlyOwner() { require(isOwner(msg.sender), "!OWNER"); _; } /** * Function modifier to require caller to be authorized */ modifier authorized() { require(isAuthorized(msg.sender), "!AUTHORIZED"); _; } /** * Authorize address. Owner only */ function authorize(address adr) public onlyOwner { authorizations[adr] = true; } /** * Remove address' authorization. Owner only */ function unauthorize(address adr) public onlyOwner { authorizations[adr] = false; } /** * Check if address is owner */ function isOwner(address account) public view returns (bool) { return account == owner; } /** * Return address' authorization status */ function isAuthorized(address adr) public view returns (bool) { return authorizations[adr]; } /** * Transfer ownership to new address. Caller must be owner. Leaves old owner authorized */ function transferOwnership(address payable adr) public onlyOwner { owner = adr; authorizations[adr] = true; emit OwnershipTransferred(adr); } event OwnershipTransferred(address owner); } contract ETHETF is IBEP20, Auth { using SafeMath for uint256; string constant _name = "ETH ETF"; string constant _symbol = "ETF"; uint8 constant _decimals = 9; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; address routerAddress = 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D; //Uni uint256 _totalSupply = 10 * 10**6 * (10 ** _decimals); uint256 public _maxTxAmount = 10 * 10**6 * (10 ** _decimals); uint256 public _walletMax = 10 * 10**6 * (10 ** _decimals); bool public restrictWhales = true; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) public isFeeExempt; mapping (address => bool) public isTxLimitExempt; mapping (address => bool) public isDividendExempt; uint256 public liquidityFee = 0; uint256 public marketingFee = 23; uint256 public extraFeeOnSell = 0; uint256 public totalFee = 23; uint256 public totalFeeIfSelling = 23; address public autoLiquidityReceiver; address public marketingWallet; address public devWallet; IDEXRouter public router; address public pair; uint256 public launchedAt; bool public tradingOpen = true; bool inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; bool public swapAndLiquifyByLimitOnly = false; uint256 public swapThreshold = 1 * 10**4 * (10 ** _decimals); modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } constructor () Auth(msg.sender) { router = IDEXRouter(routerAddress); pair = IDEXFactory(router.factory()).createPair(router.WETH(), address(this)); _allowances[address(this)][address(router)] = uint256(-1); isFeeExempt[msg.sender] = true; isFeeExempt[address(this)] = true; isTxLimitExempt[msg.sender] = true; isTxLimitExempt[pair] = true; isDividendExempt[pair] = true; isDividendExempt[msg.sender] = true; isDividendExempt[address(this)] = true; isDividendExempt[DEAD] = true; isDividendExempt[ZERO] = true; // NICE! autoLiquidityReceiver = 0x17EF5F740522EC2790550cAe4312a8c136910A83; marketingWallet = 0x17EF5F740522EC2790550cAe4312a8c136910A83; devWallet = 0x17EF5F740522EC2790550cAe4312a8c136910A83; totalFee = liquidityFee.add(marketingFee); totalFeeIfSelling = totalFee.add(extraFeeOnSell); _balances[msg.sender] = _totalSupply; emit Transfer(address(0), msg.sender, _totalSupply); } receive() external payable { } function name() external pure override returns (string memory) { return _name; } function symbol() external pure override returns (string memory) { return _symbol; } function decimals() external pure override returns (uint8) { return _decimals; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function getOwner() external view override returns (address) { return owner; } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; } function approve(address spender, uint256 amount) public override returns (bool) { _allowances[msg.sender][spender] = amount; emit Approval(msg.sender, spender, amount); return true; } function approveMax(address spender) external returns (bool) { return approve(spender, uint256(-1)); } function launched() internal view returns (bool) { return launchedAt != 0; } function launch() internal { launchedAt = block.number; } function changeTxLimit(uint256 newLimit) external authorized { _maxTxAmount = newLimit; } function changeWalletLimit(uint256 newLimit) external authorized { _walletMax = newLimit; } function changeRestrictWhales(bool newValue) external authorized { restrictWhales = newValue; } function changeIsFeeExempt(address holder, bool exempt) external authorized { isFeeExempt[holder] = exempt; } function changeIsTxLimitExempt(address holder, bool exempt) external authorized { isTxLimitExempt[holder] = exempt; } function changeFees(uint256 newLiqFee, uint256 newMarketingFee, uint256 newExtraSellFee) external authorized { liquidityFee = newLiqFee; marketingFee = newMarketingFee; extraFeeOnSell = newExtraSellFee; totalFee = liquidityFee.add(marketingFee); totalFeeIfSelling = totalFee.add(extraFeeOnSell); } function changeFeeReceivers(address newLiquidityReceiver, address newMarketingWallet, address newDevWallet) external authorized { autoLiquidityReceiver = newLiquidityReceiver; marketingWallet = newMarketingWallet; devWallet = newDevWallet; } function changeSwapBackSettings(bool enableSwapBack, uint256 newSwapBackLimit, bool swapByLimitOnly) external authorized { swapAndLiquifyEnabled = enableSwapBack; swapThreshold = newSwapBackLimit; swapAndLiquifyByLimitOnly = swapByLimitOnly; } function transfer(address recipient, uint256 amount) external override returns (bool) { return _transferFrom(msg.sender, recipient, amount); } function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) { if(_allowances[sender][msg.sender] != uint256(-1)){ _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { if(inSwapAndLiquify){ return _basicTransfer(sender, recipient, amount); } if(!authorizations[sender] && !authorizations[recipient]){ require(tradingOpen, "Trading not open yet"); } require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded"); if(msg.sender != pair && !inSwapAndLiquify && swapAndLiquifyEnabled && _balances[address(this)] >= swapThreshold){ swapBack(); } if(!launched() && recipient == pair) { require(_balances[sender] > 0); launch(); } //Exchange tokens _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); if(!isTxLimitExempt[recipient] && restrictWhales) { require(_balances[recipient].add(amount) <= _walletMax); } uint256 finalAmount = !isFeeExempt[sender] && !isFeeExempt[recipient] ? takeFee(sender, recipient, amount) : amount; _balances[recipient] = _balances[recipient].add(finalAmount); emit Transfer(sender, recipient, finalAmount); return true; } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) { uint256 feeApplicable = pair == recipient ? totalFeeIfSelling : totalFee; uint256 feeAmount = amount.mul(feeApplicable).div(100); _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function tradingStatus(bool newStatus) public onlyOwner { tradingOpen = newStatus; } function swapBack() internal lockTheSwap { uint256 tokensToLiquify = _balances[address(this)]; uint256 amountToLiquify = tokensToLiquify.mul(liquidityFee).div(totalFee).div(2); uint256 amountToSwap = tokensToLiquify.sub(amountToLiquify); address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountBNB = address(this).balance; uint256 totalBNBFee = totalFee.sub(liquidityFee.div(2)); uint256 amountBNBLiquidity = amountBNB.mul(liquidityFee).div(totalBNBFee).div(2); uint256 amountBNBMarketing = amountBNB.sub(amountBNBLiquidity); uint256 marketingShare = amountBNBMarketing.div(3); uint256 devShare = amountBNBMarketing.sub(marketingShare); (bool tmpSuccess,) = payable(marketingWallet).call{value: marketingShare, gas: 30000}(""); (bool tmpSuccess1,) = payable(devWallet).call{value: devShare, gas: 30000}(""); // only to supress warning msg tmpSuccess = false; tmpSuccess1 = false; if(amountToLiquify > 0){ router.addLiquidityETH{value: amountBNBLiquidity}( address(this), amountToLiquify, 0, 0, autoLiquidityReceiver, block.timestamp ); emit AutoLiquify(amountBNBLiquidity, amountToLiquify); } } event AutoLiquify(uint256 amountBNB, uint256 amountBOG); }
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":"amountBNB","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountBOG","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","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":"_walletMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"authorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"autoLiquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newLiquidityReceiver","type":"address"},{"internalType":"address","name":"newMarketingWallet","type":"address"},{"internalType":"address","name":"newDevWallet","type":"address"}],"name":"changeFeeReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLiqFee","type":"uint256"},{"internalType":"uint256","name":"newMarketingFee","type":"uint256"},{"internalType":"uint256","name":"newExtraSellFee","type":"uint256"}],"name":"changeFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"changeIsTxLimitExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"newValue","type":"bool"}],"name":"changeRestrictWhales","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enableSwapBack","type":"bool"},{"internalType":"uint256","name":"newSwapBackLimit","type":"uint256"},{"internalType":"bool","name":"swapByLimitOnly","type":"bool"}],"name":"changeSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"changeWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"devWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"extraFeeOnSell","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"isAuthorized","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isDividendExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"launchedAt","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"restrictWhales","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyByLimitOnly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapAndLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","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":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFeeIfSelling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"newStatus","type":"bool"}],"name":"tradingStatus","outputs":[],"stateMutability":"nonpayable","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 payable","name":"adr","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"adr","type":"address"}],"name":"unauthorize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
60806040526002805461dead6001600160a01b031991821617909155600380548216905560048054737a250d5630b4cf539739df2c5dacb4c659f2488d9216919091179055662386f26fc10000600581905560068190556007556008805460ff1990811660019081179092556000600e8190556017600f81905560109190915560118190556012556019805462010000921690921762ff000019161763ff000000191690556509184e72a000601a55348015620000bb57600080fd5b50600080546001600160a01b0319908116339081178355825260016020818152604093849020805460ff191690921790915560048054601680549094166001600160a01b039182161793849055845163c45a015560e01b8152945193169363c45a01559381830193929091829003018186803b1580156200013b57600080fd5b505afa15801562000150573d6000803e3d6000fd5b505050506040513d60208110156200016757600080fd5b5051601654604080516315ab88c960e31b815290516001600160a01b039384169363c9c6539693169163ad5c4648916004808301926020929190829003018186803b158015620001b657600080fd5b505afa158015620001cb573d6000803e3d6000fd5b505050506040513d6020811015620001e257600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b0390921660048301523060248301525160448083019260209291908290030181600087803b1580156200023257600080fd5b505af115801562000247573d6000803e3d6000fd5b505050506040513d60208110156200025e57600080fd5b5051601780546001600160a01b039283166001600160a01b0319918216178255306000818152600a60209081526040808320601654881684528252808320600019905533808452600b8352818420805460ff1990811660019081179092558686528386208054821683179055828652600c8552838620805482168317905588548a1686528386208054821683179055975489168552600d845282852080548916821790559084528184208054881682179055938352808320805487168517905560025487168352808320805487168517905560035490961682529490208054909316179091556013805482167317ef5f740522ec2790550cae4312a8c136910a839081179091556014805483168217905560158054909216179055600f54600e546200039692909190620012a26200040f821b17901c565b601181905550620003ba6010546011546200040f60201b620012a21790919060201c565b601255600554336000818152600960209081526040808320859055805194855251929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a362000471565b6000828201838110156200046a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b9392505050565b611e9080620004816000396000f3fe60806040526004361061028c5760003560e01c80637db1342c1161015a578063ca33e64c116100c1578063f0b37c041161007a578063f0b37c0414610926578063f2fde38b14610959578063f887ea401461098c578063fabe6283146109a1578063fe9fbb80146109dc578063ffb54a9914610a0f57610293565b8063ca33e64c14610856578063ca987b0e1461086b578063d920334e14610880578063da00097d146108aa578063dd62ed3e146108bf578063e66b1d1e146108fa57610293565b806398118cb41161011357806398118cb414610770578063a3a2e89e14610785578063a8aa1b31146107c0578063a9059cbb146107d5578063b6a5d7de1461080e578063bf56b3711461084157610293565b80637db1342c146106bf578063807c2d9c146106e9578063893d20e8146106fe5780638b42507f146107135780638ea5220f1461074657806395d89b411461075b57610293565b806334c70889116101fe57806369cf17d4116101b757806369cf17d4146105e65780636b67c4df146105fb57806370a082311461061057806375f0a874146106435780637a319590146106745780637d1db4a5146106aa57610293565b806334c70889146104e95780633f4218e0146105235780634355855a1461055657806344de2e4c146105895780634a74bb021461059e578063571ac8b0146105b357610293565b80631df4ccfc116102505780631df4ccfc146103d957806323b872dd146103ee5780632b112e49146104315780632f54bf6e14610446578063313ce56714610479578063315dca29146104a457610293565b80630445b6671461029857806306fdde03146102bf578063095ea7b3146103495780630d2959801461039657806318160ddd146103c457610293565b3661029357005b600080fd5b3480156102a457600080fd5b506102ad610a24565b60408051918252519081900360200190f35b3480156102cb57600080fd5b506102d4610a2a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561030e5781810151838201526020016102f6565b50505050905090810190601f16801561033b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561035557600080fd5b506103826004803603604081101561036c57600080fd5b506001600160a01b038135169060200135610a4b565b604080519115158252519081900360200190f35b3480156103a257600080fd5b506103c2600480360360208110156103b957600080fd5b50351515610ab2565b005b3480156103d057600080fd5b506102ad610b08565b3480156103e557600080fd5b506102ad610b0e565b3480156103fa57600080fd5b506103826004803603606081101561041157600080fd5b506001600160a01b03813581169160208101359091169060400135610b14565b34801561043d57600080fd5b506102ad610bd6565b34801561045257600080fd5b506103826004803603602081101561046957600080fd5b50356001600160a01b0316610c1f565b34801561048557600080fd5b5061048e610c33565b6040805160ff9092168252519081900360200190f35b3480156104b057600080fd5b506103c2600480360360608110156104c757600080fd5b506001600160a01b038135811691602081013582169160409091013516610c38565b3480156104f557600080fd5b506103c26004803603606081101561050c57600080fd5b508035151590602081013590604001351515610cbf565b34801561052f57600080fd5b506103826004803603602081101561054657600080fd5b50356001600160a01b0316610d3d565b34801561056257600080fd5b506103826004803603602081101561057957600080fd5b50356001600160a01b0316610d52565b34801561059557600080fd5b50610382610d67565b3480156105aa57600080fd5b50610382610d70565b3480156105bf57600080fd5b50610382600480360360208110156105d657600080fd5b50356001600160a01b0316610d7f565b3480156105f257600080fd5b506102ad610d8d565b34801561060757600080fd5b506102ad610d93565b34801561061c57600080fd5b506102ad6004803603602081101561063357600080fd5b50356001600160a01b0316610d99565b34801561064f57600080fd5b50610658610db4565b604080516001600160a01b039092168252519081900360200190f35b34801561068057600080fd5b506103c26004803603606081101561069757600080fd5b5080359060208101359060400135610dc3565b3480156106b657600080fd5b506102ad610e3e565b3480156106cb57600080fd5b506103c2600480360360208110156106e257600080fd5b5035610e44565b3480156106f557600080fd5b506102ad610e91565b34801561070a57600080fd5b50610658610e97565b34801561071f57600080fd5b506103826004803603602081101561073657600080fd5b50356001600160a01b0316610ea6565b34801561075257600080fd5b50610658610ebb565b34801561076757600080fd5b506102d4610eca565b34801561077c57600080fd5b506102ad610ee7565b34801561079157600080fd5b506103c2600480360360408110156107a857600080fd5b506001600160a01b0381351690602001351515610eed565b3480156107cc57600080fd5b50610658610f60565b3480156107e157600080fd5b50610382600480360360408110156107f857600080fd5b506001600160a01b038135169060200135610f6f565b34801561081a57600080fd5b506103c26004803603602081101561083157600080fd5b50356001600160a01b0316610f7c565b34801561084d57600080fd5b506102ad610fe6565b34801561086257600080fd5b50610658610fec565b34801561087757600080fd5b506102ad610ffb565b34801561088c57600080fd5b506103c2600480360360208110156108a357600080fd5b5035611001565b3480156108b657600080fd5b5061038261104e565b3480156108cb57600080fd5b506102ad600480360360408110156108e257600080fd5b506001600160a01b038135811691602001351661105e565b34801561090657600080fd5b506103c26004803603602081101561091d57600080fd5b50351515611089565b34801561093257600080fd5b506103c26004803603602081101561094957600080fd5b50356001600160a01b03166110e4565b34801561096557600080fd5b506103c26004803603602081101561097c57600080fd5b50356001600160a01b0316611148565b34801561099857600080fd5b506106586111f9565b3480156109ad57600080fd5b506103c2600480360360408110156109c457600080fd5b506001600160a01b0381351690602001351515611208565b3480156109e857600080fd5b50610382600480360360208110156109ff57600080fd5b50356001600160a01b031661127b565b348015610a1b57600080fd5b50610382611299565b601a5481565b60408051808201909152600781526622aa241022aa2360c91b602082015290565b336000818152600a602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b610abb33610c1f565b610af5576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6019805460ff1916911515919091179055565b60055490565b60115481565b6001600160a01b0383166000908152600a6020908152604080832033845290915281205460001914610bc1576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600a82528381203382529091529190912054610b9c9184906112fc565b6001600160a01b0385166000908152600a602090815260408083203384529091529020555b610bcc848484611393565b90505b9392505050565b600354600090610c1a90610bf2906001600160a01b0316610d99565b600254610c1490610c0b906001600160a01b0316610d99565b60055490611712565b90611712565b905090565b6000546001600160a01b0390811691161490565b600990565b610c413361127b565b610c80576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601380546001600160a01b039485166001600160a01b031991821617909155601480549385169382169390931790925560158054919093169116179055565b610cc83361127b565b610d07576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b60198054601a9390935590151563010000000263ff00000019931515620100000262ff0000199093169290921792909216179055565b600b6020526000908152604090205460ff1681565b600d6020526000908152604090205460ff1681565b60085460ff1681565b60195462010000900460ff1681565b6000610aac82600019610a4b565b60105481565b600f5481565b6001600160a01b031660009081526009602052604090205490565b6014546001600160a01b031681565b610dcc3361127b565b610e0b576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600e839055600f8290556010819055610e2483836112a2565b6011819055601054610e3691906112a2565b601255505050565b60065481565b610e4d3361127b565b610e8c576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600755565b60075481565b6000546001600160a01b031690565b600c6020526000908152604090205460ff1681565b6015546001600160a01b031681565b60408051808201909152600381526222aa2360e91b602082015290565b600e5481565b610ef63361127b565b610f35576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6017546001600160a01b031681565b6000610bcf338484611393565b610f8533610c1f565b610fbf576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b60185481565b6013546001600160a01b031681565b60125481565b61100a3361127b565b611049576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600655565b6019546301000000900460ff1681565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b6110923361127b565b6110d1576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6008805460ff1916911515919091179055565b6110ed33610c1f565b611127576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160205260409020805460ff19169055565b61115133610c1f565b61118b576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff1916909217909155825191825291517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163929181900390910190a150565b6016546001600160a01b031681565b6112113361127b565b611250576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6001600160a01b031660009081526001602052604090205460ff1690565b60195460ff1681565b600082820183811015610bcf576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000818484111561138b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611350578181015183820152602001611338565b50505050905090810190601f16801561137d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b601954600090610100900460ff16156113b8576113b1848484611754565b9050610bcf565b6001600160a01b03841660009081526001602052604090205460ff161580156113fa57506001600160a01b03831660009081526001602052604090205460ff16155b1561144d5760195460ff1661144d576040805162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015290519081900360640190fd5b6006548211158061147657506001600160a01b0384166000908152600c602052604090205460ff165b6114bb576040805162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015290519081900360640190fd5b6017546001600160a01b031633148015906114de5750601954610100900460ff16155b80156114f2575060195462010000900460ff165b801561150f5750601a543060009081526009602052604090205410155b1561151c5761151c611835565b611524611c71565b15801561153e57506017546001600160a01b038481169116145b1561156d576001600160a01b03841660009081526009602052604090205461156557600080fd5b61156d611c79565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600990915291909120546115bf9184906112fc565b6001600160a01b038086166000908152600960209081526040808320949094559186168152600c909152205460ff161580156115fd575060085460ff165b15611633576007546001600160a01b03841660009081526009602052604090205461162890846112a2565b111561163357600080fd5b6001600160a01b0384166000908152600b602052604081205460ff1615801561167557506001600160a01b0384166000908152600b602052604090205460ff16155b61167f578261168a565b61168a858585611c7f565b6001600160a01b0385166000908152600960205260409020549091506116b090826112a2565b6001600160a01b0380861660008181526009602090815260409182902094909455805185815290519193928916927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3506001949350505050565b6000610bcf83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112fc565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526009909152918220546117a59184906112fc565b6001600160a01b0380861660009081526009602052604080822093909355908516815220546117d490836112a2565b6001600160a01b0380851660008181526009602090815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b6019805461ff00191661010017905530600090815260096020526040812054601154600e5491929161187891600291611872919082908790611d3e565b90611d97565b905060006118868383611712565b60408051600280825260608083018452939450909160208301908036833701905050905030816000815181106118b857fe5b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561190c57600080fd5b505afa158015611920573d6000803e3d6000fd5b505050506040513d602081101561193657600080fd5b505181518290600190811061194757fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601660009054906101000a90046001600160a01b03166001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015611a015781810151838201526020016119e9565b505050509050019650505050505050600060405180830381600087803b158015611a2a57600080fd5b505af1158015611a3e573d6000803e3d6000fd5b5050600e5447925060009150611a6290611a59906002611d97565b60115490611712565b90506000611a84600261187284611872600e5488611d3e90919063ffffffff16565b90506000611a928483611712565b90506000611aa1826003611d97565b90506000611aaf8383611712565b6014546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611b06576040519150601f19603f3d011682016040523d82523d6000602084013e611b0b565b606091505b50506015546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611b64576040519150601f19603f3d011682016040523d82523d6000602084013e611b69565b606091505b5060009350839250508b159050611c58576016546013546040805163f305d71960e01b8152306004820152602481018f905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991899160c48082019260609290919082900301818588803b158015611bef57600080fd5b505af1158015611c03573d6000803e3d6000fd5b50505050506040513d6060811015611c1a57600080fd5b505060408051878152602081018d905281517f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506929181900390910190a15b50506019805461ff001916905550505050505050505050565b601854151590565b43601855565b60175460009081906001600160a01b03858116911614611ca157601154611ca5565b6012545b90506000611cb860646118728685611d3e565b30600090815260096020526040902054909150611cd590826112a2565b30600081815260096020908152604091829020939093558051848152905191926001600160a01b038a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3611d348482611712565b9695505050505050565b600082611d4d57506000610aac565b82820282848281611d5a57fe5b0414610bcf5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e3a6021913960400191505060405180910390fd5b6000610bcf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060008183611e235760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611350578181015183820152602001611338565b506000838581611e2f57fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122030283beafd0e4e23948382ba107b69c5f10ec8837f888de9b4baf27dd2c7525764736f6c63430007040033
Deployed Bytecode
0x60806040526004361061028c5760003560e01c80637db1342c1161015a578063ca33e64c116100c1578063f0b37c041161007a578063f0b37c0414610926578063f2fde38b14610959578063f887ea401461098c578063fabe6283146109a1578063fe9fbb80146109dc578063ffb54a9914610a0f57610293565b8063ca33e64c14610856578063ca987b0e1461086b578063d920334e14610880578063da00097d146108aa578063dd62ed3e146108bf578063e66b1d1e146108fa57610293565b806398118cb41161011357806398118cb414610770578063a3a2e89e14610785578063a8aa1b31146107c0578063a9059cbb146107d5578063b6a5d7de1461080e578063bf56b3711461084157610293565b80637db1342c146106bf578063807c2d9c146106e9578063893d20e8146106fe5780638b42507f146107135780638ea5220f1461074657806395d89b411461075b57610293565b806334c70889116101fe57806369cf17d4116101b757806369cf17d4146105e65780636b67c4df146105fb57806370a082311461061057806375f0a874146106435780637a319590146106745780637d1db4a5146106aa57610293565b806334c70889146104e95780633f4218e0146105235780634355855a1461055657806344de2e4c146105895780634a74bb021461059e578063571ac8b0146105b357610293565b80631df4ccfc116102505780631df4ccfc146103d957806323b872dd146103ee5780632b112e49146104315780632f54bf6e14610446578063313ce56714610479578063315dca29146104a457610293565b80630445b6671461029857806306fdde03146102bf578063095ea7b3146103495780630d2959801461039657806318160ddd146103c457610293565b3661029357005b600080fd5b3480156102a457600080fd5b506102ad610a24565b60408051918252519081900360200190f35b3480156102cb57600080fd5b506102d4610a2a565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561030e5781810151838201526020016102f6565b50505050905090810190601f16801561033b5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561035557600080fd5b506103826004803603604081101561036c57600080fd5b506001600160a01b038135169060200135610a4b565b604080519115158252519081900360200190f35b3480156103a257600080fd5b506103c2600480360360208110156103b957600080fd5b50351515610ab2565b005b3480156103d057600080fd5b506102ad610b08565b3480156103e557600080fd5b506102ad610b0e565b3480156103fa57600080fd5b506103826004803603606081101561041157600080fd5b506001600160a01b03813581169160208101359091169060400135610b14565b34801561043d57600080fd5b506102ad610bd6565b34801561045257600080fd5b506103826004803603602081101561046957600080fd5b50356001600160a01b0316610c1f565b34801561048557600080fd5b5061048e610c33565b6040805160ff9092168252519081900360200190f35b3480156104b057600080fd5b506103c2600480360360608110156104c757600080fd5b506001600160a01b038135811691602081013582169160409091013516610c38565b3480156104f557600080fd5b506103c26004803603606081101561050c57600080fd5b508035151590602081013590604001351515610cbf565b34801561052f57600080fd5b506103826004803603602081101561054657600080fd5b50356001600160a01b0316610d3d565b34801561056257600080fd5b506103826004803603602081101561057957600080fd5b50356001600160a01b0316610d52565b34801561059557600080fd5b50610382610d67565b3480156105aa57600080fd5b50610382610d70565b3480156105bf57600080fd5b50610382600480360360208110156105d657600080fd5b50356001600160a01b0316610d7f565b3480156105f257600080fd5b506102ad610d8d565b34801561060757600080fd5b506102ad610d93565b34801561061c57600080fd5b506102ad6004803603602081101561063357600080fd5b50356001600160a01b0316610d99565b34801561064f57600080fd5b50610658610db4565b604080516001600160a01b039092168252519081900360200190f35b34801561068057600080fd5b506103c26004803603606081101561069757600080fd5b5080359060208101359060400135610dc3565b3480156106b657600080fd5b506102ad610e3e565b3480156106cb57600080fd5b506103c2600480360360208110156106e257600080fd5b5035610e44565b3480156106f557600080fd5b506102ad610e91565b34801561070a57600080fd5b50610658610e97565b34801561071f57600080fd5b506103826004803603602081101561073657600080fd5b50356001600160a01b0316610ea6565b34801561075257600080fd5b50610658610ebb565b34801561076757600080fd5b506102d4610eca565b34801561077c57600080fd5b506102ad610ee7565b34801561079157600080fd5b506103c2600480360360408110156107a857600080fd5b506001600160a01b0381351690602001351515610eed565b3480156107cc57600080fd5b50610658610f60565b3480156107e157600080fd5b50610382600480360360408110156107f857600080fd5b506001600160a01b038135169060200135610f6f565b34801561081a57600080fd5b506103c26004803603602081101561083157600080fd5b50356001600160a01b0316610f7c565b34801561084d57600080fd5b506102ad610fe6565b34801561086257600080fd5b50610658610fec565b34801561087757600080fd5b506102ad610ffb565b34801561088c57600080fd5b506103c2600480360360208110156108a357600080fd5b5035611001565b3480156108b657600080fd5b5061038261104e565b3480156108cb57600080fd5b506102ad600480360360408110156108e257600080fd5b506001600160a01b038135811691602001351661105e565b34801561090657600080fd5b506103c26004803603602081101561091d57600080fd5b50351515611089565b34801561093257600080fd5b506103c26004803603602081101561094957600080fd5b50356001600160a01b03166110e4565b34801561096557600080fd5b506103c26004803603602081101561097c57600080fd5b50356001600160a01b0316611148565b34801561099857600080fd5b506106586111f9565b3480156109ad57600080fd5b506103c2600480360360408110156109c457600080fd5b506001600160a01b0381351690602001351515611208565b3480156109e857600080fd5b50610382600480360360208110156109ff57600080fd5b50356001600160a01b031661127b565b348015610a1b57600080fd5b50610382611299565b601a5481565b60408051808201909152600781526622aa241022aa2360c91b602082015290565b336000818152600a602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b610abb33610c1f565b610af5576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6019805460ff1916911515919091179055565b60055490565b60115481565b6001600160a01b0383166000908152600a6020908152604080832033845290915281205460001914610bc1576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600a82528381203382529091529190912054610b9c9184906112fc565b6001600160a01b0385166000908152600a602090815260408083203384529091529020555b610bcc848484611393565b90505b9392505050565b600354600090610c1a90610bf2906001600160a01b0316610d99565b600254610c1490610c0b906001600160a01b0316610d99565b60055490611712565b90611712565b905090565b6000546001600160a01b0390811691161490565b600990565b610c413361127b565b610c80576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601380546001600160a01b039485166001600160a01b031991821617909155601480549385169382169390931790925560158054919093169116179055565b610cc83361127b565b610d07576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b60198054601a9390935590151563010000000263ff00000019931515620100000262ff0000199093169290921792909216179055565b600b6020526000908152604090205460ff1681565b600d6020526000908152604090205460ff1681565b60085460ff1681565b60195462010000900460ff1681565b6000610aac82600019610a4b565b60105481565b600f5481565b6001600160a01b031660009081526009602052604090205490565b6014546001600160a01b031681565b610dcc3361127b565b610e0b576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600e839055600f8290556010819055610e2483836112a2565b6011819055601054610e3691906112a2565b601255505050565b60065481565b610e4d3361127b565b610e8c576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600755565b60075481565b6000546001600160a01b031690565b600c6020526000908152604090205460ff1681565b6015546001600160a01b031681565b60408051808201909152600381526222aa2360e91b602082015290565b600e5481565b610ef63361127b565b610f35576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6017546001600160a01b031681565b6000610bcf338484611393565b610f8533610c1f565b610fbf576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b60185481565b6013546001600160a01b031681565b60125481565b61100a3361127b565b611049576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b600655565b6019546301000000900460ff1681565b6001600160a01b039182166000908152600a6020908152604080832093909416825291909152205490565b6110923361127b565b6110d1576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6008805460ff1916911515919091179055565b6110ed33610c1f565b611127576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160205260409020805460ff19169055565b61115133610c1f565b61118b576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff1916909217909155825191825291517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163929181900390910190a150565b6016546001600160a01b031681565b6112113361127b565b611250576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600c60205260409020805460ff1916911515919091179055565b6001600160a01b031660009081526001602052604090205460ff1690565b60195460ff1681565b600082820183811015610bcf576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000818484111561138b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611350578181015183820152602001611338565b50505050905090810190601f16801561137d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b601954600090610100900460ff16156113b8576113b1848484611754565b9050610bcf565b6001600160a01b03841660009081526001602052604090205460ff161580156113fa57506001600160a01b03831660009081526001602052604090205460ff16155b1561144d5760195460ff1661144d576040805162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015290519081900360640190fd5b6006548211158061147657506001600160a01b0384166000908152600c602052604090205460ff165b6114bb576040805162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015290519081900360640190fd5b6017546001600160a01b031633148015906114de5750601954610100900460ff16155b80156114f2575060195462010000900460ff165b801561150f5750601a543060009081526009602052604090205410155b1561151c5761151c611835565b611524611c71565b15801561153e57506017546001600160a01b038481169116145b1561156d576001600160a01b03841660009081526009602052604090205461156557600080fd5b61156d611c79565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600990915291909120546115bf9184906112fc565b6001600160a01b038086166000908152600960209081526040808320949094559186168152600c909152205460ff161580156115fd575060085460ff165b15611633576007546001600160a01b03841660009081526009602052604090205461162890846112a2565b111561163357600080fd5b6001600160a01b0384166000908152600b602052604081205460ff1615801561167557506001600160a01b0384166000908152600b602052604090205460ff16155b61167f578261168a565b61168a858585611c7f565b6001600160a01b0385166000908152600960205260409020549091506116b090826112a2565b6001600160a01b0380861660008181526009602090815260409182902094909455805185815290519193928916927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a3506001949350505050565b6000610bcf83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506112fc565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03861660009081526009909152918220546117a59184906112fc565b6001600160a01b0380861660009081526009602052604080822093909355908516815220546117d490836112a2565b6001600160a01b0380851660008181526009602090815260409182902094909455805186815290519193928816927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a35060019392505050565b6019805461ff00191661010017905530600090815260096020526040812054601154600e5491929161187891600291611872919082908790611d3e565b90611d97565b905060006118868383611712565b60408051600280825260608083018452939450909160208301908036833701905050905030816000815181106118b857fe5b6001600160a01b03928316602091820292909201810191909152601654604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b15801561190c57600080fd5b505afa158015611920573d6000803e3d6000fd5b505050506040513d602081101561193657600080fd5b505181518290600190811061194757fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601660009054906101000a90046001600160a01b03166001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b83811015611a015781810151838201526020016119e9565b505050509050019650505050505050600060405180830381600087803b158015611a2a57600080fd5b505af1158015611a3e573d6000803e3d6000fd5b5050600e5447925060009150611a6290611a59906002611d97565b60115490611712565b90506000611a84600261187284611872600e5488611d3e90919063ffffffff16565b90506000611a928483611712565b90506000611aa1826003611d97565b90506000611aaf8383611712565b6014546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611b06576040519150601f19603f3d011682016040523d82523d6000602084013e611b0b565b606091505b50506015546040519192506000916001600160a01b039091169061753090859084818181858888f193505050503d8060008114611b64576040519150601f19603f3d011682016040523d82523d6000602084013e611b69565b606091505b5060009350839250508b159050611c58576016546013546040805163f305d71960e01b8152306004820152602481018f905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991899160c48082019260609290919082900301818588803b158015611bef57600080fd5b505af1158015611c03573d6000803e3d6000fd5b50505050506040513d6060811015611c1a57600080fd5b505060408051878152602081018d905281517f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506929181900390910190a15b50506019805461ff001916905550505050505050505050565b601854151590565b43601855565b60175460009081906001600160a01b03858116911614611ca157601154611ca5565b6012545b90506000611cb860646118728685611d3e565b30600090815260096020526040902054909150611cd590826112a2565b30600081815260096020908152604091829020939093558051848152905191926001600160a01b038a16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a3611d348482611712565b9695505050505050565b600082611d4d57506000610aac565b82820282848281611d5a57fe5b0414610bcf5760405162461bcd60e51b8152600401808060200182810382526021815260200180611e3a6021913960400191505060405180910390fd5b6000610bcf83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f00000000000081525060008183611e235760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611350578181015183820152602001611338565b506000838581611e2f57fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a264697066735822122030283beafd0e4e23948382ba107b69c5f10ec8837f888de9b4baf27dd2c7525764736f6c63430007040033
Deployed Bytecode Sourcemap
5239:10271:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6744:60;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;8087:80;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8931:216;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8931:216:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;13613:98;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;13613:98:0;;;;:::i;:::-;;8349:88;;;;;;;;;;;;;:::i;6287:28::-;;;;;;;;;;;;;:::i;11175:372::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11175:372:0;;;;;;;;;;;;;;;;;:::i;8529:142::-;;;;;;;;;;;;;:::i;4609:103::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4609:103:0;-1:-1:-1;;;;;4609:103:0;;:::i;8263:80::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;10438:273;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;10438:273:0;;;;;;;;;;;;;;;;;;;:::i;10719:276::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10719:276:0;;;;;;;;;;;;;;;;:::i;6004:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6004:44:0;-1:-1:-1;;;;;6004:44:0;;:::i;6110:49::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6110:49:0;-1:-1:-1;;;;;6110:49:0;;:::i;5847:33::-;;;;;;;;;;;;;:::i;6643:40::-;;;;;;;;;;;;;:::i;9155:116::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9155:116:0;-1:-1:-1;;;;;9155:116:0;;:::i;6245:33::-;;;;;;;;;;;;;:::i;6206:32::-;;;;;;;;;;;;;:::i;8679:105::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;8679:105:0;-1:-1:-1;;;;;8679:105:0;;:::i;6411:30::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;6411:30:0;;;;;;;;;;;;;;10073:357;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10073:357:0;;;;;;;;;;;;:::i;5709:60::-;;;;;;;;;;;;;:::i;9567:106::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9567:106:0;;:::i;5776:58::-;;;;;;;;;;;;;:::i;8443:78::-;;;;;;;;;;;;;:::i;6055:48::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;6055:48:0;-1:-1:-1;;;;;6055:48:0;;:::i;6448:24::-;;;;;;;;;;;;;:::i;8173:84::-;;;;;;;;;;;;;:::i;6168:31::-;;;;;;;;;;;;;:::i;9801:123::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9801:123:0;;;;;;;;;;:::i;6512:19::-;;;;;;;;;;;;;:::i;11011:156::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;11011:156:0;;;;;;;;:::i;4282:94::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4282:94:0;-1:-1:-1;;;;;4282:94:0;;:::i;6540:25::-;;;;;;;;;;;;;:::i;6368:36::-;;;;;;;;;;;;;:::i;6322:37::-;;;;;;;;;;;;;:::i;9456:103::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9456:103:0;;:::i;6690:45::-;;;;;;;;;;;;;:::i;8790:133::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8790:133:0;;;;;;;;;;:::i;9681:108::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9681:108:0;;;;:::i;4452:97::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4452:97:0;-1:-1:-1;;;;;4452:97:0;;:::i;5009:173::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;5009:173:0;-1:-1:-1;;;;;5009:173:0;;:::i;6481:24::-;;;;;;;;;;;;;:::i;9932:131::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9932:131:0;;;;;;;;;;:::i;4783:107::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4783:107:0;-1:-1:-1;;;;;4783:107:0;;:::i;6572:30::-;;;;;;;;;;;;;:::i;6744:60::-;;;;:::o;8087:80::-;8159:5;;;;;;;;;;;;-1:-1:-1;;;8159:5:0;;;;8087:80;:::o;8931:216::-;9035:10;9006:4;9023:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;9023:32:0;;;;;;;;;;;:41;;;9080:37;;;;;;;9006:4;;9023:32;;9035:10;;9080:37;;;;;;;;-1:-1:-1;9135:4:0;8931:216;;;;;:::o;13613:98::-;3998:19;4006:10;3998:7;:19::i;:::-;3990:38;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;;;;13680:11:::1;:23:::0;;-1:-1:-1;;13680:23:0::1;::::0;::::1;;::::0;;;::::1;::::0;;13613:98::o;8349:88::-;8422:12;;8349:88;:::o;6287:28::-;;;;:::o;11175:372::-;-1:-1:-1;;;;;11305:19:0;;11275:4;11305:19;;;:11;:19;;;;;;;;11325:10;11305:31;;;;;;;;-1:-1:-1;;11305:46:0;11302:180;;11401:69;;;;;;;;;;;-1:-1:-1;;;11401:69:0;;;;;;;;-1:-1:-1;;;;;11401:19:0;;-1:-1:-1;11401:19:0;;;:11;:19;;;;;11421:10;11401:31;;;;;;;;;;:69;;11437:6;;11401:35;:69::i;:::-;-1:-1:-1;;;;;11367:19:0;;;;;;:11;:19;;;;;;;;11387:10;11367:31;;;;;;;:103;11302:180;11499:40;11513:6;11521:9;11532:6;11499:13;:40::i;:::-;11492:47;;11175:372;;;;;;:::o;8529:142::-;8657:4;;8582:7;;8609:54;;8647:15;;-1:-1:-1;;;;;8657:4:0;8647:9;:15::i;:::-;8636:4;;8609:33;;8626:15;;-1:-1:-1;;;;;8636:4:0;8626:9;:15::i;:::-;8609:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;8602:61;;8529:142;:::o;4609:103::-;4664:4;4699:5;-1:-1:-1;;;;;4699:5:0;;;4688:16;;;;4609:103::o;8263:80::-;5424:1;8263:80;:::o;10438:273::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;10577:21:::1;:44:::0;;-1:-1:-1;;;;;10577:44:0;;::::1;-1:-1:-1::0;;;;;;10577:44:0;;::::1;;::::0;;;10632:15:::1;:36:::0;;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;10679:9:::1;:24:::0;;;;;::::1;::::0;::::1;;::::0;;10438:273::o;10719:276::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;10851:21:::1;:39:::0;;10901:13:::1;:32:::0;;;;10944:43;::::1;;::::0;::::1;-1:-1:-1::0;;10851:39:0;::::1;;::::0;::::1;-1:-1:-1::0;;10851:39:0;;::::1;::::0;;;::::1;10944:43:::0;;;::::1;;::::0;;10719:276::o;6004:44::-;;;;;;;;;;;;;;;:::o;6110:49::-;;;;;;;;;;;;;;;:::o;5847:33::-;;;;;;:::o;6643:40::-;;;;;;;;;:::o;9155:116::-;9210:4;9234:29;9242:7;-1:-1:-1;;9234:7:0;:29::i;6245:33::-;;;;:::o;6206:32::-;;;;:::o;8679:105::-;-1:-1:-1;;;;;8763:18:0;8745:7;8763:18;;;:9;:18;;;;;;;8679:105::o;6411:30::-;;;-1:-1:-1;;;;;6411:30:0;;:::o;10073:357::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;10193:12:::1;:24:::0;;;10228:12:::1;:30:::0;;;10269:14:::1;:32:::0;;;10333:30:::1;10208:9:::0;10243:15;10333:16:::1;:30::i;:::-;10322:8;:41:::0;;;10407:14:::1;::::0;10394:28:::1;::::0;10322:41;10394:12:::1;:28::i;:::-;10374:17;:48:::0;-1:-1:-1;;;10073:357:0:o;5709:60::-;;;;:::o;9567:106::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;9643:10:::1;:22:::0;9567:106::o;5776:58::-;;;;:::o;8443:78::-;8495:7;8513:5;-1:-1:-1;;;;;8513:5:0;8443:78;:::o;6055:48::-;;;;;;;;;;;;;;;:::o;6448:24::-;;;-1:-1:-1;;;;;6448:24:0;;:::o;8173:84::-;8247:7;;;;;;;;;;;;-1:-1:-1;;;8247:7:0;;;;8173:84;:::o;6168:31::-;;;;:::o;9801:123::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;9888:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;9888:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9801:123::o;6512:19::-;;;-1:-1:-1;;;;;6512:19:0;;:::o;11011:156::-;11091:4;11115:44;11129:10;11141:9;11152:6;11115:13;:44::i;4282:94::-;3998:19;4006:10;3998:7;:19::i;:::-;3990:38;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;4342:19:0::1;;::::0;;;4364:4:::1;4342:19;::::0;;;;;;;:26;;-1:-1:-1;;4342:26:0::1;::::0;;::::1;::::0;;4282:94::o;6540:25::-;;;;:::o;6368:36::-;;;-1:-1:-1;;;;;6368:36:0;;:::o;6322:37::-;;;;:::o;9456:103::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;9528:12:::1;:23:::0;9456:103::o;6690:45::-;;;;;;;;;:::o;8790:133::-;-1:-1:-1;;;;;8892:19:0;;;8874:7;8892:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;8790:133::o;9681:108::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;9756:14:::1;:25:::0;;-1:-1:-1;;9756:25:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9681:108::o;4452:97::-;3998:19;4006:10;3998:7;:19::i;:::-;3990:38;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;4514:19:0::1;4536:5;4514:19:::0;;;:14:::1;:19;::::0;;;;:27;;-1:-1:-1;;4514:27:0::1;::::0;;4452:97::o;5009:173::-;3998:19;4006:10;3998:7;:19::i;:::-;3990:38;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;-1:-1:-1;;;3990:38:0;;;;;;;;;;;;;;;5085:5:::1;:11:::0;;-1:-1:-1;;;;;;5085:11:0::1;-1:-1:-1::0;;;;;5085:11:0;::::1;::::0;;::::1;::::0;;5107:19;;;-1:-1:-1;5107:19:0::1;::::0;;;;;;;;:26;;-1:-1:-1;;5107:26:0::1;::::0;;::::1;::::0;;;5149:25;;;;;;;::::1;::::0;;;;;;;;;::::1;5009:173:::0;:::o;6481:24::-;;;-1:-1:-1;;;;;6481:24:0;;:::o;9932:131::-;4167:24;4180:10;4167:12;:24::i;:::-;4159:48;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;-1:-1:-1;;;4159:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;10023:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;10023:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9932:131::o;4783:107::-;-1:-1:-1;;;;;4863:19:0;4839:4;4863:19;;;:14;:19;;;;;;;;;4783:107::o;6572:30::-;;;;;;:::o;159:179::-;217:7;249:5;;;273:6;;;;265:46;;;;;-1:-1:-1;;;265:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;490:190;576:7;612:12;604:6;;;;596:29;;;;-1:-1:-1;;;596:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;648:5:0;;;490:190::o;11555:1261::-;11677:16;;11647:4;;11677:16;;;;;11674:73;;;11703:41;11718:6;11726:9;11737:6;11703:14;:41::i;:::-;11696:48;;;;11674:73;-1:-1:-1;;;;;11763:22:0;;;;;;:14;:22;;;;;;;;11762:23;:53;;;;-1:-1:-1;;;;;;11790:25:0;;;;;;:14;:25;;;;;;;;11789:26;11762:53;11759:128;;;11839:11;;;;11831:44;;;;;-1:-1:-1;;;11831:44:0;;;;;;;;;;;;-1:-1:-1;;;11831:44:0;;;;;;;;;;;;;;;11917:12;;11907:6;:22;;:49;;;-1:-1:-1;;;;;;11933:23:0;;;;;;:15;:23;;;;;;;;11907:49;11899:79;;;;;-1:-1:-1;;;11899:79:0;;;;;;;;;;;;-1:-1:-1;;;11899:79:0;;;;;;;;;;;;;;;12008:4;;-1:-1:-1;;;;;12008:4:0;11994:10;:18;;;;:39;;-1:-1:-1;12017:16:0;;;;;;;12016:17;11994:39;:64;;;;-1:-1:-1;12037:21:0;;;;;;;11994:64;:109;;;;-1:-1:-1;12090:13:0;;12080:4;12062:24;;;;:9;:24;;;;;;:41;;11994:109;11991:128;;;12106:10;:8;:10::i;:::-;12135;:8;:10::i;:::-;12134:11;:32;;;;-1:-1:-1;12162:4:0;;-1:-1:-1;;;;;12149:17:0;;;12162:4;;12149:17;12134:32;12131:117;;;-1:-1:-1;;;;;12191:17:0;;12211:1;12191:17;;;:9;:17;;;;;;12183:30;;;;;;12228:8;:6;:8::i;:::-;12307:53;;;;;;;;;;;-1:-1:-1;;;12307:53:0;;;;;;;;-1:-1:-1;;;;;12307:17:0;;-1:-1:-1;12307:17:0;;;:9;:17;;;;;;;;:53;;12329:6;;12307:21;:53::i;:::-;-1:-1:-1;;;;;12287:17:0;;;;;;;:9;:17;;;;;;;;:73;;;;12385:26;;;;;:15;:26;;;;;;;12384:27;:45;;;;-1:-1:-1;12415:14:0;;;;12384:45;12381:141;;;12499:10;;-1:-1:-1;;;;;12463:20:0;;;;;;:9;:20;;;;;;:32;;12488:6;12463:24;:32::i;:::-;:46;;12455:55;;;;;;-1:-1:-1;;;;;12557:19:0;;12534;12557;;;:11;:19;;;;;;;;12556:20;:47;;;;-1:-1:-1;;;;;;12581:22:0;;;;;;:11;:22;;;;;;;;12580:23;12556:47;:93;;12643:6;12556:93;;;12606:34;12614:6;12622:9;12633:6;12606:7;:34::i;:::-;-1:-1:-1;;;;;12683:20:0;;;;;;:9;:20;;;;;;12534:115;;-1:-1:-1;12683:37:0;;12534:115;12683:24;:37::i;:::-;-1:-1:-1;;;;;12660:20:0;;;;;;;:9;:20;;;;;;;;;:60;;;;12746:40;;;;;;;12660:20;;12746:40;;;;;;;;;;;;;-1:-1:-1;12804:4:0;;11555:1261;-1:-1:-1;;;;11555:1261:0:o;346:136::-;404:7;431:43;435:1;438;431:43;;;;;;;;;;;;;;;;;:3;:43::i;12828:330::-;12958:53;;;;;;;;;;;-1:-1:-1;;;12958:53:0;;;;;;;;-1:-1:-1;;;;;12958:17:0;;12921:4;12958:17;;;:9;:17;;;;;;;:53;;12980:6;;12958:21;:53::i;:::-;-1:-1:-1;;;;;12938:17:0;;;;;;;:9;:17;;;;;;:73;;;;13045:20;;;;;;;:32;;13070:6;13045:24;:32::i;:::-;-1:-1:-1;;;;;13022:20:0;;;;;;;:9;:20;;;;;;;;;:55;;;;13093:35;;;;;;;13022:20;;13093:35;;;;;;;;;;;;;-1:-1:-1;13146:4:0;12828:330;;;;;:::o;13719:1722::-;6849:16;:23;;-1:-1:-1;;6849:23:0;;;;;13825:4:::1;6849:23:::0;13807:24;;;:9:::1;:24;::::0;;;;;13906:8:::1;::::0;13888:12:::1;::::0;13807:24;;6849:23;13868:54:::1;::::0;13920:1:::1;::::0;13868:47:::1;::::0;13906:8;13868:47;;13807:24;;13868:19:::1;:33::i;:::-;:37:::0;::::1;:47::i;:54::-;13842:80:::0;-1:-1:-1;13933:20:0::1;13956:36;:15:::0;13842:80;13956:19:::1;:36::i;:::-;14029:16;::::0;;14043:1:::1;14029:16:::0;;;14005:21:::1;14029:16:::0;;::::1;::::0;;13933:59;;-1:-1:-1;14029:16:0;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;14029:16:0::1;14005:40;;14074:4;14056;14061:1;14056:7;;;;;;;;-1:-1:-1::0;;;;;14056:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;14100:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;14100:13:0;;;;:6;;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;14056:7;;14100:13;;;;;:6;:13;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;14100:13:0;14090:7;;:4;;14095:1:::1;::::0;14090:7;::::1;;;;;;;;;;:23;-1:-1:-1::0;;;;;14090:23:0::1;;;-1:-1:-1::0;;;;;14090:23:0::1;;;::::0;::::1;14126:6;;;;;;;;;-1:-1:-1::0;;;;;14126:6:0::1;-1:-1:-1::0;;;;;14126:57:0::1;;14198:12;14225:1;14241:4;14268;14288:15;14126:188;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;14126:188:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;14416:12:0::1;::::0;14347:21:::1;::::0;-1:-1:-1;14327:17:0::1;::::0;-1:-1:-1;14403:33:0::1;::::0;14416:19:::1;::::0;14433:1:::1;14416:16;:19::i;:::-;14403:8;::::0;;:12:::1;:33::i;:::-;14381:55;;14457:26;14486:51;14535:1;14486:44;14518:11;14486:27;14500:12;;14486:9;:13;;:27;;;;:::i;:51::-;14457:80:::0;-1:-1:-1;14548:26:0::1;14577:33;:9:::0;14457:80;14577:13:::1;:33::i;:::-;14548:62:::0;-1:-1:-1;14633:22:0::1;14658:25;14548:62:::0;14681:1:::1;14658:22;:25::i;:::-;14633:50:::0;-1:-1:-1;14694:16:0::1;14713:38;:18:::0;14633:50;14713:22:::1;:38::i;:::-;14801:15;::::0;14793:68:::1;::::0;14694:57;;-1:-1:-1;14773:15:0::1;::::0;-1:-1:-1;;;;;14801:15:0;;::::1;::::0;14851:5:::1;::::0;14830:14;;14773:15;14793:68;14773:15;14793:68;14830:14;14801:15;14851:5;14793:68:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;14902:9:0::1;::::0;14894:56:::1;::::0;14772:89;;-1:-1:-1;14873:16:0::1;::::0;-1:-1:-1;;;;;14902:9:0;;::::1;::::0;14940:5:::1;::::0;14925:8;;14873:16;14894:56;14873:16;14894:56;14925:8;14902:9;14940:5;14894:56:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;15024:5:0::1;::::0;-1:-1:-1;15024:5:0;;-1:-1:-1;;15075:19:0;;;-1:-1:-1;15072:362:0::1;;15110:6;::::0;15284:21:::1;::::0;15110:244:::1;::::0;;-1:-1:-1;;;15110:244:0;;15186:4:::1;15110:244;::::0;::::1;::::0;;;;;;;:6:::1;:244:::0;;;;;;;;;;-1:-1:-1;;;;;15284:21:0;;::::1;15110:244:::0;;;;15324:15:::1;15110:244:::0;;;;;;:6;;;::::1;::::0;:22:::1;::::0;15140:18;;15110:244;;;;;::::1;::::0;;;;;;;;;15140:18;15110:6;:244;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;15110:244:0;15374:48;;;;;15110:244:::1;15374:48:::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;15072:362;-1:-1:-1::0;;6895:16:0;:24;;-1:-1:-1;;6895:24:0;;;-1:-1:-1;;;;;;;;;;13719:1722:0:o;9279:90::-;9346:10;;:15;;9279:90;:::o;9377:71::-;9428:12;9415:10;:25;9377:71::o;13166:439::-;13306:4;;13252:7;;;;-1:-1:-1;;;;;13306:17:0;;;:4;;:17;:48;;13346:8;;13306:48;;;13326:17;;13306:48;13282:72;-1:-1:-1;13365:17:0;13385:34;13415:3;13385:25;:6;13282:72;13385:10;:25::i;:34::-;13477:4;13459:24;;;;:9;:24;;;;;;13365:54;;-1:-1:-1;13459:39:0;;13365:54;13459:28;:39::i;:::-;13450:4;13432:24;;;;:9;:24;;;;;;;;;:66;;;;13514:42;;;;;;;13450:4;;-1:-1:-1;;;;;13514:42:0;;;;;;;;;;;;;13576:21;:6;13587:9;13576:10;:21::i;:::-;13569:28;13166:439;-1:-1:-1;;;;;;13166:439:0:o;688:224::-;746:7;770:6;766:25;;-1:-1:-1;787:1:0;780:8;;766:25;813:5;;;817:1;813;:5;:1;837:5;;;;;:10;829:56;;;;-1:-1:-1;;;829:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;920:132;978:7;1005:39;1009:1;1012;1005:39;;;;;;;;;;;;;;;;;1146:7;1181:12;1174:5;1166:28;;;;-1:-1:-1;;;1166:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1205:9;1221:1;1217;:5;;;;;;;1060:189;-1:-1:-1;;;;;1060:189:0:o
Swarm Source
ipfs://30283beafd0e4e23948382ba107b69c5f10ec8837f888de9b4baf27dd2c75257
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.