Latest 25 from a total of 2,091 transactions
Transaction Hash |
Method
|
Block
|
From
|
To
|
|||||
---|---|---|---|---|---|---|---|---|---|
Approve | 15729126 | 13 hrs ago | IN | 0 CRO | 0.62695565 | ||||
Approve | 15606363 | 8 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 15588942 | 9 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 15563397 | 11 days ago | IN | 0 CRO | 0.23436458 | ||||
Approve | 15537820 | 13 days ago | IN | 0 CRO | 0.2345018 | ||||
Approve | 15537782 | 13 days ago | IN | 0 CRO | 0.2331686 | ||||
Approve | 15536689 | 13 days ago | IN | 0 CRO | 0.23357516 | ||||
Approve | 15465563 | 17 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 15410967 | 21 days ago | IN | 0 CRO | 0.2345018 | ||||
Approve | 15255158 | 31 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 15228497 | 33 days ago | IN | 0 CRO | 0.2331686 | ||||
Approve | 15228453 | 33 days ago | IN | 0 CRO | 0.2345018 | ||||
Approve | 15142632 | 39 days ago | IN | 0 CRO | 0.2345018 | ||||
Approve | 15024827 | 46 days ago | IN | 0 CRO | 0.2345018 | ||||
Approve | 15021675 | 47 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 15021529 | 47 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 15021485 | 47 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 15021482 | 47 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 14951787 | 51 days ago | IN | 0 CRO | 0.23150886 | ||||
Approve | 14913661 | 54 days ago | IN | 0 CRO | 0.23443214 | ||||
Approve | 14803686 | 61 days ago | IN | 0 CRO | 0.233714 | ||||
Approve | 14801704 | 61 days ago | IN | 0 CRO | 0.2345018 | ||||
Transfer | 14783119 | 62 days ago | IN | 0 CRO | 1.01 | ||||
Transfer | 14783092 | 62 days ago | IN | 0 CRO | 1.01 | ||||
Approve | 14782577 | 62 days ago | IN | 0 CRO | 0.233714 |
Latest 25 internal transactions (View All)
Parent Transaction Hash | Block | From | To | |||
---|---|---|---|---|---|---|
15665756 | 4 days ago | 0.52127675 CRO | ||||
15665756 | 4 days ago | 241.3193269 CRO | ||||
15665756 | 4 days ago | 160.87955127 CRO | ||||
15665756 | 4 days ago | 482.63865381 CRO | ||||
15665756 | 4 days ago | 884.83753199 CRO | ||||
15427325 | 20 days ago | 21.69399872 CRO | ||||
15427325 | 20 days ago | 14.46266581 CRO | ||||
15427325 | 20 days ago | 43.38799745 CRO | ||||
15427325 | 20 days ago | 79.544662 CRO | ||||
15299320 | 28 days ago | 39.30206821 CRO | ||||
15299320 | 28 days ago | 26.20137881 CRO | ||||
15299320 | 28 days ago | 78.60413643 CRO | ||||
15299320 | 28 days ago | 144.10758347 CRO | ||||
15190646 | 35 days ago | 14.19281171 CRO | ||||
15190646 | 35 days ago | 9.46187447 CRO | ||||
15190646 | 35 days ago | 28.38562343 CRO | ||||
15190646 | 35 days ago | 52.04030962 CRO | ||||
14899987 | 55 days ago | 12.26031717 CRO | ||||
14899987 | 55 days ago | 8.17354478 CRO | ||||
14899987 | 55 days ago | 24.52063434 CRO | ||||
14899987 | 55 days ago | 44.9544963 CRO | ||||
14785419 | 62 days ago | 16.65516994 CRO | ||||
14785419 | 62 days ago | 11.10344663 CRO | ||||
14785419 | 62 days ago | 33.31033989 CRO | ||||
14785419 | 62 days ago | 61.06895647 CRO |
Loading...
Loading
Contract Name:
GDRTOKEN
Compiler Version
v0.7.6+commit.7338295f
Contract Source Code (Solidity)
/** *Submitted for verification at cronoscan.com on 2022-06-28 */ //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; } interface IDividendDistributor { function setDistributionCriteria(uint256 _minPeriod, uint256 _minDistribution) external; function setShare(address shareholder, uint256 amount) external; function deposit() external payable; function process(uint256 gas) external; } contract DividendDistributor is IDividendDistributor { using SafeMath for uint256; address _token; struct Share { uint256 amount; uint256 totalExcluded; uint256 totalRealised; } IDEXRouter router; address[] shareholders; mapping (address => uint256) shareholderIndexes; mapping (address => uint256) shareholderClaims; mapping (address => Share) public shares; uint256 public totalShares; uint256 public totalDividends; uint256 public totalDistributed; uint256 public dividendsPerShare; uint256 public dividendsPerShareAccuracyFactor = 10 ** 36; uint256 public minPeriod = 1 hours; uint256 public minDistribution = 2500000000 * (10**18); uint256 currentIndex; bool initialized; modifier initialization() { require(!initialized); _; initialized = true; } modifier onlyToken() { require(msg.sender == _token); _; } constructor (IDEXRouter _router) { router = _router; _token = msg.sender; } function setDistributionCriteria(uint256 newMinPeriod, uint256 newMinDistribution) external override onlyToken { minPeriod = newMinPeriod; minDistribution = newMinDistribution; } function setShare(address shareholder, uint256 amount) external override onlyToken { if(shares[shareholder].amount > 0){ distributeDividend(shareholder); } if(amount > 0 && shares[shareholder].amount == 0){ addShareholder(shareholder); }else if(amount == 0 && shares[shareholder].amount > 0){ removeShareholder(shareholder); } totalShares = totalShares.sub(shares[shareholder].amount).add(amount); shares[shareholder].amount = amount; shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount); } function deposit() external payable override onlyToken { totalDividends = totalDividends.add(msg.value); dividendsPerShare = dividendsPerShare.add(dividendsPerShareAccuracyFactor.mul(msg.value).div(totalShares)); } function process(uint256 gas) external override onlyToken { uint256 shareholderCount = shareholders.length; if(shareholderCount == 0) { return; } uint256 iterations = 0; uint256 gasUsed = 0; uint256 gasLeft = gasleft(); while(gasUsed < gas && iterations < shareholderCount) { if(currentIndex >= shareholderCount){ currentIndex = 0; } if(shouldDistribute(shareholders[currentIndex])){ distributeDividend(shareholders[currentIndex]); } gasUsed = gasUsed.add(gasLeft.sub(gasleft())); gasLeft = gasleft(); currentIndex++; iterations++; } } function shouldDistribute(address shareholder) internal view returns (bool) { return shareholderClaims[shareholder] + minPeriod < block.timestamp && getUnpaidEarnings(shareholder) > minDistribution; } function distributeDividend(address shareholder) internal { if(shares[shareholder].amount == 0){ return; } uint256 amount = getUnpaidEarnings(shareholder); if(amount > 0){ totalDistributed = totalDistributed.add(amount); (bool success, ) = payable(shareholder).call{value: amount, gas: 30000}(""); success = false; shareholderClaims[shareholder] = block.timestamp; shares[shareholder].totalRealised = shares[shareholder].totalRealised.add(amount); shares[shareholder].totalExcluded = getCumulativeDividends(shares[shareholder].amount); } } function claimDividend() external { require(shouldDistribute(msg.sender), "Too soon. Need to wait!"); distributeDividend(msg.sender); } function getUnpaidEarnings(address shareholder) public view returns (uint256) { if(shares[shareholder].amount == 0){ return 0; } uint256 shareholderTotalDividends = getCumulativeDividends(shares[shareholder].amount); uint256 shareholderTotalExcluded = shares[shareholder].totalExcluded; if(shareholderTotalDividends <= shareholderTotalExcluded){ return 0; } return shareholderTotalDividends.sub(shareholderTotalExcluded); } function getCumulativeDividends(uint256 share) internal view returns (uint256) { return share.mul(dividendsPerShare).div(dividendsPerShareAccuracyFactor); } function addShareholder(address shareholder) internal { shareholderIndexes[shareholder] = shareholders.length; shareholders.push(shareholder); } function removeShareholder(address shareholder) internal { shareholders[shareholderIndexes[shareholder]] = shareholders[shareholders.length-1]; shareholderIndexes[shareholders[shareholders.length-1]] = shareholderIndexes[shareholder]; shareholders.pop(); } } 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 GDRTOKEN is IBEP20, Auth { using SafeMath for uint256; string constant _name = "GDRTOKEN"; string constant _symbol = "GDRT"; uint8 constant _decimals = 18; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; address routerAddress = 0xeC0A7a0C2439E8Cb67b992b12ecd020Ea943c7Be; //CroDex router uint256 _totalSupply = 1000000000000000 * (10 ** _decimals); bool public tradingIsEnabled = false; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) public isFeeExempt; mapping (address => bool) public isDividendExempt; mapping (address => bool) private _reducedFeesFor; mapping (address => bool) public isVested; uint256 public CroRewardsFee = 30; uint256 public developmentFee = 10; uint256 public liquidityFee = 30; uint256 public totalFees = CroRewardsFee + developmentFee + liquidityFee; uint256 public feeDenominator = 1000; uint256 public reducedFeePercentage = 0; address public devWallet = 0xc0f774b82dC60dD096E5414fd3797D5e7cD4cD36; IDEXRouter public router; address public pair; uint256 public launchedAt; uint256 public blocksSinceStart; uint256 public lockdays = 180 days; DividendDistributor public dividendDistributor; uint256 distributorGas = 500000; // max wallet tools mapping(address => bool) private _isExcludedFromMaxWallet; bool private enableMaxWallet = true; uint256 private maxWalletRate = 20; bool inSwapAndLiquify; bool public swapAndLiquifyEnabled = true; bool public swapAndLiquifyByLimitOnly = false; uint256 public swapThreshold = _totalSupply / 1000; 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); dividendDistributor = new DividendDistributor(router); isFeeExempt[msg.sender] = true; isFeeExempt[address(this)] = true; isDividendExempt[pair] = true; isDividendExempt[msg.sender] = true; isDividendExempt[address(this)] = true; isDividendExempt[DEAD] = true; isDividendExempt[ZERO] = true; // exclude from max wallet limit _isExcludedFromMaxWallet[msg.sender] = true; _isExcludedFromMaxWallet[address(0)] = true; _isExcludedFromMaxWallet[address(this)] = true; _isExcludedFromMaxWallet[DEAD] = true; _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 enableTrading() external onlyOwner { require(!tradingIsEnabled, "Trading is already enabled"); tradingIsEnabled = true; } function setNewLockDays(uint256 newLockDays) external authorized { lockdays = newLockDays * 1 days; } function setIsFeeExempt(address holder, bool exempt) external authorized { isFeeExempt[holder] = exempt; } function setIsDividendExempt(address holder, bool exempt) external authorized { require(holder != address(this) && holder != pair); isDividendExempt[holder] = exempt; if(exempt){ dividendDistributor.setShare(holder, 0); }else{ dividendDistributor.setShare(holder, _balances[holder]); } } function setFeeRates(uint256 _CroRewardsFee, uint256 _liquidityFee, uint256 _developmentFee, uint256 _feeDenominator) public onlyOwner { CroRewardsFee = _CroRewardsFee; liquidityFee = _liquidityFee; developmentFee = _developmentFee; totalFees = _CroRewardsFee + _liquidityFee + _developmentFee; feeDenominator = _feeDenominator; require(totalFees <= _feeDenominator / 4, "max 25%"); } function sendAirDropsAndIncludeAutomatically(address[] calldata accounts, uint256[] calldata amount) external onlyOwner { for(uint256 i = 0; i < accounts.length; i++) { _balances[msg.sender] -=amount[i] * 10 ** _decimals; _balances[accounts[i]] += amount[i] * 10 ** _decimals; emit Transfer(msg.sender, accounts[i], amount[i] * 10 ** _decimals); dividendDistributor.setShare(accounts[i], amount[i] * 10 ** _decimals); isVested[accounts[i]] = true; } } function setDevWallet(address payable wallet) external onlyOwner{ devWallet = wallet; } function reduceFeesFor(address account, bool reduce) public onlyOwner { require(_reducedFeesFor[account] != reduce, "Account already has reduced fees"); _reducedFeesFor[account] = reduce; } function reduceFeesForMultipleAccounts(address[] calldata accounts, bool reduce) public onlyOwner { for(uint256 i = 0; i < accounts.length; i++) { _reducedFeesFor[accounts[i]] = reduce; } } function setReducedFeePercentage(uint256 percentage) public onlyOwner{ require(percentage < 100); reducedFeePercentage = percentage; } function isReducedFeesFor(address account) public view returns(bool) { return _reducedFeesFor[account]; } function isExcludedFromMaxWallet(address account) public view returns(bool) { return _isExcludedFromMaxWallet[account]; } function maxWalletAmount() public view returns (uint256) { return getCirculatingSupply().mul(maxWalletRate).div(1000); } function setmaxWalletAmountRateDenominator1000(uint256 _val) public onlyOwner { require(_val > 9, "Max wallet percentage cannot be lower than 1%"); maxWalletRate = _val; } function setExcludeFromMaxWallet(address account, bool exclude) public onlyOwner { _isExcludedFromMaxWallet[account] = exclude; } function setenableMaxWallet(bool _val) public onlyOwner { enableMaxWallet = _val; } function changeSwapBackSettings(bool enableSwapBack, uint256 newSwapBackLimit) external authorized { swapAndLiquifyEnabled = enableSwapBack; swapThreshold = newSwapBackLimit; } function changeDistributionCriteria(uint256 newinPeriod, uint256 newMinDistribution) external authorized { dividendDistributor.setDistributionCriteria(newinPeriod, newMinDistribution); } function changeDistributorSettings(uint256 gas) external authorized { require(gas < 750000); distributorGas = gas; } 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) { require(tradingIsEnabled || (isFeeExempt[sender] || isFeeExempt[recipient]), "Trading is disabled"); if(inSwapAndLiquify){ return _basicTransfer(sender, recipient, amount); } if (enableMaxWallet && maxWalletAmount() > 0) { if ( _isExcludedFromMaxWallet[sender] == false && _isExcludedFromMaxWallet[recipient] == false && recipient != pair ) { uint balance = balanceOf(recipient); require(balance + amount <= maxWalletAmount(), "MaxWallet: Transfer amount exceeds the maxWalletAmount"); } } blocksSinceStart = block.number - launchedAt; if(isVested[sender] && blocksSinceStart < lockdays){ revert("Vested wallets cannot send for 180 days"); } if(msg.sender != pair && !inSwapAndLiquify && swapAndLiquifyEnabled && _balances[address(this)] >= swapThreshold){ swapBack(); } bool takeFee = !inSwapAndLiquify; //Exchange tokens _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); if(isFeeExempt[sender] || isFeeExempt[recipient]) { takeFee = false; } // no fee for wallet to wallet transfers if(sender != pair && recipient != pair) { takeFee = false; } uint256 finalAmount = amount; if(takeFee) { finalAmount = takeFees(sender, recipient, amount); } _balances[recipient] = _balances[recipient].add(finalAmount); // Dividend tracker if(!isDividendExempt[sender]) { try dividendDistributor.setShare(sender, _balances[sender]) {} catch {} } if(!isDividendExempt[recipient]) { try dividendDistributor.setShare(recipient, _balances[recipient]) {} catch {} } try dividendDistributor.process(distributorGas) {} catch {} 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 takeFees(address sender, address recipient, uint256 amount) internal returns (uint256) { if (recipient == pair) { totalFees; } uint256 feeAmount = amount.mul(totalFees).div(feeDenominator); if (_reducedFeesFor[sender] || _reducedFeesFor[recipient]) { feeAmount -= feeAmount.div(100).mul(reducedFeePercentage); } if (recipient == pair) { totalFees; } _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); return amount.sub(feeAmount); } function swapBack() internal lockTheSwap { uint256 tokensToLiquify = _balances[address(this)]; uint256 amountToLiquify = tokensToLiquify.mul(liquidityFee).div(totalFees).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 amountCRO = address(this).balance; uint256 totalCroFee = totalFees.sub(liquidityFee.div(2)); uint256 amountCroLiquidity = amountCRO.mul(liquidityFee).div(totalCroFee).div(2); uint256 amountCroReflection = amountCRO.mul(CroRewardsFee).div(totalCroFee); uint256 amountCroTeam = amountCRO.sub(amountCroLiquidity).sub(amountCroReflection); try dividendDistributor.deposit{value: amountCroReflection}() {} catch {} if(developmentFee > 0){ payable(devWallet).transfer(amountCroTeam); } if(amountToLiquify > 0){ router.addLiquidityETH{value: amountCroLiquidity}( address(this), amountToLiquify, 0, 0, DEAD, block.timestamp ); emit AutoLiquify(amountCroLiquidity, 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":"CroRewardsFee","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":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"blocksSinceStart","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newinPeriod","type":"uint256"},{"internalType":"uint256","name":"newMinDistribution","type":"uint256"}],"name":"changeDistributionCriteria","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"gas","type":"uint256"}],"name":"changeDistributorSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"enableSwapBack","type":"bool"},{"internalType":"uint256","name":"newSwapBackLimit","type":"uint256"}],"name":"changeSwapBackSettings","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":"developmentFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"dividendDistributor","outputs":[{"internalType":"contract DividendDistributor","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"feeDenominator","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":"account","type":"address"}],"name":"isExcludedFromMaxWallet","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":"account","type":"address"}],"name":"isReducedFeesFor","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isVested","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":"lockdays","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"reduce","type":"bool"}],"name":"reduceFeesFor","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"reduce","type":"bool"}],"name":"reduceFeesForMultipleAccounts","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"reducedFeePercentage","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256[]","name":"amount","type":"uint256[]"}],"name":"sendAirDropsAndIncludeAutomatically","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"wallet","type":"address"}],"name":"setDevWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"exclude","type":"bool"}],"name":"setExcludeFromMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_CroRewardsFee","type":"uint256"},{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_developmentFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setFeeRates","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsDividendExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLockDays","type":"uint256"}],"name":"setNewLockDays","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percentage","type":"uint256"}],"name":"setReducedFeePercentage","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_val","type":"bool"}],"name":"setenableMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_val","type":"uint256"}],"name":"setmaxWalletAmountRateDenominator1000","outputs":[],"stateMutability":"nonpayable","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":"totalFees","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":"tradingIsEnabled","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 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
6080604052600280546001600160a01b031990811661dead17909155600380548216905560048054821673ec0a7a0c2439e8cb67b992b12ecd020ea943c7be1790556d314dc6448d9338c15b0a000000006005556006805460ff19908116909155601e600d819055600a600e55600f81905560466010556103e860115560006012556013805490931673c0f774b82dc60dd096e5414fd3797d5e7cd4cd361790925562ed4e006018556207a120601a55601c805490911660011790556014601d55805462ff00001961ff0019909116610100171690556c0c9f2c9cd04674edea40000000601f55348015620000f357600080fd5b50600080546001600160a01b0319908116339081178355825260016020818152604093849020805460ff191690921790915560048054601480549094166001600160a01b039182161793849055845163c45a015560e01b8152945193169363c45a01559381830193929091829003018186803b1580156200017357600080fd5b505afa15801562000188573d6000803e3d6000fd5b505050506040513d60208110156200019f57600080fd5b5051601454604080516315ab88c960e31b815290516001600160a01b039384169363c9c6539693169163ad5c4648916004808301926020929190829003018186803b158015620001ee57600080fd5b505afa15801562000203573d6000803e3d6000fd5b505050506040513d60208110156200021a57600080fd5b5051604080516001600160e01b031960e085901b1681526001600160a01b0390921660048301523060248301525160448083019260209291908290030181600087803b1580156200026a57600080fd5b505af11580156200027f573d6000803e3d6000fd5b505050506040513d60208110156200029657600080fd5b5051601580546001600160a01b0319166001600160a01b0392831617905530600090815260086020908152604080832060148054861685529252918290206000199055549051911690620002ea9062000463565b6001600160a01b03909116815260405190819003602001906000f08015801562000318573d6000803e3d6000fd5b50601980546001600160a01b0319166001600160a01b03928316179055336000818152600960209081526040808320805460ff19908116600190811790925530808652838620805483168417905560155488168652600a855283862080548316841790558686528386208054831684179055808652838620805483168417905560028054891687528487208054841685179055600354891687528487208054841685179055878752601b865284872080548416851790557f584f46c60af19681376031579adb04a2416e54ee5505351c2a8435e3766026ea805484168517905590865283862080548316841790555490961684528184208054909616179094556005548383526007825284832081905584519081529351929391927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9281900390910190a362000471565b610c65806200304a83390190565b612bc980620004816000396000f3fe60806040526004361061036f5760003560e01c8063760a2e8a116101c6578063af43396c116100f7578063dd62ed3e11610095578063f5e0b2711161006f578063f5e0b27114610cf2578063f708a64f14610d07578063f887ea4014610d42578063fe9fbb8014610d5757610376565b8063dd62ed3e14610c51578063f0b37c0414610c8c578063f2fde38b14610cbf57610376565b8063bad3ea6a116100d1578063bad3ea6a14610bfd578063bf56b37114610c12578063da00097d14610c27578063da391b7a14610c3c57610376565b8063af43396c14610b74578063b2061c5b14610ba0578063b6a5d7de14610bca57610376565b806398118cb411610164578063a9059cbb1161013e578063a9059cbb14610ac3578063a9f7864b14610afc578063aa4bde2814610b2c578063aa7cc1f114610b4157610376565b806398118cb414610a84578063a5f3d00314610a99578063a8aa1b3114610aae57610376565b80638a8c523c116101a05780638a8c523c14610a0a5780638ea5220f14610a1f578063929f136014610a3457806395d89b4114610a6f57610376565b8063760a2e8a1461097c57806382972f92146109af578063893d20e8146109d957610376565b8063313ce567116102a0578063479f66d81161023e57806364d42da31161021857806364d42da3146108a0578063658d4b7f146108db5780636dd3d39f1461091657806370a082311461094957610376565b8063479f66d81461082e5780634a74bb0214610858578063571ac8b01461086d57610376565b80633dab52691161027a5780633dab5269146107175780633f4218e0146107495780634355855a1461077c57806346a19c6d146107af57610376565b8063313ce5671461060857806336c41d671461063357806339234e391461070257610376565b80631b0f53271161030d57806327c4ca6d116102e757806327c4ca6d1461055a5780632b112e49146105845780632f54bf6e1461059957806330d2361e146105cc57610376565b80631b0f5327146104cd5780631f53ac02146104e257806323b872dd1461051757610376565b806309c58fcd1161034957806309c58fcd1461047957806313114a9d1461048e578063180b0d7e146104a357806318160ddd146104b857610376565b80630445b6671461037b57806306fdde03146103a2578063095ea7b31461042c57610376565b3661037657005b600080fd5b34801561038757600080fd5b50610390610d8a565b60408051918252519081900360200190f35b3480156103ae57600080fd5b506103b7610d90565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103f15781810151838201526020016103d9565b50505050905090810190601f16801561041e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043857600080fd5b506104656004803603604081101561044f57600080fd5b506001600160a01b038135169060200135610db2565b604080519115158252519081900360200190f35b34801561048557600080fd5b50610465610e19565b34801561049a57600080fd5b50610390610e22565b3480156104af57600080fd5b50610390610e28565b3480156104c457600080fd5b50610390610e2e565b3480156104d957600080fd5b50610390610e34565b3480156104ee57600080fd5b506105156004803603602081101561050557600080fd5b50356001600160a01b0316610e3a565b005b34801561052357600080fd5b506104656004803603606081101561053a57600080fd5b506001600160a01b03813581169160208101359091169060400135610e9f565b34801561056657600080fd5b506105156004803603602081101561057d57600080fd5b5035610f61565b34801561059057600080fd5b50610390610fe8565b3480156105a557600080fd5b50610465600480360360208110156105bc57600080fd5b50356001600160a01b0316611031565b3480156105d857600080fd5b50610515600480360360808110156105ef57600080fd5b5080359060208101359060408101359060600135611045565b34801561061457600080fd5b5061061d6110ee565b6040805160ff9092168252519081900360200190f35b34801561063f57600080fd5b506105156004803603604081101561065657600080fd5b81019060208101813564010000000081111561067157600080fd5b82018360208201111561068357600080fd5b803590602001918460208302840111640100000000831117156106a557600080fd5b9193909290916020810190356401000000008111156106c357600080fd5b8201836020820111156106d557600080fd5b803590602001918460208302840111640100000000831117156106f757600080fd5b5090925090506110f3565b34801561070e57600080fd5b5061039061133c565b34801561072357600080fd5b506105156004803603604081101561073a57600080fd5b50803515159060200135611342565b34801561075557600080fd5b506104656004803603602081101561076c57600080fd5b50356001600160a01b03166113a8565b34801561078857600080fd5b506104656004803603602081101561079f57600080fd5b50356001600160a01b03166113bd565b3480156107bb57600080fd5b50610515600480360360408110156107d257600080fd5b8101906020810181356401000000008111156107ed57600080fd5b8201836020820111156107ff57600080fd5b8035906020019184602083028401116401000000008311171561082157600080fd5b91935091503515156113d2565b34801561083a57600080fd5b506105156004803603602081101561085157600080fd5b503561146a565b34801561086457600080fd5b506104656114c6565b34801561087957600080fd5b506104656004803603602081101561089057600080fd5b50356001600160a01b03166114d4565b3480156108ac57600080fd5b50610515600480360360408110156108c357600080fd5b506001600160a01b03813516906020013515156114e2565b3480156108e757600080fd5b50610515600480360360408110156108fe57600080fd5b506001600160a01b03813516906020013515156115c4565b34801561092257600080fd5b506104656004803603602081101561093957600080fd5b50356001600160a01b0316611637565b34801561095557600080fd5b506103906004803603602081101561096c57600080fd5b50356001600160a01b0316611655565b34801561098857600080fd5b506104656004803603602081101561099f57600080fd5b50356001600160a01b0316611670565b3480156109bb57600080fd5b50610515600480360360208110156109d257600080fd5b5035611685565b3480156109e557600080fd5b506109ee6116da565b604080516001600160a01b039092168252519081900360200190f35b348015610a1657600080fd5b506105156116e9565b348015610a2b57600080fd5b506109ee611793565b348015610a4057600080fd5b5061051560048036036040811015610a5757600080fd5b506001600160a01b03813516906020013515156117a2565b348015610a7b57600080fd5b506103b7611810565b348015610a9057600080fd5b5061039061182e565b348015610aa557600080fd5b50610390611834565b348015610aba57600080fd5b506109ee61183a565b348015610acf57600080fd5b5061046560048036036040811015610ae657600080fd5b506001600160a01b038135169060200135611849565b348015610b0857600080fd5b5061051560048036036040811015610b1f57600080fd5b5080359060200135611856565b348015610b3857600080fd5b5061039061190e565b348015610b4d57600080fd5b5061046560048036036020811015610b6457600080fd5b50356001600160a01b0316611930565b348015610b8057600080fd5b5061051560048036036020811015610b9757600080fd5b5035151561194e565b348015610bac57600080fd5b5061051560048036036020811015610bc357600080fd5b50356119a4565b348015610bd657600080fd5b5061051560048036036020811015610bed57600080fd5b50356001600160a01b03166119f6565b348015610c0957600080fd5b506109ee611a60565b348015610c1e57600080fd5b50610390611a6f565b348015610c3357600080fd5b50610465611a75565b348015610c4857600080fd5b50610390611a84565b348015610c5d57600080fd5b5061039060048036036040811015610c7457600080fd5b506001600160a01b0381358116916020013516611a8a565b348015610c9857600080fd5b5061051560048036036020811015610caf57600080fd5b50356001600160a01b0316611ab5565b348015610ccb57600080fd5b5061051560048036036020811015610ce257600080fd5b50356001600160a01b0316611b19565b348015610cfe57600080fd5b50610390611bca565b348015610d1357600080fd5b5061051560048036036040811015610d2a57600080fd5b506001600160a01b0381351690602001351515611bd0565b348015610d4e57600080fd5b506109ee611d47565b348015610d6357600080fd5b5061046560048036036020811015610d7a57600080fd5b50356001600160a01b0316611d56565b601f5481565b60408051808201909152600881526723a2292a27a5a2a760c11b602082015290565b3360008181526008602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b60065460ff1681565b60105481565b60115481565b60055490565b600d5481565b610e4333611031565b610e7d576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601380546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610f4c576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610f27918490611d74565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610f57848484611e0b565b90505b9392505050565b610f6a33611031565b610fa4576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60098111610fe35760405162461bcd60e51b815260040180806020018281038252602d815260200180612ac9602d913960400191505060405180910390fd5b601d55565b60035460009061102c90611004906001600160a01b0316611655565b6002546110269061101d906001600160a01b0316611655565b60055490612359565b90612359565b905090565b6000546001600160a01b0390811691161490565b61104e33611031565b611088576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600d849055600f839055600e829055828401820160105560118190556004810460105411156110e8576040805162461bcd60e51b81526020600482015260076024820152666d61782032352560c81b604482015290519081900360640190fd5b50505050565b601290565b6110fc33611031565b611136576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60005b8381101561133557670de0b6b3a764000083838381811061115657fe5b336000908152600760209081526040909120805492909102939093013593909302909203905550670de0b6b3a764000083838381811061119257fe5b9050602002013502600760008787858181106111aa57fe5b602090810292909201356001600160a01b031683525081019190915260400160002080549190910190558484828181106111e057fe5b905060200201356001600160a01b03166001600160a01b0316336001600160a01b0316600080516020612b17833981519152601260ff16600a0a86868681811061122657fe5b90506020020135026040518082815260200191505060405180910390a36019546001600160a01b03166314b6ca9686868481811061126057fe5b905060200201356001600160a01b0316601260ff16600a0a86868681811061128457fe5b90506020020135026040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156112d257600080fd5b505af11580156112e6573d6000803e3d6000fd5b505050506001600c60008787858181106112fc57fe5b602090810292909201356001600160a01b0316835250810191909152604001600020805460ff1916911515919091179055600101611139565b5050505050565b60185481565b61134b33611d56565b61138a576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601e80549215156101000261ff001990931692909217909155601f55565b60096020526000908152604090205460ff1681565b600a6020526000908152604090205460ff1681565b6113db33611031565b611415576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60005b828110156110e85781600b600086868581811061143157fe5b602090810292909201356001600160a01b0316835250810191909152604001600020805460ff1916911515919091179055600101611418565b61147333611d56565b6114b2576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b620b71b081106114c157600080fd5b601a55565b601e54610100900460ff1681565b6000610e1382600019610db2565b6114eb33611031565b611525576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b0382166000908152600b602052604090205460ff1615158115151415611599576040805162461bcd60e51b815260206004820181905260248201527f4163636f756e7420616c72656164792068617320726564756365642066656573604482015290519081900360640190fd5b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6115cd33611d56565b61160c576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6001600160a01b03166000908152601b602052604090205460ff1690565b6001600160a01b031660009081526007602052604090205490565b600c6020526000908152604090205460ff1681565b61168e33611031565b6116c8576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b606481106116d557600080fd5b601255565b6000546001600160a01b031690565b6116f233611031565b61172c576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60065460ff1615611784576040805162461bcd60e51b815260206004820152601a60248201527f54726164696e6720697320616c726561647920656e61626c6564000000000000604482015290519081900360640190fd5b6006805460ff19166001179055565b6013546001600160a01b031681565b6117ab33611031565b6117e5576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03919091166000908152601b60205260409020805460ff1916911515919091179055565b60408051808201909152600481526311d1149560e21b602082015290565b600f5481565b600e5481565b6015546001600160a01b031681565b6000610f5a338484611e0b565b61185f33611d56565b61189e576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601954604080516316a4744b60e11b8152600481018590526024810184905290516001600160a01b0390921691632d48e8969160448082019260009290919082900301818387803b1580156118f257600080fd5b505af1158015611906573d6000803e3d6000fd5b505050505050565b600061102c6103e861192a601d54611924610fe8565b9061239b565b906123f4565b6001600160a01b03166000908152600b602052604090205460ff1690565b61195733611031565b611991576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601c805460ff1916911515919091179055565b6119ad33611d56565b6119ec576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6201518002601855565b6119ff33611031565b611a39576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6019546001600160a01b031681565b60165481565b601e5462010000900460ff1681565b60125481565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b611abe33611031565b611af8576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160205260409020805460ff19169055565b611b2233611031565b611b5c576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff1916909217909155825191825291517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163929181900390910190a150565b60175481565b611bd933611d56565b611c18576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b0382163014801590611c3f57506015546001600160a01b03838116911614155b611c4857600080fd5b6001600160a01b0382166000908152600a60205260409020805460ff19168215801591909117909155611ce55760195460408051630a5b654b60e11b81526001600160a01b03858116600483015260006024830181905292519316926314b6ca969260448084019391929182900301818387803b158015611cc857600080fd5b505af1158015611cdc573d6000803e3d6000fd5b50505050611d43565b6019546001600160a01b03838116600081815260076020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b1580156118f257600080fd5b5050565b6014546001600160a01b031681565b6001600160a01b031660009081526001602052604090205460ff1690565b60008184841115611e035760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611dc8578181015183820152602001611db0565b50505050905090810190601f168015611df55780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60065460009060ff1680611e5957506001600160a01b03841660009081526009602052604090205460ff1680611e5957506001600160a01b03831660009081526009602052604090205460ff165b611ea0576040805162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81a5cc8191a5cd8589b1959606a1b604482015290519081900360640190fd5b601e5460ff1615611ebd57611eb6848484612436565b9050610f5a565b601c5460ff168015611ed657506000611ed461190e565b115b15611f93576001600160a01b0384166000908152601b602052604090205460ff16158015611f1d57506001600160a01b0383166000908152601b602052604090205460ff16155b8015611f3757506015546001600160a01b03848116911614155b15611f93576000611f4784611655565b9050611f5161190e565b8382011115611f915760405162461bcd60e51b8152600401808060200182810382526036815260200180612b376036913960400191505060405180910390fd5b505b60165443036017556001600160a01b0384166000908152600c602052604090205460ff168015611fc65750601854601754105b156120025760405162461bcd60e51b8152600401808060200182810382526027815260200180612b6d6027913960400191505060405180910390fd5b6015546001600160a01b031633148015906120205750601e5460ff16155b80156120335750601e54610100900460ff165b80156120505750601f543060009081526007602052604090205410155b1561205d5761205d612505565b601e546040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03881660009081526007909152919091205460ff90921615916120b9918590611d74565b6001600160a01b03861660009081526007602090815260408083209390935560099052205460ff168061210457506001600160a01b03841660009081526009602052604090205460ff165b1561210d575060005b6015546001600160a01b0386811691161480159061213957506015546001600160a01b03858116911614155b15612142575060005b8281156121575761215486868661291f565b90505b6001600160a01b03851660009081526007602052604090205461217a9082612a09565b6001600160a01b038087166000908152600760209081526040808320949094559189168152600a909152205460ff1661221e576019546001600160a01b03878116600081815260076020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b15801561220b57600080fd5b505af192505050801561221c575060015b505b6001600160a01b0385166000908152600a602052604090205460ff166122af576019546001600160a01b03868116600081815260076020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b15801561229c57600080fd5b505af19250505080156122ad575060015b505b601954601a54604080516001624d3b8760e01b031981526004810192909252516001600160a01b039092169163ffb2c4799160248082019260009290919082900301818387803b15801561230257600080fd5b505af1925050508015612313575060015b50846001600160a01b0316866001600160a01b0316600080516020612b17833981519152836040518082815260200191505060405180910390a350600195945050505050565b6000610f5a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d74565b6000826123aa57506000610e13565b828202828482816123b757fe5b0414610f5a5760405162461bcd60e51b8152600401808060200182810382526021815260200180612af66021913960400191505060405180910390fd5b6000610f5a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612a63565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054612487918490611d74565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546124b69083612a09565b6001600160a01b038085166000818152600760209081526040918290209490945580518681529051919392881692600080516020612b1783398151915292918290030190a35060019392505050565b601e805460ff1916600117905530600090815260076020526040812054601054600f549192916125409160029161192a91908290879061239b565b9050600061254e8383612359565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061258257fe5b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156125d657600080fd5b505afa1580156125ea573d6000803e3d6000fd5b505050506040513d602081101561260057600080fd5b505181518290600190811061261157fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601460009054906101000a90046001600160a01b03166001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156126cb5781810151838201526020016126b3565b505050509050019650505050505050600060405180830381600087803b1580156126f457600080fd5b505af1158015612708573d6000803e3d6000fd5b5050600f544792506000915061272c906127239060026123f4565b60105490612359565b9050600061274e600261192a8461192a600f548861239b90919063ffffffff16565b9050600061276b8361192a600d548761239b90919063ffffffff16565b9050600061277d826110268786612359565b9050601960009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b1580156127cf57600080fd5b505af1935050505080156127e1575060015b50600e5415612826576013546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015612824573d6000803e3d6000fd5b505b871561290a576014546002546040805163f305d71960e01b8152306004820152602481018c905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991869160c48082019260609290919082900301818588803b1580156128a157600080fd5b505af11580156128b5573d6000803e3d6000fd5b50505050506040513d60608110156128cc57600080fd5b505060408051848152602081018a905281517f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506929181900390910190a15b5050601e805460ff1916905550505050505050565b60008061293d60115461192a6010548661239b90919063ffffffff16565b6001600160a01b0386166000908152600b602052604090205490915060ff168061297f57506001600160a01b0384166000908152600b602052604090205460ff165b1561299957601254612996906119248360646123f4565b90035b306000908152600760205260409020546129b39082612a09565b30600081815260076020908152604091829020939093558051848152905191926001600160a01b03891692600080516020612b178339815191529281900390910190a3612a008382612359565b95945050505050565b600082820183811015610f5a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183612ab25760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611dc8578181015183820152602001611db0565b506000838581612abe57fe5b049594505050505056fe4d61782077616c6c65742070657263656e746167652063616e6e6f74206265206c6f776572207468616e203125536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef4d617857616c6c65743a205472616e7366657220616d6f756e74206578636565647320746865206d617857616c6c6574416d6f756e745665737465642077616c6c6574732063616e6e6f742073656e6420666f72203138302064617973a2646970667358221220ff09978fbc7bc37818a8857349057711a233964e1ac795fa9141ccdc9aa9afa364736f6c6343000706003360806040526ec097ce7bc90715b34b9f1000000000600a55610e10600b556b0813f3978f89409844000000600c5534801561003957600080fd5b50604051610c65380380610c658339818101604052602081101561005c57600080fd5b5051600180546001600160a01b039092166001600160a01b03199283161790556000805490911633179055610bcf806100966000396000f3fe6080604052600436106100dd5760003560e01c8063ce7c2ac21161007f578063efca2eed11610059578063efca2eed14610254578063f0fc6bca14610269578063ffb2c4791461027e578063ffd49c84146102a8576100dd565b8063ce7c2ac2146101e6578063d0e30db014610237578063e2d2e2191461023f576100dd565b80632d48e896116100bb5780632d48e896146101775780633a98ef39146101a75780634fab0ae8146101bc578063997664d7146101d1576100dd565b806311ce023d146100e257806314b6ca961461010957806328fd319814610144575b600080fd5b3480156100ee57600080fd5b506100f76102bd565b60408051918252519081900360200190f35b34801561011557600080fd5b506101426004803603604081101561012c57600080fd5b506001600160a01b0381351690602001356102c3565b005b34801561015057600080fd5b506100f76004803603602081101561016757600080fd5b50356001600160a01b03166103e8565b34801561018357600080fd5b506101426004803603604081101561019a57600080fd5b5080359060200135610474565b3480156101b357600080fd5b506100f7610496565b3480156101c857600080fd5b506100f761049c565b3480156101dd57600080fd5b506100f76104a2565b3480156101f257600080fd5b506102196004803603602081101561020957600080fd5b50356001600160a01b03166104a8565b60408051938452602084019290925282820152519081900360600190f35b6101426104c9565b34801561024b57600080fd5b506100f761051c565b34801561026057600080fd5b506100f7610522565b34801561027557600080fd5b50610142610528565b34801561028a57600080fd5b50610142600480360360208110156102a157600080fd5b503561058d565b3480156102b457600080fd5b506100f7610672565b600a5481565b6000546001600160a01b031633146102da57600080fd5b6001600160a01b038216600090815260056020526040902054156103015761030182610678565b60008111801561032757506001600160a01b038216600090815260056020526040902054155b1561033a5761033582610795565b61036d565b8015801561035f57506001600160a01b03821660009081526005602052604090205415155b1561036d5761036d826107f6565b6001600160a01b03821660009081526005602052604090205460065461039e918391610398916108e3565b9061092e565b6006556001600160a01b03821660009081526005602052604090208190556103c581610988565b6001600160a01b0390921660009081526005602052604090206001019190915550565b6001600160a01b03811660009081526005602052604081205461040d5750600061046f565b6001600160a01b03821660009081526005602052604081205461042f90610988565b6001600160a01b0384166000908152600560205260409020600101549091508082116104605760009250505061046f565b61046a82826108e3565b925050505b919050565b6000546001600160a01b0316331461048b57600080fd5b600b91909155600c55565b60065481565b600c5481565b60075481565b60056020526000908152604090208054600182015460029092015490919083565b6000546001600160a01b031633146104e057600080fd5b6007546104ed903461092e565b600755600654600a546105179161050e9161050890346109a5565b906109fe565b6009549061092e565b600955565b60095481565b60085481565b61053133610a40565b610582576040805162461bcd60e51b815260206004820152601760248201527f546f6f20736f6f6e2e204e65656420746f207761697421000000000000000000604482015290519081900360640190fd5b61058b33610678565b565b6000546001600160a01b031633146105a457600080fd5b600254806105b2575061066f565b60008060005a90505b84821080156105c957508383105b1561066a5783600d54106105dd576000600d555b6106096002600d54815481106105ef57fe5b6000918252602090912001546001600160a01b0316610a40565b1561063a5761063a6002600d548154811061062057fe5b6000918252602090912001546001600160a01b0316610678565b61064f6106485a83906108e3565b839061092e565b91505a600d80546001908101909155939093019290506105bb565b505050505b50565b600b5481565b6001600160a01b03811660009081526005602052604090205461069a5761066f565b60006106a5826103e8565b90508015610791576008546106ba908261092e565b6008556040516000906001600160a01b0384169061753090849084818181858888f193505050503d806000811461070d576040519150601f19603f3d011682016040523d82523d6000602084013e610712565b606091505b505050506001600160a01b03821660009081526004602090815260408083204290556005909152812060020154610749908361092e565b6001600160a01b038416600090815260056020526040902060028101919091555461077390610988565b6001600160a01b038416600090815260056020526040902060010155505b5050565b600280546001600160a01b039092166000818152600360205260408120849055600184018355919091527f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace90910180546001600160a01b0319169091179055565b60028054600019810190811061080857fe5b60009182526020808320909101546001600160a01b038481168452600390925260409092205460028054929093169291811061084057fe5b600091825260208083209190910180546001600160a01b0319166001600160a01b03948516179055918316815260039182905260408120546002805491939291600019810190811061088e57fe5b60009182526020808320909101546001600160a01b0316835282019290925260400190205560028054806108be57fe5b600082815260209020810160001990810180546001600160a01b031916905501905550565b600061092583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a7c565b90505b92915050565b600082820183811015610925576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6000610928600a54610508600954856109a590919063ffffffff16565b6000826109b457506000610928565b828202828482816109c157fe5b04146109255760405162461bcd60e51b8152600401808060200182810382526021815260200180610b796021913960400191505060405180910390fd5b600061092583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610b13565b600b546001600160a01b03821660009081526004602052604081205490914291011080156109285750600c54610a75836103e8565b1192915050565b60008184841115610b0b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ad0578181015183820152602001610ab8565b50505050905090810190601f168015610afd5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610b625760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610ad0578181015183820152602001610ab8565b506000838581610b6e57fe5b049594505050505056fe536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77a2646970667358221220a726e8724530d71e645a9c1c59f148431433d2ffde8ad3bea4944d43a59423f964736f6c63430007060033
Deployed Bytecode
0x60806040526004361061036f5760003560e01c8063760a2e8a116101c6578063af43396c116100f7578063dd62ed3e11610095578063f5e0b2711161006f578063f5e0b27114610cf2578063f708a64f14610d07578063f887ea4014610d42578063fe9fbb8014610d5757610376565b8063dd62ed3e14610c51578063f0b37c0414610c8c578063f2fde38b14610cbf57610376565b8063bad3ea6a116100d1578063bad3ea6a14610bfd578063bf56b37114610c12578063da00097d14610c27578063da391b7a14610c3c57610376565b8063af43396c14610b74578063b2061c5b14610ba0578063b6a5d7de14610bca57610376565b806398118cb411610164578063a9059cbb1161013e578063a9059cbb14610ac3578063a9f7864b14610afc578063aa4bde2814610b2c578063aa7cc1f114610b4157610376565b806398118cb414610a84578063a5f3d00314610a99578063a8aa1b3114610aae57610376565b80638a8c523c116101a05780638a8c523c14610a0a5780638ea5220f14610a1f578063929f136014610a3457806395d89b4114610a6f57610376565b8063760a2e8a1461097c57806382972f92146109af578063893d20e8146109d957610376565b8063313ce567116102a0578063479f66d81161023e57806364d42da31161021857806364d42da3146108a0578063658d4b7f146108db5780636dd3d39f1461091657806370a082311461094957610376565b8063479f66d81461082e5780634a74bb0214610858578063571ac8b01461086d57610376565b80633dab52691161027a5780633dab5269146107175780633f4218e0146107495780634355855a1461077c57806346a19c6d146107af57610376565b8063313ce5671461060857806336c41d671461063357806339234e391461070257610376565b80631b0f53271161030d57806327c4ca6d116102e757806327c4ca6d1461055a5780632b112e49146105845780632f54bf6e1461059957806330d2361e146105cc57610376565b80631b0f5327146104cd5780631f53ac02146104e257806323b872dd1461051757610376565b806309c58fcd1161034957806309c58fcd1461047957806313114a9d1461048e578063180b0d7e146104a357806318160ddd146104b857610376565b80630445b6671461037b57806306fdde03146103a2578063095ea7b31461042c57610376565b3661037657005b600080fd5b34801561038757600080fd5b50610390610d8a565b60408051918252519081900360200190f35b3480156103ae57600080fd5b506103b7610d90565b6040805160208082528351818301528351919283929083019185019080838360005b838110156103f15781810151838201526020016103d9565b50505050905090810190601f16801561041e5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561043857600080fd5b506104656004803603604081101561044f57600080fd5b506001600160a01b038135169060200135610db2565b604080519115158252519081900360200190f35b34801561048557600080fd5b50610465610e19565b34801561049a57600080fd5b50610390610e22565b3480156104af57600080fd5b50610390610e28565b3480156104c457600080fd5b50610390610e2e565b3480156104d957600080fd5b50610390610e34565b3480156104ee57600080fd5b506105156004803603602081101561050557600080fd5b50356001600160a01b0316610e3a565b005b34801561052357600080fd5b506104656004803603606081101561053a57600080fd5b506001600160a01b03813581169160208101359091169060400135610e9f565b34801561056657600080fd5b506105156004803603602081101561057d57600080fd5b5035610f61565b34801561059057600080fd5b50610390610fe8565b3480156105a557600080fd5b50610465600480360360208110156105bc57600080fd5b50356001600160a01b0316611031565b3480156105d857600080fd5b50610515600480360360808110156105ef57600080fd5b5080359060208101359060408101359060600135611045565b34801561061457600080fd5b5061061d6110ee565b6040805160ff9092168252519081900360200190f35b34801561063f57600080fd5b506105156004803603604081101561065657600080fd5b81019060208101813564010000000081111561067157600080fd5b82018360208201111561068357600080fd5b803590602001918460208302840111640100000000831117156106a557600080fd5b9193909290916020810190356401000000008111156106c357600080fd5b8201836020820111156106d557600080fd5b803590602001918460208302840111640100000000831117156106f757600080fd5b5090925090506110f3565b34801561070e57600080fd5b5061039061133c565b34801561072357600080fd5b506105156004803603604081101561073a57600080fd5b50803515159060200135611342565b34801561075557600080fd5b506104656004803603602081101561076c57600080fd5b50356001600160a01b03166113a8565b34801561078857600080fd5b506104656004803603602081101561079f57600080fd5b50356001600160a01b03166113bd565b3480156107bb57600080fd5b50610515600480360360408110156107d257600080fd5b8101906020810181356401000000008111156107ed57600080fd5b8201836020820111156107ff57600080fd5b8035906020019184602083028401116401000000008311171561082157600080fd5b91935091503515156113d2565b34801561083a57600080fd5b506105156004803603602081101561085157600080fd5b503561146a565b34801561086457600080fd5b506104656114c6565b34801561087957600080fd5b506104656004803603602081101561089057600080fd5b50356001600160a01b03166114d4565b3480156108ac57600080fd5b50610515600480360360408110156108c357600080fd5b506001600160a01b03813516906020013515156114e2565b3480156108e757600080fd5b50610515600480360360408110156108fe57600080fd5b506001600160a01b03813516906020013515156115c4565b34801561092257600080fd5b506104656004803603602081101561093957600080fd5b50356001600160a01b0316611637565b34801561095557600080fd5b506103906004803603602081101561096c57600080fd5b50356001600160a01b0316611655565b34801561098857600080fd5b506104656004803603602081101561099f57600080fd5b50356001600160a01b0316611670565b3480156109bb57600080fd5b50610515600480360360208110156109d257600080fd5b5035611685565b3480156109e557600080fd5b506109ee6116da565b604080516001600160a01b039092168252519081900360200190f35b348015610a1657600080fd5b506105156116e9565b348015610a2b57600080fd5b506109ee611793565b348015610a4057600080fd5b5061051560048036036040811015610a5757600080fd5b506001600160a01b03813516906020013515156117a2565b348015610a7b57600080fd5b506103b7611810565b348015610a9057600080fd5b5061039061182e565b348015610aa557600080fd5b50610390611834565b348015610aba57600080fd5b506109ee61183a565b348015610acf57600080fd5b5061046560048036036040811015610ae657600080fd5b506001600160a01b038135169060200135611849565b348015610b0857600080fd5b5061051560048036036040811015610b1f57600080fd5b5080359060200135611856565b348015610b3857600080fd5b5061039061190e565b348015610b4d57600080fd5b5061046560048036036020811015610b6457600080fd5b50356001600160a01b0316611930565b348015610b8057600080fd5b5061051560048036036020811015610b9757600080fd5b5035151561194e565b348015610bac57600080fd5b5061051560048036036020811015610bc357600080fd5b50356119a4565b348015610bd657600080fd5b5061051560048036036020811015610bed57600080fd5b50356001600160a01b03166119f6565b348015610c0957600080fd5b506109ee611a60565b348015610c1e57600080fd5b50610390611a6f565b348015610c3357600080fd5b50610465611a75565b348015610c4857600080fd5b50610390611a84565b348015610c5d57600080fd5b5061039060048036036040811015610c7457600080fd5b506001600160a01b0381358116916020013516611a8a565b348015610c9857600080fd5b5061051560048036036020811015610caf57600080fd5b50356001600160a01b0316611ab5565b348015610ccb57600080fd5b5061051560048036036020811015610ce257600080fd5b50356001600160a01b0316611b19565b348015610cfe57600080fd5b50610390611bca565b348015610d1357600080fd5b5061051560048036036040811015610d2a57600080fd5b506001600160a01b0381351690602001351515611bd0565b348015610d4e57600080fd5b506109ee611d47565b348015610d6357600080fd5b5061046560048036036020811015610d7a57600080fd5b50356001600160a01b0316611d56565b601f5481565b60408051808201909152600881526723a2292a27a5a2a760c11b602082015290565b3360008181526008602090815260408083206001600160a01b038716808552908352818420869055815186815291519394909390927f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925928290030190a35060015b92915050565b60065460ff1681565b60105481565b60115481565b60055490565b600d5481565b610e4333611031565b610e7d576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601380546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316600090815260086020908152604080832033845290915281205460001914610f4c576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610f27918490611d74565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610f57848484611e0b565b90505b9392505050565b610f6a33611031565b610fa4576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60098111610fe35760405162461bcd60e51b815260040180806020018281038252602d815260200180612ac9602d913960400191505060405180910390fd5b601d55565b60035460009061102c90611004906001600160a01b0316611655565b6002546110269061101d906001600160a01b0316611655565b60055490612359565b90612359565b905090565b6000546001600160a01b0390811691161490565b61104e33611031565b611088576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600d849055600f839055600e829055828401820160105560118190556004810460105411156110e8576040805162461bcd60e51b81526020600482015260076024820152666d61782032352560c81b604482015290519081900360640190fd5b50505050565b601290565b6110fc33611031565b611136576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60005b8381101561133557670de0b6b3a764000083838381811061115657fe5b336000908152600760209081526040909120805492909102939093013593909302909203905550670de0b6b3a764000083838381811061119257fe5b9050602002013502600760008787858181106111aa57fe5b602090810292909201356001600160a01b031683525081019190915260400160002080549190910190558484828181106111e057fe5b905060200201356001600160a01b03166001600160a01b0316336001600160a01b0316600080516020612b17833981519152601260ff16600a0a86868681811061122657fe5b90506020020135026040518082815260200191505060405180910390a36019546001600160a01b03166314b6ca9686868481811061126057fe5b905060200201356001600160a01b0316601260ff16600a0a86868681811061128457fe5b90506020020135026040518363ffffffff1660e01b815260040180836001600160a01b0316815260200182815260200192505050600060405180830381600087803b1580156112d257600080fd5b505af11580156112e6573d6000803e3d6000fd5b505050506001600c60008787858181106112fc57fe5b602090810292909201356001600160a01b0316835250810191909152604001600020805460ff1916911515919091179055600101611139565b5050505050565b60185481565b61134b33611d56565b61138a576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601e80549215156101000261ff001990931692909217909155601f55565b60096020526000908152604090205460ff1681565b600a6020526000908152604090205460ff1681565b6113db33611031565b611415576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60005b828110156110e85781600b600086868581811061143157fe5b602090810292909201356001600160a01b0316835250810191909152604001600020805460ff1916911515919091179055600101611418565b61147333611d56565b6114b2576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b620b71b081106114c157600080fd5b601a55565b601e54610100900460ff1681565b6000610e1382600019610db2565b6114eb33611031565b611525576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b0382166000908152600b602052604090205460ff1615158115151415611599576040805162461bcd60e51b815260206004820181905260248201527f4163636f756e7420616c72656164792068617320726564756365642066656573604482015290519081900360640190fd5b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6115cd33611d56565b61160c576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b03919091166000908152600960205260409020805460ff1916911515919091179055565b6001600160a01b03166000908152601b602052604090205460ff1690565b6001600160a01b031660009081526007602052604090205490565b600c6020526000908152604090205460ff1681565b61168e33611031565b6116c8576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b606481106116d557600080fd5b601255565b6000546001600160a01b031690565b6116f233611031565b61172c576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b60065460ff1615611784576040805162461bcd60e51b815260206004820152601a60248201527f54726164696e6720697320616c726561647920656e61626c6564000000000000604482015290519081900360640190fd5b6006805460ff19166001179055565b6013546001600160a01b031681565b6117ab33611031565b6117e5576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03919091166000908152601b60205260409020805460ff1916911515919091179055565b60408051808201909152600481526311d1149560e21b602082015290565b600f5481565b600e5481565b6015546001600160a01b031681565b6000610f5a338484611e0b565b61185f33611d56565b61189e576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b601954604080516316a4744b60e11b8152600481018590526024810184905290516001600160a01b0390921691632d48e8969160448082019260009290919082900301818387803b1580156118f257600080fd5b505af1158015611906573d6000803e3d6000fd5b505050505050565b600061102c6103e861192a601d54611924610fe8565b9061239b565b906123f4565b6001600160a01b03166000908152600b602052604090205460ff1690565b61195733611031565b611991576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b601c805460ff1916911515919091179055565b6119ad33611d56565b6119ec576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6201518002601855565b6119ff33611031565b611a39576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160208190526040909120805460ff19169091179055565b6019546001600160a01b031681565b60165481565b601e5462010000900460ff1681565b60125481565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b611abe33611031565b611af8576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b6001600160a01b03166000908152600160205260409020805460ff19169055565b611b2233611031565b611b5c576040805162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015290519081900360640190fd5b600080546001600160a01b0319166001600160a01b038316908117825580825260016020818152604093849020805460ff1916909217909155825191825291517f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc686163929181900390910190a150565b60175481565b611bd933611d56565b611c18576040805162461bcd60e51b815260206004820152600b60248201526a085055551213d49256915160aa1b604482015290519081900360640190fd5b6001600160a01b0382163014801590611c3f57506015546001600160a01b03838116911614155b611c4857600080fd5b6001600160a01b0382166000908152600a60205260409020805460ff19168215801591909117909155611ce55760195460408051630a5b654b60e11b81526001600160a01b03858116600483015260006024830181905292519316926314b6ca969260448084019391929182900301818387803b158015611cc857600080fd5b505af1158015611cdc573d6000803e3d6000fd5b50505050611d43565b6019546001600160a01b03838116600081815260076020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b1580156118f257600080fd5b5050565b6014546001600160a01b031681565b6001600160a01b031660009081526001602052604090205460ff1690565b60008184841115611e035760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015611dc8578181015183820152602001611db0565b50505050905090810190601f168015611df55780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60065460009060ff1680611e5957506001600160a01b03841660009081526009602052604090205460ff1680611e5957506001600160a01b03831660009081526009602052604090205460ff165b611ea0576040805162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81a5cc8191a5cd8589b1959606a1b604482015290519081900360640190fd5b601e5460ff1615611ebd57611eb6848484612436565b9050610f5a565b601c5460ff168015611ed657506000611ed461190e565b115b15611f93576001600160a01b0384166000908152601b602052604090205460ff16158015611f1d57506001600160a01b0383166000908152601b602052604090205460ff16155b8015611f3757506015546001600160a01b03848116911614155b15611f93576000611f4784611655565b9050611f5161190e565b8382011115611f915760405162461bcd60e51b8152600401808060200182810382526036815260200180612b376036913960400191505060405180910390fd5b505b60165443036017556001600160a01b0384166000908152600c602052604090205460ff168015611fc65750601854601754105b156120025760405162461bcd60e51b8152600401808060200182810382526027815260200180612b6d6027913960400191505060405180910390fd5b6015546001600160a01b031633148015906120205750601e5460ff16155b80156120335750601e54610100900460ff165b80156120505750601f543060009081526007602052604090205410155b1561205d5761205d612505565b601e546040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b03881660009081526007909152919091205460ff90921615916120b9918590611d74565b6001600160a01b03861660009081526007602090815260408083209390935560099052205460ff168061210457506001600160a01b03841660009081526009602052604090205460ff165b1561210d575060005b6015546001600160a01b0386811691161480159061213957506015546001600160a01b03858116911614155b15612142575060005b8281156121575761215486868661291f565b90505b6001600160a01b03851660009081526007602052604090205461217a9082612a09565b6001600160a01b038087166000908152600760209081526040808320949094559189168152600a909152205460ff1661221e576019546001600160a01b03878116600081815260076020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b15801561220b57600080fd5b505af192505050801561221c575060015b505b6001600160a01b0385166000908152600a602052604090205460ff166122af576019546001600160a01b03868116600081815260076020526040808220548151630a5b654b60e11b8152600481019490945260248401525192909316926314b6ca969260448084019382900301818387803b15801561229c57600080fd5b505af19250505080156122ad575060015b505b601954601a54604080516001624d3b8760e01b031981526004810192909252516001600160a01b039092169163ffb2c4799160248082019260009290919082900301818387803b15801561230257600080fd5b505af1925050508015612313575060015b50846001600160a01b0316866001600160a01b0316600080516020612b17833981519152836040518082815260200191505060405180910390a350600195945050505050565b6000610f5a83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611d74565b6000826123aa57506000610e13565b828202828482816123b757fe5b0414610f5a5760405162461bcd60e51b8152600401808060200182810382526021815260200180612af66021913960400191505060405180910390fd5b6000610f5a83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250612a63565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600790915291822054612487918490611d74565b6001600160a01b0380861660009081526007602052604080822093909355908516815220546124b69083612a09565b6001600160a01b038085166000818152600760209081526040918290209490945580518681529051919392881692600080516020612b1783398151915292918290030190a35060019392505050565b601e805460ff1916600117905530600090815260076020526040812054601054600f549192916125409160029161192a91908290879061239b565b9050600061254e8383612359565b6040805160028082526060820183529293506000929091602083019080368337019050509050308160008151811061258257fe5b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c4648926004808301939192829003018186803b1580156125d657600080fd5b505afa1580156125ea573d6000803e3d6000fd5b505050506040513d602081101561260057600080fd5b505181518290600190811061261157fe5b60200260200101906001600160a01b031690816001600160a01b031681525050601460009054906101000a90046001600160a01b03166001600160a01b031663791ac9478360008430426040518663ffffffff1660e01b81526004018086815260200185815260200180602001846001600160a01b03168152602001838152602001828103825285818151815260200191508051906020019060200280838360005b838110156126cb5781810151838201526020016126b3565b505050509050019650505050505050600060405180830381600087803b1580156126f457600080fd5b505af1158015612708573d6000803e3d6000fd5b5050600f544792506000915061272c906127239060026123f4565b60105490612359565b9050600061274e600261192a8461192a600f548861239b90919063ffffffff16565b9050600061276b8361192a600d548761239b90919063ffffffff16565b9050600061277d826110268786612359565b9050601960009054906101000a90046001600160a01b03166001600160a01b031663d0e30db0836040518263ffffffff1660e01b81526004016000604051808303818588803b1580156127cf57600080fd5b505af1935050505080156127e1575060015b50600e5415612826576013546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015612824573d6000803e3d6000fd5b505b871561290a576014546002546040805163f305d71960e01b8152306004820152602481018c905260006044820181905260648201526001600160a01b0392831660848201524260a48201529051919092169163f305d71991869160c48082019260609290919082900301818588803b1580156128a157600080fd5b505af11580156128b5573d6000803e3d6000fd5b50505050506040513d60608110156128cc57600080fd5b505060408051848152602081018a905281517f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b4506929181900390910190a15b5050601e805460ff1916905550505050505050565b60008061293d60115461192a6010548661239b90919063ffffffff16565b6001600160a01b0386166000908152600b602052604090205490915060ff168061297f57506001600160a01b0384166000908152600b602052604090205460ff165b1561299957601254612996906119248360646123f4565b90035b306000908152600760205260409020546129b39082612a09565b30600081815260076020908152604091829020939093558051848152905191926001600160a01b03891692600080516020612b178339815191529281900390910190a3612a008382612359565b95945050505050565b600082820183811015610f5a576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b60008183612ab25760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315611dc8578181015183820152602001611db0565b506000838581612abe57fe5b049594505050505056fe4d61782077616c6c65742070657263656e746167652063616e6e6f74206265206c6f776572207468616e203125536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f77ddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef4d617857616c6c65743a205472616e7366657220616d6f756e74206578636565647320746865206d617857616c6c6574416d6f756e745665737465642077616c6c6574732063616e6e6f742073656e6420666f72203138302064617973a2646970667358221220ff09978fbc7bc37818a8857349057711a233964e1ac795fa9141ccdc9aa9afa364736f6c63430007060033
Deployed Bytecode Sourcemap
10636:13758:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12434:50;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;13650:80;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14494:216;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;14494:216:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;11123:36;;;;;;;;;;;;;:::i;11619:76::-;;;;;;;;;;;;;:::i;11702:36::-;;;;;;;;;;;;;:::i;13912:88::-;;;;;;;;;;;;;:::i;11494:33::-;;;;;;;;;;;;;:::i;16831:101::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16831:101:0;-1:-1:-1;;;;;16831:101:0;;:::i;:::-;;19161:372;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;19161:372:0;;;;;;;;;;;;;;;;;:::i;17970:194::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17970:194:0;;:::i;14092:142::-;;;;;;;;;;;;;:::i;10006:103::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10006:103:0;-1:-1:-1;;;;;10006:103:0;;:::i;15811:467::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;15811:467:0;;;;;;;;;;;;;;;;;:::i;13826:80::-;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;16284:539;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;16284:539:0;;-1:-1:-1;16284:539:0;-1:-1:-1;16284:539:0;:::i;11995:34::-;;;;;;;;;;;;;:::i;18430:200::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18430:200:0;;;;;;;;;:::i;11284:44::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11284:44:0;-1:-1:-1;;;;;11284:44:0;;:::i;11335:49::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11335:49:0;-1:-1:-1;;;;;11335:49:0;;:::i;17160:225::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17160:225:0;-1:-1:-1;17160:225:0;;;;:::i;18846:139::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18846:139:0;;:::i;12333:40::-;;;;;;;;;;;;;:::i;14718:116::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14718:116:0;-1:-1:-1;;;;;14718:116:0;;:::i;16940:212::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;16940:212:0;;;;;;;;;;:::i;15302:120::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;15302:120:0;;;;;;;;;;:::i;17685:135::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17685:135:0;-1:-1:-1;;;;;17685:135:0;;:::i;14242:105::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;14242:105:0;-1:-1:-1;;;;;14242:105:0;;:::i;11444:41::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;11444:41:0;-1:-1:-1;;;;;11444:41:0;;:::i;17393:157::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17393:157:0;;:::i;14006:78::-;;;;;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;;;;14006:78:0;;;;;;;;;;;;;;15019:153;;;;;;;;;;;;;:::i;11793:69::-;;;;;;;;;;;;;:::i;18172:145::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;18172:145:0;;;;;;;;;;:::i;13736:84::-;;;;;;;;;;;;;:::i;11579:33::-;;;;;;;;;;;;;:::i;11534:37::-;;;;;;;;;;;;;:::i;11902:19::-;;;;;;;;;;;;;:::i;18997:156::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;18997:156:0;;;;;;;;:::i;18638:200::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18638:200:0;;;;;;;:::i;17828:134::-;;;;;;;;;;;;;:::i;17558:119::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;17558:119:0;-1:-1:-1;;;;;17558:119:0;;:::i;18325:97::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;18325:97:0;;;;:::i;15178:112::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;15178:112:0;;:::i;9679:94::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9679:94:0;-1:-1:-1;;;;;9679:94:0;;:::i;12038:46::-;;;;;;;;;;;;;:::i;11928:25::-;;;;;;;;;;;;;:::i;12380:45::-;;;;;;;;;;;;;:::i;11745:39::-;;;;;;;;;;;;;:::i;14353:133::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;14353:133:0;;;;;;;;;;:::i;9849:97::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;9849:97:0;-1:-1:-1;;;;;9849:97:0;;:::i;10406:173::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10406:173:0;-1:-1:-1;;;;;10406:173:0;;:::i;11960:31::-;;;;;;;;;;;;;:::i;15430:373::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;15430:373:0;;;;;;;;;;:::i;11871:24::-;;;;;;;;;;;;;:::i;10180:107::-;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;10180:107:0;-1:-1:-1;;;;;10180:107:0;;:::i;12434:50::-;;;;:::o;13650:80::-;13722:5;;;;;;;;;;;;-1:-1:-1;;;13722:5:0;;;;13650:80;:::o;14494:216::-;14598:10;14569:4;14586:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;14586:32:0;;;;;;;;;;;:41;;;14643:37;;;;;;;14569:4;;14586:32;;14598:10;;14643:37;;;;;;;;-1:-1:-1;14698:4:0;14494:216;;;;;:::o;11123:36::-;;;;;;:::o;11619:76::-;;;;:::o;11702:36::-;;;;:::o;13912:88::-;13985:12;;13912:88;:::o;11494:33::-;;;;:::o;16831:101::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;16906:9:::1;:18:::0;;-1:-1:-1;;;;;;16906:18:0::1;-1:-1:-1::0;;;;;16906:18:0;;;::::1;::::0;;;::::1;::::0;;16831:101::o;19161:372::-;-1:-1:-1;;;;;19291:19:0;;19261:4;19291:19;;;:11;:19;;;;;;;;19311:10;19291:31;;;;;;;;-1:-1:-1;;19291:46:0;19288:180;;19387:69;;;;;;;;;;;-1:-1:-1;;;19387:69:0;;;;;;;;-1:-1:-1;;;;;19387:19:0;;-1:-1:-1;19387:19:0;;;:11;:19;;;;;19407:10;19387:31;;;;;;;;;;:69;;19423:6;;19387:35;:69::i;:::-;-1:-1:-1;;;;;19353:19:0;;;;;;:11;:19;;;;;;;;19373:10;19353:31;;;;;;;:103;19288:180;19485:40;19499:6;19507:9;19518:6;19485:13;:40::i;:::-;19478:47;;19161:372;;;;;;:::o;17970:194::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;18074:1:::1;18067:4;:8;18059:66;;;;-1:-1:-1::0;;;18059:66:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18136:13;:20:::0;17970:194::o;14092:142::-;14220:4;;14145:7;;14172:54;;14210:15;;-1:-1:-1;;;;;14220:4:0;14210:9;:15::i;:::-;14199:4;;14172:33;;14189:15;;-1:-1:-1;;;;;14199:4:0;14189:9;:15::i;:::-;14172:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;14165:61;;14092:142;:::o;10006:103::-;10061:4;10096:5;-1:-1:-1;;;;;10096:5:0;;;10085:16;;;;10006:103::o;15811:467::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;15961:13:::1;:30:::0;;;16006:12:::1;:28:::0;;;16049:14:::1;:32:::0;;;16108:30;;::::1;:48:::0;::::1;16096:9;:60:::0;16171:14:::1;:32:::0;;;16257:1:::1;16188:15:::0;16239:19:::1;16226:9;;:32;;16218:52;;;::::0;;-1:-1:-1;;;16218:52:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;-1:-1:-1;;;16218:52:0;;;;;;;;;;;;;::::1;;15811:467:::0;;;;:::o;13826:80::-;10825:2;13826:80;:::o;16284:539::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;16419:9:::1;16415:401;16434:19:::0;;::::1;16415:401;;;16511:15:::0;16499:6;;16506:1;16499:9;;::::1;;;;;16485:10;16475:21;::::0;;;:9:::1;16499;16475:21:::0;;;;;;;:51;;16499:9;;;::::1;::::0;;;::::1;;:27:::0;;;::::1;16475:51:::0;;::::1;::::0;;-1:-1:-1;16579:15:0;16567:6;;16574:1;16567:9;;::::1;;;;;;;;;;;:27;16541:9;:22;16551:8;;16560:1;16551:11;;;;;;;;::::0;;::::1;::::0;;;::::1;;-1:-1:-1::0;;;;;16551:11:0::1;16541:22:::0;;-1:-1:-1;16541:22:0;::::1;::::0;;;;;;-1:-1:-1;16541:22:0;:53;;;;;::::1;::::0;;16635:8;;16644:1;16635:11;;::::1;;;;;;;;;;;-1:-1:-1::0;;;;;16635:11:0::1;-1:-1:-1::0;;;;;16614:62:0::1;16623:10;-1:-1:-1::0;;;;;16614:62:0::1;-1:-1:-1::0;;;;;;;;;;;10825:2:0::1;16660:15;;:2;:15;16648:6;;16655:1;16648:9;;;;;;;;;;;;;:27;16614:62;;;;;;;;;;;;;;;;;;16691:19;::::0;-1:-1:-1;;;;;16691:19:0::1;:28;16720:8:::0;;16729:1;16720:11;;::::1;;;;;;;;;;;-1:-1:-1::0;;;;;16720:11:0::1;10825:2;16745:15;;:2;:15;16733:6;;16740:1;16733:9;;;;;;;;;;;;;:27;16691:70;;;;;;;;;;;;;-1:-1:-1::0;;;;;16691:70:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;16800:4;16776:8;:21;16785:8;;16794:1;16785:11;;;;;;;;::::0;;::::1;::::0;;;::::1;;-1:-1:-1::0;;;;;16785:11:0::1;16776:21:::0;;-1:-1:-1;16776:21:0;::::1;::::0;;;;;;-1:-1:-1;16776:21:0;:28;;-1:-1:-1;;16776:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;16455:3:0::1;16415:401;;;;16284:539:::0;;;;:::o;11995:34::-;;;;:::o;18430:200::-;9564:24;9577:10;9564:12;:24::i;:::-;9556:48;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;;;;18540:21:::1;:39:::0;;;::::1;;;;-1:-1:-1::0;;18540:39:0;;::::1;::::0;;;::::1;::::0;;;18590:13:::1;:32:::0;18430:200::o;11284:44::-;;;;;;;;;;;;;;;:::o;11335:49::-;;;;;;;;;;;;;;;:::o;17160:225::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;17273:9:::1;17269:109;17288:19:::0;;::::1;17269:109;;;17360:6;17329:15;:28;17345:8;;17354:1;17345:11;;;;;;;;::::0;;::::1;::::0;;;::::1;;-1:-1:-1::0;;;;;17345:11:0::1;17329:28:::0;;-1:-1:-1;17329:28:0;::::1;::::0;;;;;;-1:-1:-1;17329:28:0;:37;;-1:-1:-1;;17329:37:0::1;::::0;::::1;;::::0;;;::::1;::::0;;-1:-1:-1;17309:3:0::1;17269:109;;18846:139:::0;9564:24;9577:10;9564:12;:24::i;:::-;9556:48;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;;;;18939:6:::1;18933:3;:12;18925:21;;;::::0;::::1;;18957:14;:20:::0;18846:139::o;12333:40::-;;;;;;;;;:::o;14718:116::-;14773:4;14797:29;14805:7;-1:-1:-1;;14797:7:0;:29::i;16940:212::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;17029:24:0;::::1;;::::0;;;:15:::1;:24;::::0;;;;;::::1;;:34;;::::0;::::1;;;;17021:79;;;::::0;;-1:-1:-1;;;17021:79:0;;::::1;;::::0;::::1;::::0;;;;;;;::::1;::::0;;;;;;;;;;;;;::::1;;-1:-1:-1::0;;;;;17111:24:0;;;::::1;;::::0;;;:15:::1;:24;::::0;;;;:33;;-1:-1:-1;;17111:33:0::1;::::0;::::1;;::::0;;;::::1;::::0;;16940:212::o;15302:120::-;9564:24;9577:10;9564:12;:24::i;:::-;9556:48;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;15386:19:0;;;::::1;;::::0;;;:11:::1;:19;::::0;;;;:28;;-1:-1:-1;;15386:28:0::1;::::0;::::1;;::::0;;;::::1;::::0;;15302:120::o;17685:135::-;-1:-1:-1;;;;;17779:33:0;17755:4;17779:33;;;:24;:33;;;;;;;;;17685:135::o;14242:105::-;-1:-1:-1;;;;;14326:18:0;14308:7;14326:18;;;:9;:18;;;;;;;14242:105::o;11444:41::-;;;;;;;;;;;;;;;:::o;17393:157::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;17494:3:::1;17481:10;:16;17473:25;;;::::0;::::1;;17509:20;:33:::0;17393:157::o;14006:78::-;14058:7;14076:5;-1:-1:-1;;;;;14076:5:0;14006:78;:::o;15019:153::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;15083:16:::1;::::0;::::1;;15082:17;15074:56;;;::::0;;-1:-1:-1;;;15074:56:0;;::::1;;::::0;::::1;::::0;::::1;::::0;;;;::::1;::::0;;;;;;;;;;;;;::::1;;15141:16;:23:::0;;-1:-1:-1;;15141:23:0::1;15160:4;15141:23;::::0;;15019:153::o;11793:69::-;;;-1:-1:-1;;;;;11793:69:0;;:::o;18172:145::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;18266:33:0;;;::::1;;::::0;;;:24:::1;:33;::::0;;;;:43;;-1:-1:-1;;18266:43:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18172:145::o;13736:84::-;13810:7;;;;;;;;;;;;-1:-1:-1;;;13810:7:0;;;;13736:84;:::o;11579:33::-;;;;:::o;11534:37::-;;;;:::o;11902:19::-;;;-1:-1:-1;;;;;11902:19:0;;:::o;18997:156::-;19077:4;19101:44;19115:10;19127:9;19138:6;19101:13;:44::i;18638:200::-;9564:24;9577:10;9564:12;:24::i;:::-;9556:48;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;;;;18754:19:::1;::::0;:76:::1;::::0;;-1:-1:-1;;;18754:76:0;;::::1;::::0;::::1;::::0;;;;;;;;;;;-1:-1:-1;;;;;18754:19:0;;::::1;::::0;:43:::1;::::0;:76;;;;;:19:::1;::::0;:76;;;;;;;;:19;;:76;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;18638:200:::0;;:::o;17828:134::-;17876:7;17903:51;17949:4;17903:41;17930:13;;17903:22;:20;:22::i;:::-;:26;;:41::i;:::-;:45;;:51::i;17558:119::-;-1:-1:-1;;;;;17645:24:0;17621:4;17645:24;;;:15;:24;;;;;;;;;17558:119::o;18325:97::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;18392:15:::1;:22:::0;;-1:-1:-1;;18392:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;18325:97::o;15178:112::-;9564:24;9577:10;9564:12;:24::i;:::-;9556:48;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;;;;15279:6:::1;15265:20;15254:8;:31:::0;15178:112::o;9679:94::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;9739:19:0::1;;::::0;;;9761:4:::1;9739:19;::::0;;;;;;;:26;;-1:-1:-1;;9739:26:0::1;::::0;;::::1;::::0;;9679:94::o;12038:46::-;;;-1:-1:-1;;;;;12038:46:0;;:::o;11928:25::-;;;;:::o;12380:45::-;;;;;;;;;:::o;11745:39::-;;;;:::o;14353:133::-;-1:-1:-1;;;;;14455:19:0;;;14437:7;14455:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;14353:133::o;9849:97::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;9911:19:0::1;9933:5;9911:19:::0;;;:14:::1;:19;::::0;;;;:27;;-1:-1:-1;;9911:27:0::1;::::0;;9849:97::o;10406:173::-;9395:19;9403:10;9395:7;:19::i;:::-;9387:38;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;-1:-1:-1;;;9387:38:0;;;;;;;;;;;;;;;10482:5:::1;:11:::0;;-1:-1:-1;;;;;;10482:11:0::1;-1:-1:-1::0;;;;;10482:11:0;::::1;::::0;;::::1;::::0;;10504:19;;;-1:-1:-1;10504:19:0::1;::::0;;;;;;;;:26;;-1:-1:-1;;10504:26:0::1;::::0;;::::1;::::0;;;10546:25;;;;;;;::::1;::::0;;;;;;;;;::::1;10406:173:::0;:::o;11960:31::-;;;;:::o;15430:373::-;9564:24;9577:10;9564:12;:24::i;:::-;9556:48;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;-1:-1:-1;;;9556:48:0;;;;;;;;;;;;;;;-1:-1:-1;;;;;15527:23:0;::::1;15545:4;15527:23;::::0;::::1;::::0;:41:::1;;-1:-1:-1::0;15564:4:0::1;::::0;-1:-1:-1;;;;;15554:14:0;;::::1;15564:4:::0;::::1;15554:14;;15527:41;15519:50;;;::::0;::::1;;-1:-1:-1::0;;;;;15580:24:0;::::1;;::::0;;;:16:::1;:24;::::0;;;;:33;;-1:-1:-1;;15580:33:0::1;::::0;::::1;::::0;::::1;::::0;;;::::1;::::0;;;15634:162:::1;;15659:19;::::0;:39:::1;::::0;;-1:-1:-1;;;15659:39:0;;-1:-1:-1;;;;;15659:39:0;;::::1;;::::0;::::1;::::0;:19:::1;:39:::0;;;;;;;;:19;::::1;::::0;:28:::1;::::0;:39;;;;;:19;;:39;;;;;;:19;;:39;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15634:162;;;15729:19;::::0;-1:-1:-1;;;;;15766:17:0;;::::1;15729:19;15766:17:::0;;;:9:::1;:17;::::0;;;;;;15729:55;;-1:-1:-1;;;15729:55:0;;::::1;::::0;::::1;::::0;;;;;;;;;:19;;;::::1;::::0;:28:::1;::::0;:55;;;;;;;;;;:19;;:55;::::1;;::::0;::::1;;;;::::0;::::1;15634:162;15430:373:::0;;:::o;11871:24::-;;;-1:-1:-1;;;;;11871:24:0;;:::o;10180:107::-;-1:-1:-1;;;;;10260:19:0;10236:4;10260:19;;;:14;:19;;;;;;;;;10180:107::o;425:190::-;511:7;547:12;539:6;;;;531:29;;;;-1:-1:-1;;;531:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;583:5:0;;;425:190::o;19541:2191::-;19658:16;;19633:4;;19658:16;;;:67;;-1:-1:-1;;;;;;19679:19:0;;;;;;:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;19702:22:0;;;;;;:11;:22;;;;;;;;19679:45;19650:99;;;;;-1:-1:-1;;;19650:99:0;;;;;;;;;;;;-1:-1:-1;;;19650:99:0;;;;;;;;;;;;;;;19763:16;;;;19760:73;;;19789:41;19804:6;19812:9;19823:6;19789:14;:41::i;:::-;19782:48;;;;19760:73;19849:15;;;;:40;;;;;19888:1;19868:17;:15;:17::i;:::-;:21;19849:40;19845:448;;;-1:-1:-1;;;;;19928:32:0;;;;;;:24;:32;;;;;;;;:41;;;:106;;-1:-1:-1;;;;;;19990:35:0;;;;;;:24;:35;;;;;;;;:44;19928:106;:144;;;;-1:-1:-1;20068:4:0;;-1:-1:-1;;;;;20055:17:0;;;20068:4;;20055:17;;19928:144;19906:376;;;20107:12;20123:20;20133:9;20123;:20::i;:::-;20107:36;;20190:17;:15;:17::i;:::-;20180:6;20170:7;:16;:37;;20162:104;;;;-1:-1:-1;;;20162:104:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19906:376;;20333:10;;20318:12;:25;20299:16;:44;-1:-1:-1;;;;;20351:16:0;;-1:-1:-1;20351:16:0;;;:8;:16;;;;;;;;:47;;;;;20390:8;;20371:16;;:27;20351:47;20348:135;;;20418:49;;-1:-1:-1;;;20418:49:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20348:135;20512:4;;-1:-1:-1;;;;;20512:4:0;20498:10;:18;;;;:39;;-1:-1:-1;20521:16:0;;;;20520:17;20498:39;:64;;;;-1:-1:-1;20541:21:0;;;;;;;20498:64;:109;;;;-1:-1:-1;20594:13:0;;20584:4;20566:24;;;;:9;:24;;;;;;:41;;20498:109;20495:136;;;20615:10;:8;:10::i;:::-;20659:16;;20735:53;;;;;;;;;;;-1:-1:-1;;;20735:53:0;;;;;;;;-1:-1:-1;;;;;20735:17:0;;20643:12;20735:17;;;:9;:17;;;;;;;;20659:16;;;;20658:17;;20735:53;;20757:6;;20735:21;:53::i;:::-;-1:-1:-1;;;;;20715:17:0;;;;;;:9;:17;;;;;;;;:73;;;;20804:11;:19;;;;;;;:45;;-1:-1:-1;;;;;;20827:22:0;;;;;;:11;:22;;;;;;;;20804:45;20801:92;;;-1:-1:-1;20876:5:0;20801:92;20966:4;;-1:-1:-1;;;;;20956:14:0;;;20966:4;;20956:14;;;;:35;;-1:-1:-1;20987:4:0;;-1:-1:-1;;;;;20974:17:0;;;20987:4;;20974:17;;20956:35;20953:82;;;-1:-1:-1;21018:5:0;20953:82;21077:6;21096:88;;;;21137:35;21146:6;21154:9;21165:6;21137:8;:35::i;:::-;21123:49;;21096:88;-1:-1:-1;;;;;21219:20:0;;;;;;:9;:20;;;;;;:37;;21244:11;21219:24;:37::i;:::-;-1:-1:-1;;;;;21196:20:0;;;;;;;:9;:20;;;;;;;;:60;;;;21302:24;;;;;:16;:24;;;;;;;21298:127;;21347:19;;-1:-1:-1;;;;;21384:17:0;;;21347:19;21384:17;;;:9;:17;;;;;;;21347:55;;-1:-1:-1;;;21347:55:0;;;;;;;;;;;;;;:19;;;;;:28;;:55;;;;;;;;;;:19;;:55;;;;;;;;;;;;;;;;;;;;;;;;;21343:71;;-1:-1:-1;;;;;21441:27:0;;;;;;:16;:27;;;;;;;;21437:137;;21489:19;;-1:-1:-1;;;;;21529:20:0;;;21489:19;21529:20;;;:9;:20;;;;;;;21489:61;;-1:-1:-1;;;21489:61:0;;;;;;;;;;;;;;:19;;;;;:28;;:61;;;;;;;;;;:19;;:61;;;;;;;;;;;;;;;;;;;;;;;;;21485:77;;21590:19;;21618:14;;21590:43;;;-1:-1:-1;;;;;;21590:43:0;;;;;;;;;;-1:-1:-1;;;;;21590:19:0;;;;:27;;:43;;;;;:19;;:43;;;;;;;;:19;;:43;;;;;;;;;;;;;;;;;;;;;;;;;21586:59;21679:9;-1:-1:-1;;;;;21662:40:0;21671:6;-1:-1:-1;;;;;21662:40:0;-1:-1:-1;;;;;;;;;;;21690:11:0;21662:40;;;;;;;;;;;;;;;;;;-1:-1:-1;21720:4:0;;19541:2191;-1:-1:-1;;;;;19541:2191:0:o;281:136::-;339:7;366:43;370:1;373;366:43;;;;;;;;;;;;;;;;;:3;:43::i;623:224::-;681:7;705:6;701:25;;-1:-1:-1;722:1:0;715:8;;701:25;748:5;;;752:1;748;:5;:1;772:5;;;;;:10;764:56;;;;-1:-1:-1;;;764:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;855:132;913:7;940:39;944:1;947;940:39;;;;;;;;;;;;;;;;;:3;:39::i;21744:330::-;21874:53;;;;;;;;;;;-1:-1:-1;;;21874:53:0;;;;;;;;-1:-1:-1;;;;;21874:17:0;;21837:4;21874:17;;;:9;:17;;;;;;;:53;;21896:6;;21874:21;:53::i;:::-;-1:-1:-1;;;;;21854:17:0;;;;;;;:9;:17;;;;;;:73;;;;21961:20;;;;;;;:32;;21986:6;21961:24;:32::i;:::-;-1:-1:-1;;;;;21938:20:0;;;;;;;:9;:20;;;;;;;;;:55;;;;22009:35;;;;;;;21938:20;;22009:35;;;;-1:-1:-1;;;;;;;;;;;22009:35:0;;;;;;;;-1:-1:-1;22062:4:0;21744:330;;;;;:::o;22757:1568::-;12529:16;:23;;-1:-1:-1;;12529:23:0;12548:4;12529:23;;;22863:4:::1;12529:16:::0;22845:24;;;:9:::1;:24;::::0;;;;;22944:9:::1;::::0;22926:12:::1;::::0;22845:24;;12529:16;22906:55:::1;::::0;22959:1:::1;::::0;22906:48:::1;::::0;22944:9;22906:48;;22845:24;;22906:19:::1;:33::i;:55::-;22880:81:::0;-1:-1:-1;22972:20:0::1;22995:36;:15:::0;22880:81;22995:19:::1;:36::i;:::-;23068:16;::::0;;23082:1:::1;23068:16:::0;;;;;::::1;::::0;;22972:59;;-1:-1:-1;23044:21:0::1;::::0;23068:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;23068:16:0::1;23044:40;;23113:4;23095;23100:1;23095:7;;;;;;;;-1:-1:-1::0;;;;;23095:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;23139:6:::1;::::0;:13:::1;::::0;;-1:-1:-1;;;23139:13:0;;;;:6;;;::::1;::::0;:11:::1;::::0;:13:::1;::::0;;::::1;::::0;23095:7;;23139:13;;;;;:6;:13;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;23139:13:0;23129:7;;:4;;23134:1:::1;::::0;23129:7;::::1;;;;;;;;;;:23;-1:-1:-1::0;;;;;23129:23:0::1;;;-1:-1:-1::0;;;;;23129:23:0::1;;;::::0;::::1;23165:6;;;;;;;;;-1:-1:-1::0;;;;;23165:6:0::1;-1:-1:-1::0;;;;;23165:57:0::1;;23237:12;23264:1;23280:4;23307;23327:15;23165:188;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;;;;23165:188:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;;::::1;::::0;;;::::1;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;23456:12:0::1;::::0;23386:21:::1;::::0;-1:-1:-1;23366:17:0::1;::::0;-1:-1:-1;23442:34:0::1;::::0;23456:19:::1;::::0;23473:1:::1;23456:16;:19::i;:::-;23442:9;::::0;;:13:::1;:34::i;:::-;23420:56;;23497:26;23526:51;23575:1;23526:44;23558:11;23526:27;23540:12;;23526:9;:13;;:27;;;;:::i;:51::-;23497:80;;23588:27;23618:45;23651:11;23618:28;23632:13;;23618:9;:13;;:28;;;;:::i;:45::-;23588:75:::0;-1:-1:-1;23674:21:0::1;23698:58;23588:75:::0;23698:33:::1;:9:::0;23712:18;23698:13:::1;:33::i;:58::-;23674:82;;23773:19;;;;;;;;;-1:-1:-1::0;;;;;23773:19:0::1;-1:-1:-1::0;;;;;23773:27:0::1;;23808:19;23773:57;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;23769:73:::0;23873:14:::1;::::0;:18;23870:91:::1;;23915:9;::::0;23907:42:::1;::::0;-1:-1:-1;;;;;23915:9:0;;::::1;::::0;23907:42;::::1;;;::::0;23935:13;;23915:9:::1;23907:42:::0;23915:9;23907:42;23935:13;23915:9;23907:42;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;23870:91;23976:19:::0;;23973:345:::1;;24011:6;::::0;24185:4:::1;::::0;24011:227:::1;::::0;;-1:-1:-1;;;24011:227:0;;24087:4:::1;24011:227;::::0;::::1;::::0;;;;;;;:6:::1;:227:::0;;;;;;;;;;-1:-1:-1;;;;;24185:4:0;;::::1;24011:227:::0;;;;24208:15:::1;24011:227:::0;;;;;;:6;;;::::1;::::0;:22:::1;::::0;24041:18;;24011:227;;;;;::::1;::::0;;;;;;;;;24041:18;24011:6;:227;::::1;;::::0;::::1;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;::::0;::::1;;-1:-1:-1::0;;24011:227:0;24258:48;;;;;24011:227:::1;24258:48:::0;::::1;::::0;;;;;::::1;::::0;;;;;;;;;::::1;23973:345;-1:-1:-1::0;;12575:16:0;:24;;-1:-1:-1;;12575:24:0;;;-1:-1:-1;;;;;;;22757:1568:0:o;22082:667::-;22169:7;22257:17;22277:41;22303:14;;22277:21;22288:9;;22277:6;:10;;:21;;;;:::i;:41::-;-1:-1:-1;;;;;22335:23:0;;;;;;:15;:23;;;;;;22257:61;;-1:-1:-1;22335:23:0;;;:67;;-1:-1:-1;;;;;;22376:26:0;;;;;;:15;:26;;;;;;;;22335:67;22331:161;;;22459:20;;22436:44;;:18;:9;22450:3;22436:13;:18::i;:44::-;22423:57;;22331:161;22621:4;22603:24;;;;:9;:24;;;;;;:39;;22632:9;22603:28;:39::i;:::-;22594:4;22576:24;;;;:9;:24;;;;;;;;;:66;;;;22658:42;;;;;;;22594:4;;-1:-1:-1;;;;;22658:42:0;;;-1:-1:-1;;;;;;;;;;;22658:42:0;;;;;;;;;22720:21;:6;22731:9;22720:10;:21::i;:::-;22713:28;22082:667;-1:-1:-1;;;;;22082:667:0:o;94:179::-;152:7;184:5;;;208:6;;;;200:46;;;;;-1:-1:-1;;;200:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;995:189;1081:7;1116:12;1109:5;1101:28;;;;-1:-1:-1;;;1101:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1140:9;1156:1;1152;:5;;;;;;;995:189;-1:-1:-1;;;;;995:189:0:o
Swarm Source
ipfs://a726e8724530d71e645a9c1c59f148431433d2ffde8ad3bea4944d43a59423f9
Loading...
Loading
Loading...
Loading
OVERVIEW
A token and application that will incentivize safe driving and help create a more safe road for people around the world. People can earn $GDRT rewards to drive the speed limit.Loading...
Loading
Multichain Portfolio | 26 Chains
Chain | Token | Portfolio % | Price | Amount | Value |
---|---|---|---|---|---|
CRONOS | Cronos (CRO) | 100.00% | $0.079374 | 0.5213 | $0.041376 |
[ Download: CSV Export ]
[ Download: CSV Export ]
A contract address hosts a smart contract, which is a set of code stored on the blockchain that runs when predetermined conditions are met. Learn more about addresses in our Knowledge Base.