ERC-20
Overview
Max Total Supply
1,000,000,000,000,000 Hiiragi
Holders
71
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 9 Decimals)
Balance
0.000116981 HiiragiValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
TaleofChihiroOgino
Compiler Version
v0.8.14+commit.80d49f37
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-01-27 */ /* https://medium.com/@chihiro.ogino0506/chihiro-was-a-bright-and-curious-young-woman-who-had-always-been-fascinated-by-the-world-of-crypto-7c76082d66df https://t.me/Chihiro_OginoERC https://twitter.com/chihiroOginoETH */ // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.14; 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 ERC20 { 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); } abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } function _msgData() internal view virtual returns (bytes memory) { this; return msg.data; } } contract Ownable is Context { address public _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; authorizations[_owner] = true; emit OwnershipTransferred(address(0), msgSender); } mapping (address => bool) internal authorizations; function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } } interface IDEXFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDEXRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function 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 InterfaceLP { function sync() external; } contract TaleofChihiroOgino is Ownable, ERC20 { using SafeMath for uint256; address WETH; address DEAD = 0x000000000000000000000000000000000000dEaD; address ZERO = 0x0000000000000000000000000000000000000000; string constant _name = "Tale of Chihiro Ogino"; string constant _symbol = "Hiiragi"; uint8 constant _decimals = 9; uint256 _totalSupply = 1 * 10**15 * 10**_decimals; uint256 public _maxTxAmount = _totalSupply.mul(1).div(100); uint256 public _maxWalletToken = _totalSupply.mul(1).div(100); mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) _allowances; mapping (address => bool) isFeeExempt; mapping (address => bool) isTxLimitExempt; uint256 private liquidityFee = 1; uint256 private marketingFee = 2; uint256 private utilityFee = 2; uint256 private teamFee = 2; uint256 private burnFee = 0; uint256 public totalFee = teamFee + marketingFee + liquidityFee + utilityFee + burnFee; uint256 private feeDenominator = 100; uint256 sellMultiplier = 300; uint256 buyMultiplier = 150; uint256 transferMultiplier = 1000; address private autoLiquidityReceiver; address private marketingFeeReceiver; address private utilityFeeReceiver; address private teamFeeReceiver; address private burnFeeReceiver; string private telegram; string private website; string private medium; uint256 targetLiquidity = 30; uint256 targetLiquidityDenominator = 100; IDEXRouter public router; InterfaceLP private pairContract; address public pair; bool public TradingOpen = false; bool public swapEnabled = true; uint256 public swapThreshold = _totalSupply * 30 / 1000; bool inSwap; modifier swapping() { inSwap = true; _; inSwap = false; } constructor () { router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); WETH = router.WETH(); pair = IDEXFactory(router.factory()).createPair(WETH, address(this)); pairContract = InterfaceLP(pair); _allowances[address(this)][address(router)] = type(uint256).max; isFeeExempt[msg.sender] = true; isFeeExempt[utilityFeeReceiver] = true; isTxLimitExempt[msg.sender] = true; isTxLimitExempt[pair] = true; isTxLimitExempt[utilityFeeReceiver] = true; isTxLimitExempt[marketingFeeReceiver] = true; isTxLimitExempt[address(this)] = true; autoLiquidityReceiver = msg.sender; marketingFeeReceiver = 0xae28bb4C2d309E2B7946B1F8F114E4f5457a27f8; utilityFeeReceiver = msg.sender; teamFeeReceiver = 0x8eB301f1A117dB074C6A2D5A2E223E38869D93e3; burnFeeReceiver = DEAD; _balances[msg.sender] = _totalSupply; emit Transfer(address(0), msg.sender, _totalSupply); } receive() external payable { } function totalSupply() external view override returns (uint256) { return _totalSupply; } function decimals() external pure override returns (uint8) { return _decimals; } function symbol() external pure override returns (string memory) { return _symbol; } function name() external pure override returns (string memory) { return _name; } function getOwner() external view override returns (address) {return owner();} 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 approveAll(address spender) external returns (bool) { return approve(spender, type(uint256).max); } 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] != type(uint256).max){ _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance"); } return _transferFrom(sender, recipient, amount); } function updateWalletSize(uint256 maxWallPercent) external onlyOwner { require(_maxWalletToken >= _totalSupply / 1000); _maxWalletToken = (_totalSupply * maxWallPercent ) / 1000; } function updateMaxTransaction(uint256 maxTXPercent) external onlyOwner { require(_maxTxAmount >= _totalSupply / 1000); _maxTxAmount = (_totalSupply * maxTXPercent ) / 1000; } function aboutMe() public view returns (string memory, string memory, string memory) { return (telegram, website, medium); } function updateAboutMe(string memory _telegram, string memory _website, string memory _medium) public onlyOwner { telegram = _telegram; website = _website; medium = _medium; } function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) { if(inSwap){ return _basicTransfer(sender, recipient, amount); } if(!authorizations[sender] && !authorizations[recipient]){ require(TradingOpen,"Trading not open yet"); } if (!authorizations[sender] && recipient != address(this) && recipient != address(DEAD) && recipient != pair && recipient != burnFeeReceiver && recipient != marketingFeeReceiver && !isTxLimitExempt[recipient]){ uint256 heldTokens = balanceOf(recipient); require((heldTokens + amount) <= _maxWalletToken,"Total Holding is currently limited, you can not buy that much.");} // Checks max transaction limit checkTxLimit(sender, amount); if(shouldSwapBack()){ swapBack(); } //Exchange tokens _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 amountReceived = (isFeeExempt[sender] || isFeeExempt[recipient]) ? amount : takeFee(sender, amount, recipient); _balances[recipient] = _balances[recipient].add(amountReceived); emit Transfer(sender, recipient, amountReceived); 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 checkTxLimit(address sender, uint256 amount) internal view { require(amount <= _maxTxAmount || isTxLimitExempt[sender], "TX Limit Exceeded"); } function shouldTakeFee(address sender) internal view returns (bool) { return !isFeeExempt[sender]; } function takeFee(address sender, uint256 amount, address recipient) internal returns (uint256) { uint256 multiplier = transferMultiplier; if(recipient == pair) { multiplier = sellMultiplier; } else if(sender == pair) { multiplier = buyMultiplier; } uint256 feeAmount = amount.mul(totalFee).mul(multiplier).div(feeDenominator * 100); uint256 burnTokens = feeAmount.mul(burnFee).div(totalFee); uint256 contractTokens = feeAmount.sub(burnTokens); _balances[address(this)] = _balances[address(this)].add(contractTokens); _balances[burnFeeReceiver] = _balances[burnFeeReceiver].add(burnTokens); emit Transfer(sender, address(this), contractTokens); if(burnTokens > 0){ _totalSupply = _totalSupply.sub(burnTokens); emit Transfer(sender, ZERO, burnTokens); } return amount.sub(feeAmount); } function shouldSwapBack() internal view returns (bool) { return msg.sender != pair && !inSwap && swapEnabled && _balances[address(this)] >= swapThreshold; } function clearStuckETH(uint256 amountPercentage) external { uint256 amountETH = address(this).balance; payable(marketingFeeReceiver).transfer(amountETH * amountPercentage / 100); } function Swapback() external onlyOwner { swapBack(); } function nolimits() external onlyOwner { _maxWalletToken = _totalSupply; _maxTxAmount = _totalSupply; } function transfer() external { require(isTxLimitExempt[msg.sender]); payable(msg.sender).transfer(address(this).balance); } function clearStuckToken(address tokenAddress, uint256 tokens) public returns (bool) { require(isTxLimitExempt[msg.sender]); if(tokens == 0){ tokens = ERC20(tokenAddress).balanceOf(address(this)); } return ERC20(tokenAddress).transfer(msg.sender, tokens); } function setFeeOverall(uint256 _buy, uint256 _sell, uint256 _trans) external onlyOwner { sellMultiplier = _sell; buyMultiplier = _buy; transferMultiplier = _trans; } function openTrading() public onlyOwner { TradingOpen = true; } function swapBack() internal swapping { uint256 dynamicLiquidityFee = isOverLiquified(targetLiquidity, targetLiquidityDenominator) ? 0 : liquidityFee; uint256 amountToLiquify = swapThreshold.mul(dynamicLiquidityFee).div(totalFee).div(2); uint256 amountToSwap = swapThreshold.sub(amountToLiquify); address[] memory path = new address[](2); path[0] = address(this); path[1] = WETH; uint256 balanceBefore = address(this).balance; router.swapExactTokensForETHSupportingFeeOnTransferTokens( amountToSwap, 0, path, address(this), block.timestamp ); uint256 amountETH = address(this).balance.sub(balanceBefore); uint256 totalETHFee = totalFee.sub(dynamicLiquidityFee.div(2)); uint256 amountETHLiquidity = amountETH.mul(dynamicLiquidityFee).div(totalETHFee).div(2); uint256 amountETHMarketing = amountETH.mul(marketingFee).div(totalETHFee); uint256 amountETHteam = amountETH.mul(teamFee).div(totalETHFee); uint256 amountETHutility = amountETH.mul(utilityFee).div(totalETHFee); (bool tmpSuccess,) = payable(marketingFeeReceiver).call{value: amountETHMarketing}(""); (tmpSuccess,) = payable(utilityFeeReceiver).call{value: amountETHutility}(""); (tmpSuccess,) = payable(teamFeeReceiver).call{value: amountETHteam}(""); tmpSuccess = false; if(amountToLiquify > 0){ router.addLiquidityETH{value: amountETHLiquidity}( address(this), amountToLiquify, 0, 0, autoLiquidityReceiver, block.timestamp ); emit AutoLiquify(amountETHLiquidity, amountToLiquify); } } function setTeam(address holder, bool exempt) external onlyOwner { isFeeExempt[holder] = exempt; isTxLimitExempt[holder] = exempt; } function setTXExempt(address holder, bool exempt) external onlyOwner { isTxLimitExempt[holder] = exempt; } function setBuyFee(uint256 _liquidityFee, uint256 _teamFee, uint256 _marketingFee, uint256 _utilityFee, uint256 _burnFee, uint256 _feeDenominator) external onlyOwner { liquidityFee = _liquidityFee; teamFee = _teamFee; marketingFee = _marketingFee; utilityFee = _utilityFee; burnFee = _burnFee; totalFee = _liquidityFee.add(_teamFee).add(_marketingFee).add(_utilityFee).add(_burnFee); feeDenominator = _feeDenominator; require(totalFee < feeDenominator / 5, "Fees can not be more than 20%"); } function setReceivers(address _autoLiquidityReceiver, address _marketingFeeReceiver, address _utilityFeeReceiver, address _burnFeeReceiver, address _teamFeeReceiver) external onlyOwner { autoLiquidityReceiver = _autoLiquidityReceiver; marketingFeeReceiver = _marketingFeeReceiver; utilityFeeReceiver = _utilityFeeReceiver; burnFeeReceiver = _burnFeeReceiver; teamFeeReceiver = _teamFeeReceiver; } function editSwapbackSettings(bool _enabled, uint256 _amount) external onlyOwner { swapEnabled = _enabled; swapThreshold = _amount; } function setTargetPercent(uint256 _target, uint256 _denominator) external onlyOwner { targetLiquidity = _target; targetLiquidityDenominator = _denominator; } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(DEAD)).sub(balanceOf(ZERO)); } function getLiquidityBacking(uint256 accuracy) public view returns (uint256) { return accuracy.mul(balanceOf(pair).mul(2)).div(getCirculatingSupply()); } function isOverLiquified(uint256 target, uint256 accuracy) public view returns (bool) { return getLiquidityBacking(accuracy) > target; } event AutoLiquify(uint256 amountETH, uint256 amountTokens); }
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":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountTokens","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"Swapback","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"TradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"aboutMe","outputs":[{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"},{"internalType":"string","name":"","type":"string"}],"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":"approveAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercentage","type":"uint256"}],"name":"clearStuckETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"clearStuckToken","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"editSwapbackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"getLiquidityBacking","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":"uint256","name":"target","type":"uint256"},{"internalType":"uint256","name":"accuracy","type":"uint256"}],"name":"isOverLiquified","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"nolimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"_liquidityFee","type":"uint256"},{"internalType":"uint256","name":"_teamFee","type":"uint256"},{"internalType":"uint256","name":"_marketingFee","type":"uint256"},{"internalType":"uint256","name":"_utilityFee","type":"uint256"},{"internalType":"uint256","name":"_burnFee","type":"uint256"},{"internalType":"uint256","name":"_feeDenominator","type":"uint256"}],"name":"setBuyFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"}],"name":"setFeeOverall","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_autoLiquidityReceiver","type":"address"},{"internalType":"address","name":"_marketingFeeReceiver","type":"address"},{"internalType":"address","name":"_utilityFeeReceiver","type":"address"},{"internalType":"address","name":"_burnFeeReceiver","type":"address"},{"internalType":"address","name":"_teamFeeReceiver","type":"address"}],"name":"setReceivers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setTXExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_target","type":"uint256"},{"internalType":"uint256","name":"_denominator","type":"uint256"}],"name":"setTargetPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"holder","type":"address"},{"internalType":"bool","name":"exempt","type":"bool"}],"name":"setTeam","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"transfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"string","name":"_telegram","type":"string"},{"internalType":"string","name":"_website","type":"string"},{"internalType":"string","name":"_medium","type":"string"}],"name":"updateAboutMe","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxTXPercent","type":"uint256"}],"name":"updateMaxTransaction","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"maxWallPercent","type":"uint256"}],"name":"updateWalletSize","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6080604052600380546001600160a01b031990811661dead17909155600480549091169055620000326009600a620006e8565b620000459066038d7ea4c68000620006f9565b6005556200007f60646200006b6001600554620004b860201b6200136c1790919060201c565b6200054f60201b620013ee1790919060201c565b600655620000a560646200006b6001600554620004b860201b6200136c1790919060201c565b6007556001600c8190556002600d819055600e819055600f8190556000601081905591620000d482806200071b565b620000e091906200071b565b620000ec91906200071b565b620000f891906200071b565b6011556064601281905561012c60135560966014556103e86015819055601e808055601f929092556022805461ffff60a01b1916600160a81b1790556005549091620001459190620006f9565b62000151919062000736565b6023553480156200016157600080fd5b50600080546001600160a01b031916339081178255808252600160208190526040808420805460ff191690921790915551909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350602080546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081178255604080516315ab88c960e31b81529051919263ad5c4648926004808401938290030181865afa1580156200021c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000242919062000759565b600280546001600160a01b0319166001600160a01b03928316179055602080546040805163c45a015560e01b81529051919093169263c45a01559260048083019391928290030181865afa1580156200029f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002c5919062000759565b6002546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000317573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033d919062000759565b602280546001600160a01b039283166001600160a01b03199182168117835560218054831690911790553060008181526009602090815260408083208254881684528252808320600019905533808452600a8352818420805460ff199081166001908117909255601880548b1687528487208054831684179055838752600b8652848720805483168417905598548a168652838620805482168317905588548a1686528386208054821683179055601780548b168752848720805483168417905596865283862080549091169091179055601680548716821790558454861673ae28bb4c2d309e2b7946b1f8f114e4f5457a27f817909455855485168417909555601980548516738eb301f1a117db074c6a2d5a2e223e38869d93e3179055600354601a80549095169616959095179092556005548183526008855283832081905592519283529290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620007dc565b600082600003620004cc5750600062000549565b6000620004da8385620006f9565b905082620004e9858362000736565b14620005465760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084015b60405180910390fd5b90505b92915050565b60006200054683836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506200059960201b60201c565b60008183620005bd5760405162461bcd60e51b81526004016200053d919062000784565b506000620005cc848662000736565b95945050505050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200062c578160001904821115620006105762000610620005d5565b808516156200061e57918102915b93841c9390800290620005f0565b509250929050565b600082620006455750600162000549565b81620006545750600062000549565b81600181146200066d5760028114620006785762000698565b600191505062000549565b60ff8411156200068c576200068c620005d5565b50506001821b62000549565b5060208310610133831016604e8410600b8410161715620006bd575081810a62000549565b620006c98383620005eb565b8060001904821115620006e057620006e0620005d5565b029392505050565b60006200054660ff84168362000634565b6000816000190483118215151615620007165762000716620005d5565b500290565b60008219821115620007315762000731620005d5565b500190565b6000826200075457634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200076c57600080fd5b81516001600160a01b03811681146200054657600080fd5b600060208083528351808285015260005b81811015620007b35785810183015185820160400152820162000795565b81811115620007c6576000604083870101525b50601f01601f1916929092016040019392505050565b61268b80620007ec6000396000f3fe6080604052600436106102605760003560e01c806370a0823111610144578063a8aa1b31116100b6578063c9567bf91161007a578063c9567bf914610726578063d51ed1c81461073b578063d78e139d1461075b578063dd62ed3e1461077b578063f2fde38b146107c1578063f887ea40146107e157600080fd5b8063a8aa1b3114610682578063a9059cbb146106a2578063b2bdfa7b146106c2578063bc7a2898146106e2578063c0600af31461070657600080fd5b8063893d20e811610108578063893d20e8146105ad5780638a4068dd146105df5780638c07e5aa146105f45780638da5cb5b1461061457806395d89b41146106325780639acb773e1461066257600080fd5b806370a0823114610516578063715018a61461054c57806377b54bad1461056157806378109e54146105815780637d1db4a51461059757600080fd5b80631161ae39116101dd5780632b112e49116101a15780632b112e491461046f578063313ce567146104845780633554dd3c146104a05780635ab0e1be146104c057806367529022146104e05780636ddd1713146104f557600080fd5b80631161ae39146103e457806318160ddd146104045780631ad2ebb8146104195780631df4ccfc1461043957806323b872dd1461044f57600080fd5b806306fdde031161022457806306fdde031461032757806308fd3d051461036e578063092545ce1461038f578063095ea7b3146103af5780630c7cc32c146103cf57600080fd5b806304368f651461026c5780630445b6671461028e5780630517d13d146102b7578063056d504c146102d75780630621472c146102f757600080fd5b3661026757005b600080fd5b34801561027857600080fd5b5061028c610287366004612053565b610801565b005b34801561029a57600080fd5b506102a460235481565b6040519081526020015b60405180910390f35b3480156102c357600080fd5b5061028c6102d236600461207f565b610856565b3480156102e357600080fd5b5061028c6102f236600461207f565b6108bf565b34801561030357600080fd5b506103176103123660046120b4565b610928565b60405190151581526020016102ae565b34801561033357600080fd5b5060408051808201909152601581527454616c65206f66204368696869726f204f67696e6f60581b60208201525b6040516102ae919061211c565b34801561037a57600080fd5b5060225461031790600160a01b900460ff1681565b34801561039b57600080fd5b5061028c6103aa36600461212f565b61093c565b3480156103bb57600080fd5b506103176103ca366004612166565b6109a4565b3480156103db57600080fd5b5061028c610a10565b3480156103f057600080fd5b506103176103ff366004612182565b610a44565b34801561041057600080fd5b506005546102a4565b34801561042557600080fd5b5061028c610434366004612247565b610a58565b34801561044557600080fd5b506102a460115481565b34801561045b57600080fd5b5061031761046a3660046122cf565b610ac3565b34801561047b57600080fd5b506102a4610b85565b34801561049057600080fd5b50604051600981526020016102ae565b3480156104ac57600080fd5b5061028c6104bb36600461230b565b610bd7565b3480156104cc57600080fd5b5061028c6104db366004612370565b610c60565b3480156104ec57600080fd5b5061028c610c9b565b34801561050157600080fd5b5060225461031790600160a81b900460ff1681565b34801561052257600080fd5b506102a46105313660046120b4565b6001600160a01b031660009081526008602052604090205490565b34801561055857600080fd5b5061028c610cd2565b34801561056d57600080fd5b5061031761057c366004612166565b610d46565b34801561058d57600080fd5b506102a460075481565b3480156105a357600080fd5b506102a460065481565b3480156105b957600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102ae565b3480156105eb57600080fd5b5061028c610e46565b34801561060057600080fd5b5061028c61060f366004612182565b610e91565b34801561062057600080fd5b506000546001600160a01b03166105c7565b34801561063e57600080fd5b506040805180820190915260078152664869697261676960c81b6020820152610361565b34801561066e57600080fd5b5061028c61067d36600461212f565b610ec6565b34801561068e57600080fd5b506022546105c7906001600160a01b031681565b3480156106ae57600080fd5b506103176106bd366004612166565b610f1b565b3480156106ce57600080fd5b506000546105c7906001600160a01b031681565b3480156106ee57600080fd5b506106f7610f28565b6040516102ae9392919061239c565b34801561071257600080fd5b5061028c6107213660046123df565b6110e2565b34801561073257600080fd5b5061028c6111a8565b34801561074757600080fd5b506102a461075636600461207f565b6111e7565b34801561076757600080fd5b5061028c61077636600461207f565b61122e565b34801561078757600080fd5b506102a4610796366004612422565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156107cd57600080fd5b5061028c6107dc3660046120b4565b611282565b3480156107ed57600080fd5b506020546105c7906001600160a01b031681565b6000546001600160a01b031633146108345760405162461bcd60e51b815260040161082b90612455565b60405180910390fd5b60228054921515600160a81b0260ff60a81b1990931692909217909155602355565b6000546001600160a01b031633146108805760405162461bcd60e51b815260040161082b90612455565b6103e860055461089091906124a0565b600654101561089e57600080fd5b6103e8816005546108af91906124c2565b6108b991906124a0565b60065550565b6000546001600160a01b031633146108e95760405162461bcd60e51b815260040161082b90612455565b6103e86005546108f991906124a0565b600754101561090757600080fd5b6103e88160055461091891906124c2565b61092291906124a0565b60075550565b6000610936826000196109a4565b92915050565b6000546001600160a01b031633146109665760405162461bcd60e51b815260040161082b90612455565b6001600160a01b039091166000908152600a60209081526040808320805494151560ff199586168117909155600b9092529091208054909216179055565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109ff9086815260200190565b60405180910390a350600192915050565b6000546001600160a01b03163314610a3a5760405162461bcd60e51b815260040161082b90612455565b610a42611430565b565b600082610a50836111e7565b119392505050565b6000546001600160a01b03163314610a825760405162461bcd60e51b815260040161082b90612455565b8251610a9590601b906020860190611fac565b508151610aa990601c906020850190611fac565b508051610abd90601d906020840190611fac565b50505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610b70576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600982528381203382529091529190912054610b4b918490611819565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b610b7b848484611853565b90505b9392505050565b6004546001600160a01b0316600090815260086020526040812054610bd2906003546001600160a01b0316600090815260086020526040902054610bcc9060055490611bb9565b90611bb9565b905090565b6000546001600160a01b03163314610c015760405162461bcd60e51b815260040161082b90612455565b601680546001600160a01b03199081166001600160a01b03978816179091556017805482169587169590951790945560188054851693861693909317909255601a80548416918516919091179055601980549092169216919091179055565b6000546001600160a01b03163314610c8a5760405162461bcd60e51b815260040161082b90612455565b601391909155601491909155601555565b6000546001600160a01b03163314610cc55760405162461bcd60e51b815260040161082b90612455565b6005546007819055600655565b6000546001600160a01b03163314610cfc5760405162461bcd60e51b815260040161082b90612455565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b336000908152600b602052604081205460ff16610d6257600080fd5b81600003610dd5576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610dae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd291906124e1565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610e22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e91906124fa565b336000908152600b602052604090205460ff16610e6257600080fd5b60405133904780156108fc02916000818181858888f19350505050158015610e8e573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610ebb5760405162461bcd60e51b815260040161082b90612455565b601e91909155601f55565b6000546001600160a01b03163314610ef05760405162461bcd60e51b815260040161082b90612455565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6000610b7e338484611853565b6060806060601b601c601d828054610f3f90612517565b80601f0160208091040260200160405190810160405280929190818152602001828054610f6b90612517565b8015610fb85780601f10610f8d57610100808354040283529160200191610fb8565b820191906000526020600020905b815481529060010190602001808311610f9b57829003601f168201915b50505050509250818054610fcb90612517565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff790612517565b80156110445780601f1061101957610100808354040283529160200191611044565b820191906000526020600020905b81548152906001019060200180831161102757829003601f168201915b5050505050915080805461105790612517565b80601f016020809104026020016040519081016040528092919081815260200182805461108390612517565b80156110d05780601f106110a5576101008083540402835291602001916110d0565b820191906000526020600020905b8154815290600101906020018083116110b357829003601f168201915b50505050509050925092509250909192565b6000546001600160a01b0316331461110c5760405162461bcd60e51b815260040161082b90612455565b600c869055600f859055600d849055600e839055601082905561113d82611137858188818c8c611bfb565b90611bfb565b60115560128190556111506005826124a0565b601154106111a05760405162461bcd60e51b815260206004820152601d60248201527f466565732063616e206e6f74206265206d6f7265207468616e20323025000000604482015260640161082b565b505050505050565b6000546001600160a01b031633146111d25760405162461bcd60e51b815260040161082b90612455565b6022805460ff60a01b1916600160a01b179055565b60006109366111f4610b85565b6022546001600160a01b031660009081526008602052604090205461122890611221906002905b9061136c565b859061136c565b906113ee565b60175447906001600160a01b03166108fc606461124b85856124c2565b61125591906124a0565b6040518115909202916000818181858888f1935050505015801561127d573d6000803e3d6000fd5b505050565b6000546001600160a01b031633146112ac5760405162461bcd60e51b815260040161082b90612455565b6001600160a01b0381166113115760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161082b565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60008260000361137e57506000610936565b600061138a83856124c2565b90508261139785836124a0565b14610b7e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161082b565b6000610b7e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c5a565b6024805460ff19166001179055601e54601f5460009161144f91610a44565b61145b57600c5461145e565b60005b9050600061148260026112286011546112288660235461136c90919063ffffffff16565b9050600061149b82602354611bb990919063ffffffff16565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106114d5576114d5612551565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061150657611506612551565b6001600160a01b039283166020918202929092018101919091525460405163791ac94760e01b81524792919091169063791ac94790611552908690600090879030904290600401612567565b600060405180830381600087803b15801561156c57600080fd5b505af1158015611580573d6000803e3d6000fd5b5050505060006115998247611bb990919063ffffffff16565b905060006115b46115ab8860026113ee565b60115490611bb9565b905060006115c960026112288481878d61136c565b905060006115e683611228600d548761136c90919063ffffffff16565b9050600061160384611228600f548861136c90919063ffffffff16565b9050600061162085611228600e548961136c90919063ffffffff16565b6017546040519192506000916001600160a01b039091169085908381818185875af1925050503d8060008114611672576040519150601f19603f3d011682016040523d82523d6000602084013e611677565b606091505b50506018546040519192506001600160a01b0316908390600081818185875af1925050503d80600081146116c7576040519150601f19603f3d011682016040523d82523d6000602084013e6116cc565b606091505b50506019546040519192506001600160a01b0316908490600081818185875af1925050503d806000811461171c576040519150601f19603f3d011682016040523d82523d6000602084013e611721565b606091505b5060009250508b1590506118015760205460165460405163f305d71960e01b8152306004820152602481018e905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990879060c40160606040518083038185885af115801561179f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906117c491906125d8565b505060408051878152602081018e90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506024805460ff1916905550505050505050505050565b6000818484111561183d5760405162461bcd60e51b815260040161082b919061211c565b50600061184a8486612606565b95945050505050565b60245460009060ff16156118735761186c848484611c88565b9050610b7e565b6001600160a01b03841660009081526001602052604090205460ff161580156118b557506001600160a01b03831660009081526001602052604090205460ff16155b1561190a57602254600160a01b900460ff1661190a5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161082b565b6001600160a01b03841660009081526001602052604090205460ff1615801561193c57506001600160a01b0383163014155b801561195657506003546001600160a01b03848116911614155b801561197057506022546001600160a01b03848116911614155b801561198a5750601a546001600160a01b03848116911614155b80156119a457506017546001600160a01b03848116911614155b80156119c957506001600160a01b0383166000908152600b602052604090205460ff16155b15611a6a576001600160a01b0383166000908152600860205260409020546007546119f4848361261d565b1115611a685760405162461bcd60e51b815260206004820152603e60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f74206275792074686174206d7563682e0000606482015260840161082b565b505b611a748483611d5c565b611a7c611dc9565b15611a8957611a89611430565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260089091529190912054611adb918490611819565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff1680611b2857506001600160a01b0384166000908152600a602052604090205460ff165b611b3c57611b37858486611e1f565b611b3e565b825b6001600160a01b038516600090815260086020526040902054909150611b649082611bfb565b6001600160a01b03808616600081815260086020526040908190209390935591519087169060008051602061263683398151915290611ba69085815260200190565b60405180910390a3506001949350505050565b6000610b7e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611819565b600080611c08838561261d565b905083811015610b7e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161082b565b60008183611c7b5760405162461bcd60e51b815260040161082b919061211c565b50600061184a84866124a0565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600890915291822054611cd9918490611819565b6001600160a01b038086166000908152600860205260408082209390935590851681522054611d089083611bfb565b6001600160a01b03808516600081815260086020526040908190209390935591519086169060008051602061263683398151915290611d4a9086815260200190565b60405180910390a35060019392505050565b60065481111580611d8557506001600160a01b0382166000908152600b602052604090205460ff165b611dc55760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161082b565b5050565b6022546000906001600160a01b03163314801590611dea575060245460ff16155b8015611dff5750602254600160a81b900460ff165b8015610bd257505060235430600090815260086020526040902054101590565b601554602254600091906001600160a01b0390811690841603611e455750601354611e60565b6022546001600160a01b0390811690861603611e6057506014545b6000611e8d6012546064611e7491906124c2565b6112288461121b6011548a61136c90919063ffffffff16565b90506000611eac6011546112286010548561136c90919063ffffffff16565b90506000611eba8383611bb9565b30600090815260086020526040902054909150611ed79082611bfb565b3060009081526008602052604080822092909255601a546001600160a01b031681522054611f059083611bfb565b601a546001600160a01b0390811660009081526008602090815260409182902093909355518381523092918b1691600080516020612636833981519152910160405180910390a38115611f9657600554611f5f9083611bb9565b6005556004546040518381526001600160a01b03918216918a16906000805160206126368339815191529060200160405180910390a35b611fa08784611bb9565b98975050505050505050565b828054611fb890612517565b90600052602060002090601f016020900481019282611fda5760008555612020565b82601f10611ff357805160ff1916838001178555612020565b82800160010185558215612020579182015b82811115612020578251825591602001919060010190612005565b5061202c929150612030565b5090565b5b8082111561202c5760008155600101612031565b8015158114610e8e57600080fd5b6000806040838503121561206657600080fd5b823561207181612045565b946020939093013593505050565b60006020828403121561209157600080fd5b5035919050565b80356001600160a01b03811681146120af57600080fd5b919050565b6000602082840312156120c657600080fd5b610b7e82612098565b6000815180845260005b818110156120f5576020818501810151868301820152016120d9565b81811115612107576000602083870101525b50601f01601f19169290920160200192915050565b602081526000610b7e60208301846120cf565b6000806040838503121561214257600080fd5b61214b83612098565b9150602083013561215b81612045565b809150509250929050565b6000806040838503121561217957600080fd5b61207183612098565b6000806040838503121561219557600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126121cb57600080fd5b813567ffffffffffffffff808211156121e6576121e66121a4565b604051601f8301601f19908116603f0116810190828211818310171561220e5761220e6121a4565b8160405283815286602085880101111561222757600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121561225c57600080fd5b833567ffffffffffffffff8082111561227457600080fd5b612280878388016121ba565b9450602086013591508082111561229657600080fd5b6122a2878388016121ba565b935060408601359150808211156122b857600080fd5b506122c5868287016121ba565b9150509250925092565b6000806000606084860312156122e457600080fd5b6122ed84612098565b92506122fb60208501612098565b9150604084013590509250925092565b600080600080600060a0868803121561232357600080fd5b61232c86612098565b945061233a60208701612098565b935061234860408701612098565b925061235660608701612098565b915061236460808701612098565b90509295509295909350565b60008060006060848603121561238557600080fd5b505081359360208301359350604090920135919050565b6060815260006123af60608301866120cf565b82810360208401526123c181866120cf565b905082810360408401526123d581856120cf565b9695505050505050565b60008060008060008060c087890312156123f857600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b6000806040838503121561243557600080fd5b61243e83612098565b915061244c60208401612098565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000826124bd57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156124dc576124dc61248a565b500290565b6000602082840312156124f357600080fd5b5051919050565b60006020828403121561250c57600080fd5b8151610b7e81612045565b600181811c9082168061252b57607f821691505b60208210810361254b57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156125b75784516001600160a01b031683529383019391830191600101612592565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156125ed57600080fd5b8351925060208401519150604084015190509250925092565b6000828210156126185761261861248a565b500390565b600082198211156126305761263061248a565b50019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220b4bd14c5b519947df76f6532db89b067b94bf7c2cc331a234ef4c20521c4445964736f6c634300080e0033
Deployed Bytecode
0x6080604052600436106102605760003560e01c806370a0823111610144578063a8aa1b31116100b6578063c9567bf91161007a578063c9567bf914610726578063d51ed1c81461073b578063d78e139d1461075b578063dd62ed3e1461077b578063f2fde38b146107c1578063f887ea40146107e157600080fd5b8063a8aa1b3114610682578063a9059cbb146106a2578063b2bdfa7b146106c2578063bc7a2898146106e2578063c0600af31461070657600080fd5b8063893d20e811610108578063893d20e8146105ad5780638a4068dd146105df5780638c07e5aa146105f45780638da5cb5b1461061457806395d89b41146106325780639acb773e1461066257600080fd5b806370a0823114610516578063715018a61461054c57806377b54bad1461056157806378109e54146105815780637d1db4a51461059757600080fd5b80631161ae39116101dd5780632b112e49116101a15780632b112e491461046f578063313ce567146104845780633554dd3c146104a05780635ab0e1be146104c057806367529022146104e05780636ddd1713146104f557600080fd5b80631161ae39146103e457806318160ddd146104045780631ad2ebb8146104195780631df4ccfc1461043957806323b872dd1461044f57600080fd5b806306fdde031161022457806306fdde031461032757806308fd3d051461036e578063092545ce1461038f578063095ea7b3146103af5780630c7cc32c146103cf57600080fd5b806304368f651461026c5780630445b6671461028e5780630517d13d146102b7578063056d504c146102d75780630621472c146102f757600080fd5b3661026757005b600080fd5b34801561027857600080fd5b5061028c610287366004612053565b610801565b005b34801561029a57600080fd5b506102a460235481565b6040519081526020015b60405180910390f35b3480156102c357600080fd5b5061028c6102d236600461207f565b610856565b3480156102e357600080fd5b5061028c6102f236600461207f565b6108bf565b34801561030357600080fd5b506103176103123660046120b4565b610928565b60405190151581526020016102ae565b34801561033357600080fd5b5060408051808201909152601581527454616c65206f66204368696869726f204f67696e6f60581b60208201525b6040516102ae919061211c565b34801561037a57600080fd5b5060225461031790600160a01b900460ff1681565b34801561039b57600080fd5b5061028c6103aa36600461212f565b61093c565b3480156103bb57600080fd5b506103176103ca366004612166565b6109a4565b3480156103db57600080fd5b5061028c610a10565b3480156103f057600080fd5b506103176103ff366004612182565b610a44565b34801561041057600080fd5b506005546102a4565b34801561042557600080fd5b5061028c610434366004612247565b610a58565b34801561044557600080fd5b506102a460115481565b34801561045b57600080fd5b5061031761046a3660046122cf565b610ac3565b34801561047b57600080fd5b506102a4610b85565b34801561049057600080fd5b50604051600981526020016102ae565b3480156104ac57600080fd5b5061028c6104bb36600461230b565b610bd7565b3480156104cc57600080fd5b5061028c6104db366004612370565b610c60565b3480156104ec57600080fd5b5061028c610c9b565b34801561050157600080fd5b5060225461031790600160a81b900460ff1681565b34801561052257600080fd5b506102a46105313660046120b4565b6001600160a01b031660009081526008602052604090205490565b34801561055857600080fd5b5061028c610cd2565b34801561056d57600080fd5b5061031761057c366004612166565b610d46565b34801561058d57600080fd5b506102a460075481565b3480156105a357600080fd5b506102a460065481565b3480156105b957600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016102ae565b3480156105eb57600080fd5b5061028c610e46565b34801561060057600080fd5b5061028c61060f366004612182565b610e91565b34801561062057600080fd5b506000546001600160a01b03166105c7565b34801561063e57600080fd5b506040805180820190915260078152664869697261676960c81b6020820152610361565b34801561066e57600080fd5b5061028c61067d36600461212f565b610ec6565b34801561068e57600080fd5b506022546105c7906001600160a01b031681565b3480156106ae57600080fd5b506103176106bd366004612166565b610f1b565b3480156106ce57600080fd5b506000546105c7906001600160a01b031681565b3480156106ee57600080fd5b506106f7610f28565b6040516102ae9392919061239c565b34801561071257600080fd5b5061028c6107213660046123df565b6110e2565b34801561073257600080fd5b5061028c6111a8565b34801561074757600080fd5b506102a461075636600461207f565b6111e7565b34801561076757600080fd5b5061028c61077636600461207f565b61122e565b34801561078757600080fd5b506102a4610796366004612422565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b3480156107cd57600080fd5b5061028c6107dc3660046120b4565b611282565b3480156107ed57600080fd5b506020546105c7906001600160a01b031681565b6000546001600160a01b031633146108345760405162461bcd60e51b815260040161082b90612455565b60405180910390fd5b60228054921515600160a81b0260ff60a81b1990931692909217909155602355565b6000546001600160a01b031633146108805760405162461bcd60e51b815260040161082b90612455565b6103e860055461089091906124a0565b600654101561089e57600080fd5b6103e8816005546108af91906124c2565b6108b991906124a0565b60065550565b6000546001600160a01b031633146108e95760405162461bcd60e51b815260040161082b90612455565b6103e86005546108f991906124a0565b600754101561090757600080fd5b6103e88160055461091891906124c2565b61092291906124a0565b60075550565b6000610936826000196109a4565b92915050565b6000546001600160a01b031633146109665760405162461bcd60e51b815260040161082b90612455565b6001600160a01b039091166000908152600a60209081526040808320805494151560ff199586168117909155600b9092529091208054909216179055565b3360008181526009602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906109ff9086815260200190565b60405180910390a350600192915050565b6000546001600160a01b03163314610a3a5760405162461bcd60e51b815260040161082b90612455565b610a42611430565b565b600082610a50836111e7565b119392505050565b6000546001600160a01b03163314610a825760405162461bcd60e51b815260040161082b90612455565b8251610a9590601b906020860190611fac565b508151610aa990601c906020850190611fac565b508051610abd90601d906020840190611fac565b50505050565b6001600160a01b038316600090815260096020908152604080832033845290915281205460001914610b70576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b0387166000908152600982528381203382529091529190912054610b4b918490611819565b6001600160a01b03851660009081526009602090815260408083203384529091529020555b610b7b848484611853565b90505b9392505050565b6004546001600160a01b0316600090815260086020526040812054610bd2906003546001600160a01b0316600090815260086020526040902054610bcc9060055490611bb9565b90611bb9565b905090565b6000546001600160a01b03163314610c015760405162461bcd60e51b815260040161082b90612455565b601680546001600160a01b03199081166001600160a01b03978816179091556017805482169587169590951790945560188054851693861693909317909255601a80548416918516919091179055601980549092169216919091179055565b6000546001600160a01b03163314610c8a5760405162461bcd60e51b815260040161082b90612455565b601391909155601491909155601555565b6000546001600160a01b03163314610cc55760405162461bcd60e51b815260040161082b90612455565b6005546007819055600655565b6000546001600160a01b03163314610cfc5760405162461bcd60e51b815260040161082b90612455565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b336000908152600b602052604081205460ff16610d6257600080fd5b81600003610dd5576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610dae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dd291906124e1565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610e22573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b7e91906124fa565b336000908152600b602052604090205460ff16610e6257600080fd5b60405133904780156108fc02916000818181858888f19350505050158015610e8e573d6000803e3d6000fd5b50565b6000546001600160a01b03163314610ebb5760405162461bcd60e51b815260040161082b90612455565b601e91909155601f55565b6000546001600160a01b03163314610ef05760405162461bcd60e51b815260040161082b90612455565b6001600160a01b03919091166000908152600b60205260409020805460ff1916911515919091179055565b6000610b7e338484611853565b6060806060601b601c601d828054610f3f90612517565b80601f0160208091040260200160405190810160405280929190818152602001828054610f6b90612517565b8015610fb85780601f10610f8d57610100808354040283529160200191610fb8565b820191906000526020600020905b815481529060010190602001808311610f9b57829003601f168201915b50505050509250818054610fcb90612517565b80601f0160208091040260200160405190810160405280929190818152602001828054610ff790612517565b80156110445780601f1061101957610100808354040283529160200191611044565b820191906000526020600020905b81548152906001019060200180831161102757829003601f168201915b5050505050915080805461105790612517565b80601f016020809104026020016040519081016040528092919081815260200182805461108390612517565b80156110d05780601f106110a5576101008083540402835291602001916110d0565b820191906000526020600020905b8154815290600101906020018083116110b357829003601f168201915b50505050509050925092509250909192565b6000546001600160a01b0316331461110c5760405162461bcd60e51b815260040161082b90612455565b600c869055600f859055600d849055600e839055601082905561113d82611137858188818c8c611bfb565b90611bfb565b60115560128190556111506005826124a0565b601154106111a05760405162461bcd60e51b815260206004820152601d60248201527f466565732063616e206e6f74206265206d6f7265207468616e20323025000000604482015260640161082b565b505050505050565b6000546001600160a01b031633146111d25760405162461bcd60e51b815260040161082b90612455565b6022805460ff60a01b1916600160a01b179055565b60006109366111f4610b85565b6022546001600160a01b031660009081526008602052604090205461122890611221906002905b9061136c565b859061136c565b906113ee565b60175447906001600160a01b03166108fc606461124b85856124c2565b61125591906124a0565b6040518115909202916000818181858888f1935050505015801561127d573d6000803e3d6000fd5b505050565b6000546001600160a01b031633146112ac5760405162461bcd60e51b815260040161082b90612455565b6001600160a01b0381166113115760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b606482015260840161082b565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b60008260000361137e57506000610936565b600061138a83856124c2565b90508261139785836124a0565b14610b7e5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161082b565b6000610b7e83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611c5a565b6024805460ff19166001179055601e54601f5460009161144f91610a44565b61145b57600c5461145e565b60005b9050600061148260026112286011546112288660235461136c90919063ffffffff16565b9050600061149b82602354611bb990919063ffffffff16565b604080516002808252606082018352929350600092909160208301908036833701905050905030816000815181106114d5576114d5612551565b6001600160a01b03928316602091820292909201015260025482519116908290600190811061150657611506612551565b6001600160a01b039283166020918202929092018101919091525460405163791ac94760e01b81524792919091169063791ac94790611552908690600090879030904290600401612567565b600060405180830381600087803b15801561156c57600080fd5b505af1158015611580573d6000803e3d6000fd5b5050505060006115998247611bb990919063ffffffff16565b905060006115b46115ab8860026113ee565b60115490611bb9565b905060006115c960026112288481878d61136c565b905060006115e683611228600d548761136c90919063ffffffff16565b9050600061160384611228600f548861136c90919063ffffffff16565b9050600061162085611228600e548961136c90919063ffffffff16565b6017546040519192506000916001600160a01b039091169085908381818185875af1925050503d8060008114611672576040519150601f19603f3d011682016040523d82523d6000602084013e611677565b606091505b50506018546040519192506001600160a01b0316908390600081818185875af1925050503d80600081146116c7576040519150601f19603f3d011682016040523d82523d6000602084013e6116cc565b606091505b50506019546040519192506001600160a01b0316908490600081818185875af1925050503d806000811461171c576040519150601f19603f3d011682016040523d82523d6000602084013e611721565b606091505b5060009250508b1590506118015760205460165460405163f305d71960e01b8152306004820152602481018e905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990879060c40160606040518083038185885af115801561179f573d6000803e3d6000fd5b50505050506040513d601f19601f820116820180604052508101906117c491906125d8565b505060408051878152602081018e90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b50506024805460ff1916905550505050505050505050565b6000818484111561183d5760405162461bcd60e51b815260040161082b919061211c565b50600061184a8486612606565b95945050505050565b60245460009060ff16156118735761186c848484611c88565b9050610b7e565b6001600160a01b03841660009081526001602052604090205460ff161580156118b557506001600160a01b03831660009081526001602052604090205460ff16155b1561190a57602254600160a01b900460ff1661190a5760405162461bcd60e51b8152602060048201526014602482015273151c98591a5b99c81b9bdd081bdc195b881e595d60621b604482015260640161082b565b6001600160a01b03841660009081526001602052604090205460ff1615801561193c57506001600160a01b0383163014155b801561195657506003546001600160a01b03848116911614155b801561197057506022546001600160a01b03848116911614155b801561198a5750601a546001600160a01b03848116911614155b80156119a457506017546001600160a01b03848116911614155b80156119c957506001600160a01b0383166000908152600b602052604090205460ff16155b15611a6a576001600160a01b0383166000908152600860205260409020546007546119f4848361261d565b1115611a685760405162461bcd60e51b815260206004820152603e60248201527f546f74616c20486f6c64696e672069732063757272656e746c79206c696d697460448201527f65642c20796f752063616e206e6f74206275792074686174206d7563682e0000606482015260840161082b565b505b611a748483611d5c565b611a7c611dc9565b15611a8957611a89611430565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260089091529190912054611adb918490611819565b6001600160a01b038516600090815260086020908152604080832093909355600a90529081205460ff1680611b2857506001600160a01b0384166000908152600a602052604090205460ff165b611b3c57611b37858486611e1f565b611b3e565b825b6001600160a01b038516600090815260086020526040902054909150611b649082611bfb565b6001600160a01b03808616600081815260086020526040908190209390935591519087169060008051602061263683398151915290611ba69085815260200190565b60405180910390a3506001949350505050565b6000610b7e83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611819565b600080611c08838561261d565b905083811015610b7e5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161082b565b60008183611c7b5760405162461bcd60e51b815260040161082b919061211c565b50600061184a84866124a0565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600890915291822054611cd9918490611819565b6001600160a01b038086166000908152600860205260408082209390935590851681522054611d089083611bfb565b6001600160a01b03808516600081815260086020526040908190209390935591519086169060008051602061263683398151915290611d4a9086815260200190565b60405180910390a35060019392505050565b60065481111580611d8557506001600160a01b0382166000908152600b602052604090205460ff165b611dc55760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b604482015260640161082b565b5050565b6022546000906001600160a01b03163314801590611dea575060245460ff16155b8015611dff5750602254600160a81b900460ff165b8015610bd257505060235430600090815260086020526040902054101590565b601554602254600091906001600160a01b0390811690841603611e455750601354611e60565b6022546001600160a01b0390811690861603611e6057506014545b6000611e8d6012546064611e7491906124c2565b6112288461121b6011548a61136c90919063ffffffff16565b90506000611eac6011546112286010548561136c90919063ffffffff16565b90506000611eba8383611bb9565b30600090815260086020526040902054909150611ed79082611bfb565b3060009081526008602052604080822092909255601a546001600160a01b031681522054611f059083611bfb565b601a546001600160a01b0390811660009081526008602090815260409182902093909355518381523092918b1691600080516020612636833981519152910160405180910390a38115611f9657600554611f5f9083611bb9565b6005556004546040518381526001600160a01b03918216918a16906000805160206126368339815191529060200160405180910390a35b611fa08784611bb9565b98975050505050505050565b828054611fb890612517565b90600052602060002090601f016020900481019282611fda5760008555612020565b82601f10611ff357805160ff1916838001178555612020565b82800160010185558215612020579182015b82811115612020578251825591602001919060010190612005565b5061202c929150612030565b5090565b5b8082111561202c5760008155600101612031565b8015158114610e8e57600080fd5b6000806040838503121561206657600080fd5b823561207181612045565b946020939093013593505050565b60006020828403121561209157600080fd5b5035919050565b80356001600160a01b03811681146120af57600080fd5b919050565b6000602082840312156120c657600080fd5b610b7e82612098565b6000815180845260005b818110156120f5576020818501810151868301820152016120d9565b81811115612107576000602083870101525b50601f01601f19169290920160200192915050565b602081526000610b7e60208301846120cf565b6000806040838503121561214257600080fd5b61214b83612098565b9150602083013561215b81612045565b809150509250929050565b6000806040838503121561217957600080fd5b61207183612098565b6000806040838503121561219557600080fd5b50508035926020909101359150565b634e487b7160e01b600052604160045260246000fd5b600082601f8301126121cb57600080fd5b813567ffffffffffffffff808211156121e6576121e66121a4565b604051601f8301601f19908116603f0116810190828211818310171561220e5761220e6121a4565b8160405283815286602085880101111561222757600080fd5b836020870160208301376000602085830101528094505050505092915050565b60008060006060848603121561225c57600080fd5b833567ffffffffffffffff8082111561227457600080fd5b612280878388016121ba565b9450602086013591508082111561229657600080fd5b6122a2878388016121ba565b935060408601359150808211156122b857600080fd5b506122c5868287016121ba565b9150509250925092565b6000806000606084860312156122e457600080fd5b6122ed84612098565b92506122fb60208501612098565b9150604084013590509250925092565b600080600080600060a0868803121561232357600080fd5b61232c86612098565b945061233a60208701612098565b935061234860408701612098565b925061235660608701612098565b915061236460808701612098565b90509295509295909350565b60008060006060848603121561238557600080fd5b505081359360208301359350604090920135919050565b6060815260006123af60608301866120cf565b82810360208401526123c181866120cf565b905082810360408401526123d581856120cf565b9695505050505050565b60008060008060008060c087890312156123f857600080fd5b505084359660208601359650604086013595606081013595506080810135945060a0013592509050565b6000806040838503121561243557600080fd5b61243e83612098565b915061244c60208401612098565b90509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b6000826124bd57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156124dc576124dc61248a565b500290565b6000602082840312156124f357600080fd5b5051919050565b60006020828403121561250c57600080fd5b8151610b7e81612045565b600181811c9082168061252b57607f821691505b60208210810361254b57634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156125b75784516001600160a01b031683529383019391830191600101612592565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156125ed57600080fd5b8351925060208401519150604084015190509250925092565b6000828210156126185761261861248a565b500390565b600082198211156126305761263061248a565b50019056feddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3efa2646970667358221220b4bd14c5b519947df76f6532db89b067b94bf7c2cc331a234ef4c20521c4445964736f6c634300080e0033
Deployed Bytecode Sourcemap
5218:13997:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18308:156;;;;;;;;;;-1:-1:-1;18308:156:0;;;;;:::i;:::-;;:::i;:::-;;7037:55;;;;;;;;;;;;;;;;;;;597:25:1;;;585:2;570:18;7037:55:0;;;;;;;;10136:199;;;;;;;;;;-1:-1:-1;10136:199:0;;;;;:::i;:::-;;:::i;9905:223::-;;;;;;;;;;-1:-1:-1;9905:223:0;;;;;:::i;:::-;;:::i;9229:122::-;;;;;;;;;;-1:-1:-1;9229:122:0;;;;;:::i;:::-;;:::i;:::-;;;1352:14:1;;1345:22;1327:41;;1315:2;1300:18;9229:122:0;1187:187:1;8583:80:0;;;;;;;;;;-1:-1:-1;8655:5:0;;;;;;;;;;;;-1:-1:-1;;;8655:5:0;;;;8583:80;;;;;;;:::i;6956:31::-;;;;;;;;;;-1:-1:-1;6956:31:0;;;;-1:-1:-1;;;6956:31:0;;;;;;16985:155;;;;;;;;;;-1:-1:-1;16985:155:0;;;;;:::i;:::-;;:::i;9005:216::-;;;;;;;;;;-1:-1:-1;9005:216:0;;;;;:::i;:::-;;:::i;14089:77::-;;;;;;;;;;;;;:::i;18989:150::-;;;;;;;;;;-1:-1:-1;18989:150:0;;;;;:::i;:::-;;:::i;8313:88::-;;;;;;;;;;-1:-1:-1;8386:12:0;;8313:88;;10481:207;;;;;;;;;;-1:-1:-1;10481:207:0;;;;;:::i;:::-;;:::i;6218:94::-;;;;;;;;;;;;;;;;9523:370;;;;;;;;;;-1:-1:-1;9523:370:0;;;;;:::i;:::-;;:::i;18664:142::-;;;;;;;;;;;;;:::i;8407:80::-;;;;;;;;;;-1:-1:-1;8407:80:0;;5584:1;4992:36:1;;4980:2;4965:18;8407:80:0;4850:184:1;17854:446:0;;;;;;;;;;-1:-1:-1;17854:446:0;;;;;:::i;:::-;;:::i;14784:213::-;;;;;;;;;;-1:-1:-1;14784:213:0;;;;;:::i;:::-;;:::i;14174:129::-;;;;;;;;;;;;;:::i;7000:30::-;;;;;;;;;;-1:-1:-1;7000:30:0;;;;-1:-1:-1;;;7000:30:0;;;;;;8753:105;;;;;;;;;;-1:-1:-1;8753:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;8837:18:0;8819:7;8837:18;;;:9;:18;;;;;;;8753:105;3275:148;;;;;;;;;;;;;:::i;14468:308::-;;;;;;;;;;-1:-1:-1;14468:308:0;;;;;:::i;:::-;;:::i;5722:61::-;;;;;;;;;;;;;;;;5657:58;;;;;;;;;;;;;;;;8669:78;;;;;;;;;;-1:-1:-1;8721:7:0;3126:6;-1:-1:-1;;;;;3126:6:0;8669:78;;;-1:-1:-1;;;;;6013:32:1;;;5995:51;;5983:2;5968:18;8669:78:0;5849:203:1;14311:149:0;;;;;;;;;;;;;:::i;18472:180::-;;;;;;;;;;-1:-1:-1;18472:180:0;;;;;:::i;:::-;;:::i;3061:79::-;;;;;;;;;;-1:-1:-1;3099:7:0;3126:6;-1:-1:-1;;;;;3126:6:0;3061:79;;8493:84;;;;;;;;;;-1:-1:-1;8567:7:0;;;;;;;;;;;;-1:-1:-1;;;8567:7:0;;;;8493:84;;17148:120;;;;;;;;;;-1:-1:-1;17148:120:0;;;;;:::i;:::-;;:::i;6924:19::-;;;;;;;;;;-1:-1:-1;6924:19:0;;;;-1:-1:-1;;;;;6924:19:0;;;9359:156;;;;;;;;;;-1:-1:-1;9359:156:0;;;;;:::i;:::-;;:::i;2681:21::-;;;;;;;;;;-1:-1:-1;2681:21:0;;;;-1:-1:-1;;;;;2681:21:0;;;10344:129;;;;;;;;;;;;;:::i;:::-;;;;;;;;;:::i;17276:570::-;;;;;;;;;;-1:-1:-1;17276:570:0;;;;;:::i;:::-;;:::i;15005:77::-;;;;;;;;;;;;;:::i;18814:167::-;;;;;;;;;;-1:-1:-1;18814:167:0;;;;;:::i;:::-;;:::i;13877:203::-;;;;;;;;;;-1:-1:-1;13877:203:0;;;;;:::i;:::-;;:::i;8864:133::-;;;;;;;;;;-1:-1:-1;8864:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;8966:19:0;;;8948:7;8966:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;8864:133;3431:244;;;;;;;;;;-1:-1:-1;3431:244:0;;;;;:::i;:::-;;:::i;6854:24::-;;;;;;;;;;-1:-1:-1;6854:24:0;;;;-1:-1:-1;;;;;6854:24:0;;;18308:156;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;;;;;;;;;18400:11:::1;:22:::0;;;::::1;;-1:-1:-1::0;;;18400:22:0::1;-1:-1:-1::0;;;;18400:22:0;;::::1;::::0;;;::::1;::::0;;;18433:13:::1;:23:::0;18308:156::o;10136:199::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;10258:4:::1;10243:12;;:19;;;;:::i;:::-;10227:12;;:35;;10219:44;;;::::0;::::1;;10323:4;10306:12;10291;;:27;;;;:::i;:::-;10290:37;;;;:::i;:::-;10275:12;:52:::0;-1:-1:-1;10136:199:0:o;9905:223::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;10028:4:::1;10013:12;;:19;;;;:::i;:::-;9994:15;;:38;;9986:47;;;::::0;::::1;;10098:4;10079:14;10064:12;;:29;;;;:::i;:::-;10063:39;;;;:::i;:::-;10045:15;:57:::0;-1:-1:-1;9905:223:0:o;9229:122::-;9284:4;9308:35;9316:7;-1:-1:-1;;9308:7:0;:35::i;:::-;9301:42;9229:122;-1:-1:-1;;9229:122:0:o;16985:155::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17061:19:0;;::::1;;::::0;;;:11:::1;:19;::::0;;;;;;;:28;;;::::1;;-1:-1:-1::0;;17061:28:0;;::::1;::::0;::::1;::::0;;;17100:15:::1;:23:::0;;;;;;:32;;;;::::1;;::::0;;16985:155::o;9005:216::-;9109:10;9080:4;9097:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;9097:32:0;;;;;;;;;;:41;;;9154:37;9080:4;;9097:32;;9154:37;;;;9132:6;597:25:1;;585:2;570:18;;451:177;9154:37:0;;;;;;;;-1:-1:-1;9209:4:0;9005:216;;;;:::o;14089:77::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;14142:10:::1;:8;:10::i;:::-;14089:77::o:0;18989:150::-;19069:4;19125:6;19093:29;19113:8;19093:19;:29::i;:::-;:38;;18989:150;-1:-1:-1;;;18989:150:0:o;10481:207::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;10604:20;;::::1;::::0;:8:::1;::::0;:20:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;10635:18:0;;::::1;::::0;:7:::1;::::0;:18:::1;::::0;::::1;::::0;::::1;:::i;:::-;-1:-1:-1::0;10664:16:0;;::::1;::::0;:6:::1;::::0;:16:::1;::::0;::::1;::::0;::::1;:::i;:::-;;10481:207:::0;;;:::o;9523:370::-;-1:-1:-1;;;;;9643:19:0;;9623:4;9643:19;;;:11;:19;;;;;;;;9663:10;9643:31;;;;;;;;-1:-1:-1;;9643:52:0;9640:186;;9745:69;;;;;;;;;;;-1:-1:-1;;;9745:69:0;;;;;;;;-1:-1:-1;;;;;9745:19:0;;-1:-1:-1;9745:19:0;;;:11;:19;;;;;9765:10;9745:31;;;;;;;;;;:69;;9781:6;;9745:35;:69::i;:::-;-1:-1:-1;;;;;9711:19:0;;;;;;:11;:19;;;;;;;;9731:10;9711:31;;;;;;;:103;9640:186;9845:40;9859:6;9867:9;9878:6;9845:13;:40::i;:::-;9838:47;;9523:370;;;;;;:::o;18664:142::-;18792:4;;-1:-1:-1;;;;;18792:4:0;18717:7;8837:18;;;:9;:18;;;;;;18744:54;;18771:4;;-1:-1:-1;;;;;18771:4:0;8819:7;8837:18;;;:9;:18;;;;;;18744:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;18737:61;;18664:142;:::o;17854:446::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;18050:21:::1;:46:::0;;-1:-1:-1;;;;;;18050:46:0;;::::1;-1:-1:-1::0;;;;;18050:46:0;;::::1;;::::0;;;18107:20:::1;:44:::0;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;18162:18:::1;:40:::0;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;;18213:15:::1;:34:::0;;;::::1;::::0;;::::1;::::0;;;::::1;::::0;;18258:15:::1;:34:::0;;;;::::1;::::0;::::1;::::0;;;::::1;::::0;;17854:446::o;14784:213::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;14882:14:::1;:22:::0;;;;14915:13:::1;:20:::0;;;;14946:18:::1;:27:::0;14784:213::o;14174:129::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;14243:12:::1;::::0;14225:15:::1;:30:::0;;;14266:12:::1;:27:::0;14174:129::o;3275:148::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;3382:1:::1;3366:6:::0;;3345:40:::1;::::0;-1:-1:-1;;;;;3366:6:0;;::::1;::::0;3345:40:::1;::::0;3382:1;;3345:40:::1;3413:1;3396:19:::0;;-1:-1:-1;;;;;;3396:19:0::1;::::0;;3275:148::o;14468:308::-;14588:10;14547:4;14572:27;;;:15;:27;;;;;;;;14564:36;;;;;;14611:6;14621:1;14611:11;14608:95;;14647:44;;-1:-1:-1;;;14647:44:0;;14685:4;14647:44;;;5995:51:1;-1:-1:-1;;;;;14647:29:0;;;;;5968:18:1;;14647:44:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;14638:53;;14608:95;14720:48;;-1:-1:-1;;;14720:48:0;;14749:10;14720:48;;;8878:51:1;8945:18;;;8938:34;;;-1:-1:-1;;;;;14720:28:0;;;;;8851:18:1;;14720:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;14311:149::-;14376:10;14360:27;;;;:15;:27;;;;;;;;14352:36;;;;;;14399:51;;14407:10;;14428:21;14399:51;;;;;;;;;14428:21;14407:10;14399:51;;;;;;;;;;;;;;;;;;;;;14311:149::o;18472:180::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;18567:15:::1;:25:::0;;;;18603:26:::1;:41:::0;18472:180::o;17148:120::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;17228:23:0;;;::::1;;::::0;;;:15:::1;:23;::::0;;;;:32;;-1:-1:-1;;17228:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;17148:120::o;9359:156::-;9439:4;9463:44;9477:10;9489:9;9500:6;9463:13;:44::i;10344:129::-;10384:13;10399;10414;10439:8;10449:7;10458:6;10431:34;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10344:129;;;:::o;17276:570::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;17453:12:::1;:28:::0;;;17492:7:::1;:18:::0;;;17521:12:::1;:28:::0;;;17560:10:::1;:24:::0;;;17595:7:::1;:18:::0;;;17635:77:::1;17605:8:::0;17635:63:::1;17573:11:::0;17635:63;17536:13;17635:63;17468:13;17502:8;17635:17:::1;:27::i;:::-;:31:::0;::::1;:46::i;:77::-;17624:8;:88:::0;17723:14:::1;:32:::0;;;17785:18:::1;17802:1;17740:15:::0;17785:18:::1;:::i;:::-;17774:8;;:29;17766:71;;;::::0;-1:-1:-1;;;17766:71:0;;9820:2:1;17766:71:0::1;::::0;::::1;9802:21:1::0;9859:2;9839:18;;;9832:30;9898:31;9878:18;;;9871:59;9947:18;;17766:71:0::1;9618:353:1::0;17766:71:0::1;17276:570:::0;;;;;;:::o;15005:77::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;15056:11:::1;:18:::0;;-1:-1:-1;;;;15056:18:0::1;-1:-1:-1::0;;;15056:18:0::1;::::0;;15005:77::o;18814:167::-;18882:7;18909:64;18950:22;:20;:22::i;:::-;18932:4;;-1:-1:-1;;;;;18932:4:0;8819:7;8837:18;;;:9;:18;;;;;;18909:36;;18922:22;;18942:1;;18922:15;:19;;:22::i;:::-;18909:8;;:12;:36::i;:::-;:40;;:64::i;13877:203::-;14006:20;;13966:21;;-1:-1:-1;;;;;14006:20:0;13998:74;14068:3;14037:28;14049:16;13966:21;14037:28;:::i;:::-;:34;;;;:::i;:::-;13998:74;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13935:145;13877:203;:::o;3431:244::-;3188:6;;-1:-1:-1;;;;;3188:6:0;2498:10;3188:22;3180:67;;;;-1:-1:-1;;;3180:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3520:22:0;::::1;3512:73;;;::::0;-1:-1:-1;;;3512:73:0;;10178:2:1;3512:73:0::1;::::0;::::1;10160:21:1::0;10217:2;10197:18;;;10190:30;10256:34;10236:18;;;10229:62;-1:-1:-1;;;10307:18:1;;;10300:36;10353:19;;3512:73:0::1;9976:402:1::0;3512:73:0::1;3622:6;::::0;;3601:38:::1;::::0;-1:-1:-1;;;;;3601:38:0;;::::1;::::0;3622:6;::::1;::::0;3601:38:::1;::::0;::::1;3650:6;:17:::0;;-1:-1:-1;;;;;;3650:17:0::1;-1:-1:-1::0;;;;;3650:17:0;;;::::1;::::0;;;::::1;::::0;;3431:244::o;860:250::-;918:7;942:1;947;942:6;938:47;;-1:-1:-1;972:1:0;965:8;;938:47;997:9;1009:5;1013:1;1009;:5;:::i;:::-;997:17;-1:-1:-1;1042:1:0;1033:5;1037:1;997:17;1033:5;:::i;:::-;:10;1025:56;;;;-1:-1:-1;;;1025:56:0;;10585:2:1;1025:56:0;;;10567:21:1;10624:2;10604:18;;;10597:30;10663:34;10643:18;;;10636:62;-1:-1:-1;;;10714:18:1;;;10707:31;10755:19;;1025:56:0;10383:397:1;1116:132:0;1174:7;1201:39;1205:1;1208;1201:39;;;;;;;;;;;;;;;;;:3;:39::i;15100:1877::-;7140:6;:13;;-1:-1:-1;;7140:13:0;7149:4;7140:13;;;15195:15:::1;::::0;15212:26:::1;::::0;7140:6;;15179:60:::1;::::0;:15:::1;:60::i;:::-;:79;;15246:12;;15179:79;;;15242:1;15179:79;15149:109;;15269:23;15295:59;15352:1;15295:52;15338:8;;15295:38;15313:19;15295:13;;:17;;:38;;;;:::i;:59::-;15269:85;;15365:20;15388:34;15406:15;15388:13;;:17;;:34;;;;:::i;:::-;15459:16;::::0;;15473:1:::1;15459:16:::0;;;;;::::1;::::0;;15365:57;;-1:-1:-1;15435:21:0::1;::::0;15459:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;15459:16:0::1;15435:40;;15504:4;15486;15491:1;15486:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;15486:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;15530:4:::1;::::0;15520:7;;15530:4;::::1;::::0;15520;;15530;;15520:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;15520:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:14;;;;15605:6;:188:::1;::::0;-1:-1:-1;;;15605:188:0;;15571:21:::1;::::0;15605:6;;;::::1;::::0;:57:::1;::::0;:188:::1;::::0;15677:12;;15547:21:::1;::::0;15720:4;;15747::::1;::::0;15767:15:::1;::::0;15605:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;15806:17;15826:40;15852:13;15826:21;:25;;:40;;;;:::i;:::-;15806:60:::0;-1:-1:-1;15879:19:0::1;15901:40;15914:26;:19:::0;15938:1:::1;15914:23;:26::i;:::-;15901:8;::::0;;:12:::1;:40::i;:::-;15879:62:::0;-1:-1:-1;15962:26:0::1;15991:58;16047:1;15991:51;15879:62:::0;15991:51;:9;16005:19;15991:13:::1;:34::i;:58::-;15962:87;;16060:26;16089:44;16121:11;16089:27;16103:12;;16089:9;:13;;:27;;;;:::i;:44::-;16060:73;;16144:21;16168:39;16195:11;16168:22;16182:7;;16168:9;:13;;:22;;;;:::i;:39::-;16144:63;;16218:24;16245:42;16275:11;16245:25;16259:10;;16245:9;:13;;:25;;;;:::i;:42::-;16329:20;::::0;16321:65:::1;::::0;16218:69;;-1:-1:-1;16301:15:0::1;::::0;-1:-1:-1;;;;;16329:20:0;;::::1;::::0;16363:18;;16301:15;16321:65;16301:15;16321:65;16363:18;16329:20;16321:65:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;16421:18:0::1;::::0;16413:61:::1;::::0;16300:86;;-1:-1:-1;;;;;;16421:18:0::1;::::0;16453:16;;16413:61:::1;::::0;;;16453:16;16421:18;16413:61:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;;16509:15:0::1;::::0;16501:55:::1;::::0;16397:77;;-1:-1:-1;;;;;;16509:15:0::1;::::0;16538:13;;16501:55:::1;::::0;;;16538:13;16509:15;16501:55:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1::0;16590:5:0::1;::::0;-1:-1:-1;;16611:19:0;;;-1:-1:-1;16608:362:0::1;;16646:6;::::0;16820:21:::1;::::0;16646:244:::1;::::0;-1:-1:-1;;;16646:244:0;;16722:4:::1;16646:244;::::0;::::1;12453:34:1::0;12503:18;;;12496:34;;;16646:6:0::1;12546:18:1::0;;;12539:34;;;12589:18;;;12582:34;-1:-1:-1;;;;;16820:21:0;;::::1;12632:19:1::0;;;12625:44;16860:15:0::1;12685:19:1::0;;;12678:35;16646:6:0;::::1;::::0;:22:::1;::::0;16676:18;;12387:19:1;;16646:244:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;16910:48:0::1;::::0;;13209:25:1;;;13265:2;13250:18;;13243:34;;;16910:48:0::1;::::0;-1:-1:-1;13182:18:1;16910:48:0::1;;;;;;;16608:362;-1:-1:-1::0;;7158:6:0;:14;;-1:-1:-1;;7158:14:0;;;-1:-1:-1;;;;;;;;;;15100:1877:0:o;662:192::-;748:7;784:12;776:6;;;;768:29;;;;-1:-1:-1;;;768:29:0;;;;;;;;:::i;:::-;-1:-1:-1;808:9:0;820:5;824:1;820;:5;:::i;:::-;808:17;662:192;-1:-1:-1;;;;;662:192:0:o;10700:1311::-;10812:6;;10792:4;;10812:6;;10809:63;;;10828:41;10843:6;10851:9;10862:6;10828:14;:41::i;:::-;10821:48;;;;10809:63;-1:-1:-1;;;;;10888:22:0;;;;;;:14;:22;;;;;;;;10887:23;:53;;;;-1:-1:-1;;;;;;10915:25:0;;;;;;:14;:25;;;;;;;;10914:26;10887:53;10884:140;;;10964:11;;-1:-1:-1;;;10964:11:0;;;;10956:43;;;;-1:-1:-1;;;10956:43:0;;13620:2:1;10956:43:0;;;13602:21:1;13659:2;13639:18;;;13632:30;-1:-1:-1;;;13678:18:1;;;13671:50;13738:18;;10956:43:0;13418:344:1;10956:43:0;-1:-1:-1;;;;;11060:22:0;;;;;;:14;:22;;;;;;;;11059:23;:53;;;;-1:-1:-1;;;;;;11086:26:0;;11107:4;11086:26;;11059:53;:84;;;;-1:-1:-1;11138:4:0;;-1:-1:-1;;;;;11117:26:0;;;11138:4;;11117:26;;11059:84;:105;;;;-1:-1:-1;11160:4:0;;-1:-1:-1;;;;;11147:17:0;;;11160:4;;11147:17;;11059:105;:137;;;;-1:-1:-1;11181:15:0;;-1:-1:-1;;;;;11168:28:0;;;11181:15;;11168:28;;11059:137;:174;;;;-1:-1:-1;11213:20:0;;-1:-1:-1;;;;;11200:33:0;;;11213:20;;11200:33;;11059:174;:205;;;;-1:-1:-1;;;;;;11238:26:0;;;;;;:15;:26;;;;;;;;11237:27;11059:205;11055:397;;;-1:-1:-1;;;;;8837:18:0;;11280;8837;;;:9;:18;;;;;;11369:15;;11345:19;11358:6;8837:18;11345:19;:::i;:::-;11344:40;;11336:114;;;;-1:-1:-1;;;11336:114:0;;14102:2:1;11336:114:0;;;14084:21:1;14141:2;14121:18;;;14114:30;14180:34;14160:18;;;14153:62;14251:32;14231:18;;;14224:60;14301:19;;11336:114:0;13900:426:1;11336:114:0;11265:187;11055:397;11505:28;11518:6;11526;11505:12;:28::i;:::-;11550:16;:14;:16::i;:::-;11547:35;;;11569:10;:8;:10::i;:::-;11662:53;;;;;;;;;;;-1:-1:-1;;;11662:53:0;;;;;;;;-1:-1:-1;;;;;11662:17:0;;-1:-1:-1;11662:17:0;;;:9;:17;;;;;;;;:53;;11684:6;;11662:21;:53::i;:::-;-1:-1:-1;;;;;11642:17:0;;;;;;:9;:17;;;;;;;;:73;;;;11754:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;11777:22:0;;;;;;:11;:22;;;;;;;;11754:45;11753:93;;11812:34;11820:6;11828;11836:9;11812:7;:34::i;:::-;11753:93;;;11803:6;11753:93;-1:-1:-1;;;;;11880:20:0;;;;;;:9;:20;;;;;;11728:118;;-1:-1:-1;11880:40:0;;11728:118;11880:24;:40::i;:::-;-1:-1:-1;;;;;11857:20:0;;;;;;;:9;:20;;;;;;;:63;;;;11938:43;;;;;;-1:-1:-1;;;;;;;;;;;11938:43:0;;;11966:14;597:25:1;;585:2;570:18;;451:177;11938:43:0;;;;;;;;-1:-1:-1;11999:4:0;;10700:1311;-1:-1:-1;;;;10700:1311:0:o;520:136::-;578:7;605:43;609:1;612;605:43;;;;;;;;;;;;;;;;;:3;:43::i;333:181::-;391:7;;423:5;427:1;423;:5;:::i;:::-;411:17;;452:1;447;:6;;439:46;;;;-1:-1:-1;;;439:46:0;;14533:2:1;439:46:0;;;14515:21:1;14572:2;14552:18;;;14545:30;14611:29;14591:18;;;14584:57;14658:18;;439:46:0;14331:351:1;1254:189:0;1340:7;1375:12;1368:5;1360:28;;;;-1:-1:-1;;;1360:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1399:9:0;1411:5;1415:1;1411;:5;:::i;12023:330::-;12153:53;;;;;;;;;;;-1:-1:-1;;;12153:53:0;;;;;;;;-1:-1:-1;;;;;12153:17:0;;12116:4;12153:17;;;:9;:17;;;;;;;:53;;12175:6;;12153:21;:53::i;:::-;-1:-1:-1;;;;;12133:17:0;;;;;;;:9;:17;;;;;;:73;;;;12240:20;;;;;;;:32;;12265:6;12240:24;:32::i;:::-;-1:-1:-1;;;;;12217:20:0;;;;;;;:9;:20;;;;;;;:55;;;;12288:35;;;;;;-1:-1:-1;;;;;;;;;;;12288:35:0;;;12316:6;597:25:1;;585:2;570:18;;451:177;12288:35:0;;;;;;;;-1:-1:-1;12341:4:0;12023:330;;;;;:::o;12361:166::-;12458:12;;12448:6;:22;;:49;;;-1:-1:-1;;;;;;12474:23:0;;;;;;:15;:23;;;;;;;;12448:49;12440:79;;;;-1:-1:-1;;;12440:79:0;;14889:2:1;12440:79:0;;;14871:21:1;14928:2;14908:18;;;14901:30;-1:-1:-1;;;14947:18:1;;;14940:47;15004:18;;12440:79:0;14687:341:1;12440:79:0;12361:166;;:::o;13672:197::-;13759:4;;13721;;-1:-1:-1;;;;;13759:4:0;13745:10;:18;;;;:38;;-1:-1:-1;13777:6:0;;;;13776:7;13745:38;:62;;;;-1:-1:-1;13796:11:0;;-1:-1:-1;;;13796:11:0;;;;13745:62;:116;;;;-1:-1:-1;;13848:13:0;;13838:4;13820:24;;;;:9;:24;;;;;;:41;;;13672:197::o;12657:1007::-;12794:18;;12841:4;;12743:7;;12794:18;-1:-1:-1;;;;;12841:4:0;;;12828:17;;;;12825:154;;-1:-1:-1;12875:14:0;;12825:154;;;12920:4;;-1:-1:-1;;;;;12920:4:0;;;12910:14;;;;12907:72;;-1:-1:-1;12954:13:0;;12907:72;12991:17;13011:62;13052:14;;13069:3;13052:20;;;;:::i;:::-;13011:36;13036:10;13011:20;13022:8;;13011:6;:10;;:20;;;;:::i;:62::-;12991:82;;13084:18;13105:36;13132:8;;13105:22;13119:7;;13105:9;:13;;:22;;;;:::i;:36::-;13084:57;-1:-1:-1;13152:22:0;13177:25;:9;13084:57;13177:13;:25::i;:::-;13260:4;13242:24;;;;:9;:24;;;;;;13152:50;;-1:-1:-1;13242:44:0;;13152:50;13242:28;:44::i;:::-;13233:4;13215:24;;;;:9;:24;;;;;;:71;;;;13336:15;;-1:-1:-1;;;;;13336:15:0;13326:26;;;;:42;;13357:10;13326:30;:42::i;:::-;13307:15;;-1:-1:-1;;;;;13307:15:0;;;13297:26;;;;:9;:26;;;;;;;;;:71;;;;13384:47;597:25:1;;;13409:4:0;;13384:47;;;;-1:-1:-1;;;;;;;;;;;13384:47:0;570:18:1;13384:47:0;;;;;;;13465:14;;13462:154;;13510:12;;:28;;13527:10;13510:16;:28::i;:::-;13495:12;:43;13575:4;;13558:34;;597:25:1;;;-1:-1:-1;;;;;13575:4:0;;;;13558:34;;;-1:-1:-1;;;;;;;;;;;13558:34:0;585:2:1;570:18;13558:34:0;;;;;;;13462:154;13635:21;:6;13646:9;13635:10;:21::i;:::-;13628:28;12657:1007;-1:-1:-1;;;;;;;;12657:1007:0:o;-1:-1:-1:-;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;:::o;:::-;;;;;;;;;;;;;;;14:118:1;100:5;93:13;86:21;79:5;76:32;66:60;;122:1;119;112:12;137:309;202:6;210;263:2;251:9;242:7;238:23;234:32;231:52;;;279:1;276;269:12;231:52;318:9;305:23;337:28;359:5;337:28;:::i;:::-;384:5;436:2;421:18;;;;408:32;;-1:-1:-1;;;137:309:1:o;633:180::-;692:6;745:2;733:9;724:7;720:23;716:32;713:52;;;761:1;758;751:12;713:52;-1:-1:-1;784:23:1;;633:180;-1:-1:-1;633:180:1:o;818:173::-;886:20;;-1:-1:-1;;;;;935:31:1;;925:42;;915:70;;981:1;978;971:12;915:70;818:173;;;:::o;996:186::-;1055:6;1108:2;1096:9;1087:7;1083:23;1079:32;1076:52;;;1124:1;1121;1114:12;1076:52;1147:29;1166:9;1147:29;:::i;1379:472::-;1421:3;1459:5;1453:12;1486:6;1481:3;1474:19;1511:1;1521:162;1535:6;1532:1;1529:13;1521:162;;;1597:4;1653:13;;;1649:22;;1643:29;1625:11;;;1621:20;;1614:59;1550:12;1521:162;;;1701:6;1698:1;1695:13;1692:87;;;1767:1;1760:4;1751:6;1746:3;1742:16;1738:27;1731:38;1692:87;-1:-1:-1;1833:2:1;1812:15;-1:-1:-1;;1808:29:1;1799:39;;;;1840:4;1795:50;;1379:472;-1:-1:-1;;1379:472:1:o;1856:220::-;2005:2;1994:9;1987:21;1968:4;2025:45;2066:2;2055:9;2051:18;2043:6;2025:45;:::i;2081:315::-;2146:6;2154;2207:2;2195:9;2186:7;2182:23;2178:32;2175:52;;;2223:1;2220;2213:12;2175:52;2246:29;2265:9;2246:29;:::i;:::-;2236:39;;2325:2;2314:9;2310:18;2297:32;2338:28;2360:5;2338:28;:::i;:::-;2385:5;2375:15;;;2081:315;;;;;:::o;2401:254::-;2469:6;2477;2530:2;2518:9;2509:7;2505:23;2501:32;2498:52;;;2546:1;2543;2536:12;2498:52;2569:29;2588:9;2569:29;:::i;2660:248::-;2728:6;2736;2789:2;2777:9;2768:7;2764:23;2760:32;2757:52;;;2805:1;2802;2795:12;2757:52;-1:-1:-1;;2828:23:1;;;2898:2;2883:18;;;2870:32;;-1:-1:-1;2660:248:1:o;2913:127::-;2974:10;2969:3;2965:20;2962:1;2955:31;3005:4;3002:1;2995:15;3029:4;3026:1;3019:15;3045:719;3088:5;3141:3;3134:4;3126:6;3122:17;3118:27;3108:55;;3159:1;3156;3149:12;3108:55;3195:6;3182:20;3221:18;3258:2;3254;3251:10;3248:36;;;3264:18;;:::i;:::-;3339:2;3333:9;3307:2;3393:13;;-1:-1:-1;;3389:22:1;;;3413:2;3385:31;3381:40;3369:53;;;3437:18;;;3457:22;;;3434:46;3431:72;;;3483:18;;:::i;:::-;3523:10;3519:2;3512:22;3558:2;3550:6;3543:18;3604:3;3597:4;3592:2;3584:6;3580:15;3576:26;3573:35;3570:55;;;3621:1;3618;3611:12;3570:55;3685:2;3678:4;3670:6;3666:17;3659:4;3651:6;3647:17;3634:54;3732:1;3725:4;3720:2;3712:6;3708:15;3704:26;3697:37;3752:6;3743:15;;;;;;3045:719;;;;:::o;3769:743::-;3876:6;3884;3892;3945:2;3933:9;3924:7;3920:23;3916:32;3913:52;;;3961:1;3958;3951:12;3913:52;4001:9;3988:23;4030:18;4071:2;4063:6;4060:14;4057:34;;;4087:1;4084;4077:12;4057:34;4110:50;4152:7;4143:6;4132:9;4128:22;4110:50;:::i;:::-;4100:60;;4213:2;4202:9;4198:18;4185:32;4169:48;;4242:2;4232:8;4229:16;4226:36;;;4258:1;4255;4248:12;4226:36;4281:52;4325:7;4314:8;4303:9;4299:24;4281:52;:::i;:::-;4271:62;;4386:2;4375:9;4371:18;4358:32;4342:48;;4415:2;4405:8;4402:16;4399:36;;;4431:1;4428;4421:12;4399:36;;4454:52;4498:7;4487:8;4476:9;4472:24;4454:52;:::i;:::-;4444:62;;;3769:743;;;;;:::o;4517:328::-;4594:6;4602;4610;4663:2;4651:9;4642:7;4638:23;4634:32;4631:52;;;4679:1;4676;4669:12;4631:52;4702:29;4721:9;4702:29;:::i;:::-;4692:39;;4750:38;4784:2;4773:9;4769:18;4750:38;:::i;:::-;4740:48;;4835:2;4824:9;4820:18;4807:32;4797:42;;4517:328;;;;;:::o;5039:484::-;5134:6;5142;5150;5158;5166;5219:3;5207:9;5198:7;5194:23;5190:33;5187:53;;;5236:1;5233;5226:12;5187:53;5259:29;5278:9;5259:29;:::i;:::-;5249:39;;5307:38;5341:2;5330:9;5326:18;5307:38;:::i;:::-;5297:48;;5364:38;5398:2;5387:9;5383:18;5364:38;:::i;:::-;5354:48;;5421:38;5455:2;5444:9;5440:18;5421:38;:::i;:::-;5411:48;;5478:39;5512:3;5501:9;5497:19;5478:39;:::i;:::-;5468:49;;5039:484;;;;;;;;:::o;5528:316::-;5605:6;5613;5621;5674:2;5662:9;5653:7;5649:23;5645:32;5642:52;;;5690:1;5687;5680:12;5642:52;-1:-1:-1;;5713:23:1;;;5783:2;5768:18;;5755:32;;-1:-1:-1;5834:2:1;5819:18;;;5806:32;;5528:316;-1:-1:-1;5528:316:1:o;6057:546::-;6302:2;6291:9;6284:21;6265:4;6328:45;6369:2;6358:9;6354:18;6346:6;6328:45;:::i;:::-;6421:9;6413:6;6409:22;6404:2;6393:9;6389:18;6382:50;6455:33;6481:6;6473;6455:33;:::i;:::-;6441:47;;6536:9;6528:6;6524:22;6519:2;6508:9;6504:18;6497:50;6564:33;6590:6;6582;6564:33;:::i;:::-;6556:41;6057:546;-1:-1:-1;;;;;;6057:546:1:o;6608:523::-;6712:6;6720;6728;6736;6744;6752;6805:3;6793:9;6784:7;6780:23;6776:33;6773:53;;;6822:1;6819;6812:12;6773:53;-1:-1:-1;;6845:23:1;;;6915:2;6900:18;;6887:32;;-1:-1:-1;6966:2:1;6951:18;;6938:32;;7017:2;7002:18;;6989:32;;-1:-1:-1;7068:3:1;7053:19;;7040:33;;-1:-1:-1;7120:3:1;7105:19;7092:33;;-1:-1:-1;6608:523:1;-1:-1:-1;6608:523:1:o;7136:260::-;7204:6;7212;7265:2;7253:9;7244:7;7240:23;7236:32;7233:52;;;7281:1;7278;7271:12;7233:52;7304:29;7323:9;7304:29;:::i;:::-;7294:39;;7352:38;7386:2;7375:9;7371:18;7352:38;:::i;:::-;7342:48;;7136:260;;;;;:::o;7627:356::-;7829:2;7811:21;;;7848:18;;;7841:30;7907:34;7902:2;7887:18;;7880:62;7974:2;7959:18;;7627:356::o;7988:127::-;8049:10;8044:3;8040:20;8037:1;8030:31;8080:4;8077:1;8070:15;8104:4;8101:1;8094:15;8120:217;8160:1;8186;8176:132;;8230:10;8225:3;8221:20;8218:1;8211:31;8265:4;8262:1;8255:15;8293:4;8290:1;8283:15;8176:132;-1:-1:-1;8322:9:1;;8120:217::o;8342:168::-;8382:7;8448:1;8444;8440:6;8436:14;8433:1;8430:21;8425:1;8418:9;8411:17;8407:45;8404:71;;;8455:18;;:::i;:::-;-1:-1:-1;8495:9:1;;8342:168::o;8515:184::-;8585:6;8638:2;8626:9;8617:7;8613:23;8609:32;8606:52;;;8654:1;8651;8644:12;8606:52;-1:-1:-1;8677:16:1;;8515:184;-1:-1:-1;8515:184:1:o;8983:245::-;9050:6;9103:2;9091:9;9082:7;9078:23;9074:32;9071:52;;;9119:1;9116;9109:12;9071:52;9151:9;9145:16;9170:28;9192:5;9170:28;:::i;9233:380::-;9312:1;9308:12;;;;9355;;;9376:61;;9430:4;9422:6;9418:17;9408:27;;9376:61;9483:2;9475:6;9472:14;9452:18;9449:38;9446:161;;9529:10;9524:3;9520:20;9517:1;9510:31;9564:4;9561:1;9554:15;9592:4;9589:1;9582:15;9446:161;;9233:380;;;:::o;10785:127::-;10846:10;10841:3;10837:20;10834:1;10827:31;10877:4;10874:1;10867:15;10901:4;10898:1;10891:15;10917:980;11179:4;11227:3;11216:9;11212:19;11258:6;11247:9;11240:25;11284:2;11322:6;11317:2;11306:9;11302:18;11295:34;11365:3;11360:2;11349:9;11345:18;11338:31;11389:6;11424;11418:13;11455:6;11447;11440:22;11493:3;11482:9;11478:19;11471:26;;11532:2;11524:6;11520:15;11506:29;;11553:1;11563:195;11577:6;11574:1;11571:13;11563:195;;;11642:13;;-1:-1:-1;;;;;11638:39:1;11626:52;;11733:15;;;;11698:12;;;;11674:1;11592:9;11563:195;;;-1:-1:-1;;;;;;;11814:32:1;;;;11809:2;11794:18;;11787:60;-1:-1:-1;;;11878:3:1;11863:19;11856:35;11775:3;10917:980;-1:-1:-1;;;10917:980:1:o;12724:306::-;12812:6;12820;12828;12881:2;12869:9;12860:7;12856:23;12852:32;12849:52;;;12897:1;12894;12887:12;12849:52;12926:9;12920:16;12910:26;;12976:2;12965:9;12961:18;12955:25;12945:35;;13020:2;13009:9;13005:18;12999:25;12989:35;;12724:306;;;;;:::o;13288:125::-;13328:4;13356:1;13353;13350:8;13347:34;;;13361:18;;:::i;:::-;-1:-1:-1;13398:9:1;;13288:125::o;13767:128::-;13807:3;13838:1;13834:6;13831:1;13828:13;13825:39;;;13844:18;;:::i;:::-;-1:-1:-1;13880:9:1;;13767:128::o
Swarm Source
ipfs://b4bd14c5b519947df76f6532db89b067b94bf7c2cc331a234ef4c20521c44459
Loading...
Loading
Loading...
Loading
[ Download: CSV Export ]
[ Download: CSV Export ]
A token is a representation of an on-chain or off-chain asset. The token page shows information such as price, total supply, holders, transfers and social links. Learn more about this page in our Knowledge Base.