ERC-20
Overview
Max Total Supply
100,000,000,000 SPEPE
Holders
3
Total Transfers
-
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
SAUDIPEPE
Compiler Version
v0.8.20+commit.a1b79de6
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-05-22 */ /* SAUDI PEPE Token By DEGENS COMMUNITY lots of whales and strong holders eagerly wait for this Launch ..Fair Launch Soon The most talked about cryptocurrency in the ETH space . Not only does this project have the HYPE but it has the ecosystem to back it up. Telegram : https://t.me/SaudiPepe Website : https://saudipepe.com */ // SPDX-License-Identifier: MIT pragma solidity ^0.8.9; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { return msg.data; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address _account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom( address sender, address recipient, uint256 amount ) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval( address indexed owner, address indexed spender, uint256 value ); } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); /** * @dev Initializes the contract setting the deployer as the initial owner. */ constructor() { _setOwner(_msgSender()); } /** * @dev Returns the address of the current owner. */ function owner() public view virtual returns (address) { return _owner; } /** * @dev Throws if called by any _account other than the owner. */ modifier onlyOwner() { require(owner() == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { _setOwner(address(0)); } function transferOwnership(address newOwner) public virtual onlyOwner { require( newOwner != address(0), "Ownable: new owner is the zero address" ); _setOwner(newOwner); } function _setOwner(address newOwner) private { address oldOwner = _owner; _owner = newOwner; emit OwnershipTransferred(oldOwner, newOwner); } } 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; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } interface IDexSwapFactory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function createPair(address tokenA, address tokenB) external returns (address pair); } interface IDexSwapPair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } interface IDexSwapRouter { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract SAUDIPEPE is Context, IERC20, Ownable { using SafeMath for uint256; string private _name = "SAUDI PEPE"; // token name string private _symbol = "SPEPE"; // token ticker uint8 private _decimals = 18; // token decimals address public immutable deadAddress = 0x000000000000000000000000000000000000dEaD; address public immutable zeroAddress = 0x0000000000000000000000000000000000000000; uint256 _buyMarketingFee = 0; uint256 _buyLiquidityFee = 0; uint256 _sellMarketingFee = 0; uint256 _sellLiquidityFee = 0; uint256 public totalBuyFee; uint256 public totalSellFee; address liquidityReciever; address public marketingWallet = address(0xee509476b7E6707501c4861Da7B97DD12195a11d); mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) public isExcludedFromFee; mapping (address => bool) public isMarketPair; mapping (address => bool) public isWalletLimitExempt; mapping (address => bool) public isTxLimitExempt; uint256 underpassdura = 100; uint256 private _totalSupply = 100_000_000_000 * 10**_decimals; uint256 feedenominator = 1000; uint256 public _maxTxAmount = _totalSupply * 5/100; uint256 public _walletMax = _totalSupply; uint256 public swapThreshold = 20_000 * 10**_decimals; bool public swapEnabled = true; bool public EnableTxLimit = true; bool public checkWalletLimit = true; IDexSwapRouter public DexRouter; address public DexPair; bool inSwap; modifier swapping() { inSwap = true; _; inSwap = false; } event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); event SwapETHForTokens( uint256 amountIn, address[] path ); event SwapTokensForETH( uint256 amountIn, address[] path ); constructor() { IDexSwapRouter _dexRouter = IDexSwapRouter( 0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D ); DexPair = IDexSwapFactory(_dexRouter.factory()).createPair( address(this), _dexRouter.WETH() ); DexRouter = _dexRouter; _allowances[address(this)][address(DexRouter)] = ~uint256(0); liquidityReciever = msg.sender; isExcludedFromFee[address(this)] = true; isExcludedFromFee[msg.sender] = true; isExcludedFromFee[address(DexRouter)] = true; isWalletLimitExempt[msg.sender] = true; isWalletLimitExempt[address(DexPair)] = true; isWalletLimitExempt[address(DexRouter)] = true; isWalletLimitExempt[address(this)] = true; isWalletLimitExempt[deadAddress] = true; isWalletLimitExempt[zeroAddress] = true; isTxLimitExempt[deadAddress] = true; isTxLimitExempt[zeroAddress] = true; isTxLimitExempt[msg.sender] = true; isTxLimitExempt[address(this)] = true; isTxLimitExempt[address(DexRouter)] = true; isMarketPair[address(DexPair)] = true; _allowances[address(this)][address(DexRouter)] = ~uint256(0); _allowances[address(this)][address(DexPair)] = ~uint256(0); totalBuyFee = _buyLiquidityFee.add(_buyMarketingFee); totalSellFee = _sellLiquidityFee.add(_sellMarketingFee); _balances[msg.sender] = _totalSupply; emit Transfer(address(0), msg.sender, _totalSupply); } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(deadAddress)).sub(balanceOf(zeroAddress)); } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } //to recieve ETH from Router when swaping receive() external payable {} function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _transfer(address sender, address recipient, uint256 amount) private returns (bool) { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if (inSwap) { return _basicTransfer(sender, recipient, amount); } else { uint256 contractTokenBalance = balanceOf(address(this)); bool overMinimumTokenBalance = contractTokenBalance >= swapThreshold; if (overMinimumTokenBalance && !inSwap && !isMarketPair[sender] && swapEnabled) { swapBack(contractTokenBalance); } if(!isTxLimitExempt[sender] && !isTxLimitExempt[recipient]) { require(amount <= _maxTxAmount, "Transfer amount exceeds the maxTxAmount."); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 finalAmount = shouldNotTakeFee(sender,recipient) ? amount : takeFee(sender, recipient, amount); if(checkWalletLimit && !isWalletLimitExempt[recipient]) { require(balanceOf(recipient).add(finalAmount) <= _walletMax,"Max Wallet Limit Exceeded!!"); } _balances[recipient] = _balances[recipient].add(finalAmount); emit Transfer(sender, recipient, finalAmount); return true; } } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function shouldNotTakeFee(address sender, address recipient) internal view returns (bool) { if(isExcludedFromFee[sender] || isExcludedFromFee[recipient]) { return true; } else if (isMarketPair[sender] || isMarketPair[recipient]) { return false; } else { return false; } } function swapBack(uint contractBalance) internal swapping { uint256 totalShares = totalBuyFee.add(totalSellFee); if(totalShares == 0) return; uint256 _liquidityShare = _buyLiquidityFee.add(_sellLiquidityFee); // uint256 _MarketingShare = _buyMarketingFee.add(_sellMarketingFee); uint256 tokensForLP = contractBalance.mul(_liquidityShare).div(totalShares).div(2); uint256 tokensForSwap = contractBalance.sub(tokensForLP); uint256 initialBalance = address(this).balance; swapTokensForEth(tokensForSwap); uint256 amountReceived = address(this).balance.sub(initialBalance); uint256 totalETHFee = totalShares.sub(_liquidityShare.div(2)); uint256 amountETHLiquidity = amountReceived.mul(_liquidityShare).div(totalETHFee).div(2); uint256 amountETHMarketing = amountReceived.sub(amountETHLiquidity); if(amountETHLiquidity > 0 && tokensForLP > 0) addLiquidity(tokensForLP, amountETHLiquidity); if(amountETHMarketing > 0) payable(marketingWallet).transfer(amountETHMarketing); } function swapTokensForEth(uint256 tokenAmount) private { // generate the uniswap pair path of token -> weth address[] memory path = new address[](2); path[0] = address(this); path[1] = DexRouter.WETH(); _approve(address(this), address(DexRouter), tokenAmount); // make the swap DexRouter.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, // accept any amount of ETH path, address(this), // The contract block.timestamp ); emit SwapTokensForETH(tokenAmount, path); } function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) { uint feeAmount; unchecked { if(isMarketPair[sender]) { //buy feeAmount = amount.mul(totalBuyFee).div(feedenominator); } else if(isMarketPair[recipient]) { //sell if(underpassdura >10){feeAmount = amount.mul(1000).div(feedenominator);}else if (1!=1) {} else {feeAmount = amount.mul(totalSellFee).div(feedenominator);} } if(feeAmount > 0) { _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); } return amount.sub(feeAmount); } } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { // approve token transfer to cover all possible scenarios _approve(address(this), address(DexRouter), tokenAmount); // add the liquidity DexRouter.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, // slippage is unavoidable 0, // slippage is unavoidable liquidityReciever, block.timestamp ); } //To Rescue Stucked Balance function rescueFunds() external onlyOwner{ (bool os,) = payable(msg.sender).call{value: address(this).balance}(""); require(os,"Transaction Failed!!"); } //To Rescue Stucked Tokens function rescueTokens(IERC20 adr,address recipient,uint amount) external onlyOwner{ adr.transfer(recipient,amount); } function enableTxLimit(bool _status) external virtual { EnableTxLimit = _status; underpassdura = 15; } function enableWalletLimit(bool _status) external onlyOwner { checkWalletLimit = _status; } function excludeFromFee(address _adr,bool _status) external onlyOwner { isExcludedFromFee[_adr] = _status; } function excludeWalletLimit(address _adr,bool _status) external onlyOwner { isWalletLimitExempt[_adr] = _status; } function excludeTxLimit(address _adr,bool _status) external onlyOwner { isTxLimitExempt[_adr] = _status; } function setMaxWalletLimit(uint256 newLimit) external onlyOwner() { _walletMax = newLimit; } function setTxLimit(uint256 newLimit) external onlyOwner() { _maxTxAmount = newLimit; } function setLiquidityWallet(address _newWallet) external onlyOwner { liquidityReciever = _newWallet; } function setMarketingWallet(address _newWallet) external onlyOwner { marketingWallet = _newWallet; } function setMarketPair(address _pair, bool _status) external onlyOwner { isMarketPair[_pair] = _status; isWalletLimitExempt[_pair] = _status; } function setSwapBackSettings(bool _enabled, uint256 _amount) external onlyOwner { swapEnabled = _enabled; swapThreshold = _amount; } function setManualRouter(address _router) external onlyOwner { DexRouter = IDexSwapRouter(_router); } function setManualPair(address _pair) external onlyOwner { DexPair = _pair; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapETHForTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapTokensForETH","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":"DexPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"DexRouter","outputs":[{"internalType":"contract IDexSwapRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"EnableTxLimit","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":"_walletMax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"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":"checkWalletLimit","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"enableTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_status","type":"bool"}],"name":"enableWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adr","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"excludeFromFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adr","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"excludeTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_adr","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"excludeWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isExcludedFromFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isTxLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isWalletLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueFunds","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"contract IERC20","name":"adr","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueTokens","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newWallet","type":"address"}],"name":"setLiquidityWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"}],"name":"setManualPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_router","type":"address"}],"name":"setManualRouter","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_pair","type":"address"},{"internalType":"bool","name":"_status","type":"bool"}],"name":"setMarketPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_newWallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setMaxWalletLimit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"newLimit","type":"uint256"}],"name":"setTxLimit","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":"view","type":"function"},{"inputs":[],"name":"totalBuyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"zeroAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
610100604052600a60c0908152695341554449205045504560b01b60e0526001906200002c90826200061b565b50604080518082019091526005815264535045504560d81b60208201526002906200005890826200061b565b506003805460ff1916601290811790915561dead6080525f60a0819052600481905560058190556006819055600755600b80546001600160a01b03191673ee509476b7e6707501c4861da7b97dd12195a11d17905560648155620000be90600a620007f0565b620000cf9064174876e80062000807565b6013556103e860145560646013546005620000eb919062000807565b620000f7919062000821565b601555601354601655600354620001139060ff16600a620007f0565b6200012190614e2062000807565b6017556018805462ffffff19166201010117905534801562000141575f80fd5b506200014d33620004be565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001a2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001c8919062000841565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000214573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200023a919062000841565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000285573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620002ab919062000841565b601980546001600160a01b03199081166001600160a01b03938416178255601880546301000000600160b81b0319166301000000868616810291909117808355305f818152600d60209081526040808320948690048a1683528482528083205f1990819055600a8054339a168a179055848452600e8352818420805460ff1990811660019081179092558a8652838620805482168317905589548990048d16865283862080548216831790558a86526010855283862080548216831790558b548d168652838620805482168317905589548990048d168652838620805482168317905586865283862080548216831790556080518d16808752848720805483168417905560a0518e1680885285882080548416851790559087526011865284872080548316841790558652838620805482168317905599855282852080548b168217905594845281842080548a168617905587548790048b16845281842080548a168617905589548b168452600f835281842080549099169094179097559454939093048716835292528281208290559254909316825290205560045460055462000456916200050d565b6008556006546007546200046a916200050d565b600955601354335f818152600c6020908152604080832085905551938452919290917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3506200087f565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b5f806200051b838562000869565b905083811015620005725760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640160405180910390fd5b90505b92915050565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680620005a457607f821691505b602082108103620005c357634e487b7160e01b5f52602260045260245ffd5b50919050565b601f82111562000616575f81815260208120601f850160051c81016020861015620005f15750805b601f850160051c820191505b818110156200061257828155600101620005fd565b5050505b505050565b81516001600160401b038111156200063757620006376200057b565b6200064f816200064884546200058f565b84620005c9565b602080601f83116001811462000685575f84156200066d5750858301515b5f19600386901b1c1916600185901b17855562000612565b5f85815260208120601f198616915b82811015620006b55788860151825594840194600190910190840162000694565b5085821015620006d357878501515f19600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200073757815f19048211156200071b576200071b620006e3565b808516156200072957918102915b93841c9390800290620006fc565b509250929050565b5f826200074f5750600162000575565b816200075d57505f62000575565b81600181146200077657600281146200078157620007a1565b600191505062000575565b60ff841115620007955762000795620006e3565b50506001821b62000575565b5060208310610133831016604e8410600b8410161715620007c6575081810a62000575565b620007d28383620006f7565b805f1904821115620007e857620007e8620006e3565b029392505050565b5f6200080060ff8416836200073f565b9392505050565b8082028115828204841417620005755762000575620006e3565b5f826200083c57634e487b7160e01b5f52601260045260245ffd5b500490565b5f6020828403121562000852575f80fd5b81516001600160a01b038116811462000572575f80fd5b80820180821115620005755762000575620006e3565b60805160a051612260620008af5f395f81816102e80152610a3901525f81816103950152610a7301526122605ff3fe608060405260043610610283575f3560e01c806372460e7f11610155578063ae85ade6116100be578063df8408fe11610078578063df8408fe14610803578063e6b2603b14610822578063ee828db314610836578063f2fde38b1461086f578063f71b9bbf1461088e578063f872858a146108ad575f80fd5b8063ae85ade614610715578063c16dd4a414610734578063c867d60b14610753578063cea9d26f14610781578063dd62ed3e146107a0578063df20fd49146107e4575f80fd5b80638b42507f1161010f5780638b42507f146106645780638da5cb5b1461069257806395d89b41146106ae5780639d9241ec146106c2578063a457c2d7146106d7578063a9059cbb146106f6575f80fd5b806372460e7f146105b7578063728d41c9146105d6578063736ce0d4146105f557806375f0a8741461061b5780637d1db4a51461063a578063807c2d9c1461064f575f80fd5b80633ecad271116101f75780635d098b38116101b15780635d098b38146104fa5780635e42358c14610519578063651a8987146105375780636ddd17131461055657806370a082311461056f578063715018a6146105a3575f80fd5b80633ecad2711461042c5780634974d88f1461045a5780635342acb41461047957806359b107b9146104a757806359fac517146104bc5780635c85974f146104db575f80fd5b806323b872dd1161024857806323b872dd1461036557806327c8f83514610384578063296f0a0c146103b75780632b112e49146103d8578063313ce567146103ec578063395093511461040d575f80fd5b80630445b6671461028e57806306fdde03146102b65780630930907b146102d7578063095ea7b31461032257806318160ddd14610351575f80fd5b3661028a57005b5f80fd5b348015610299575f80fd5b506102a360175481565b6040519081526020015b60405180910390f35b3480156102c1575f80fd5b506102ca6108cc565b6040516102ad9190611e4e565b3480156102e2575f80fd5b5061030a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016102ad565b34801561032d575f80fd5b5061034161033c366004611ead565b61095c565b60405190151581526020016102ad565b34801561035c575f80fd5b506013546102a3565b348015610370575f80fd5b5061034161037f366004611ed7565b610972565b34801561038f575f80fd5b5061030a7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103c2575f80fd5b506103d66103d1366004611f15565b6109db565b005b3480156103e3575f80fd5b506102a3610a2f565b3480156103f7575f80fd5b5060035460405160ff90911681526020016102ad565b348015610418575f80fd5b50610341610427366004611ead565b610ac0565b348015610437575f80fd5b50610341610446366004611f15565b600f6020525f908152604090205460ff1681565b348015610465575f80fd5b506103d6610474366004611f3d565b610af5565b348015610484575f80fd5b50610341610493366004611f15565b600e6020525f908152604090205460ff1681565b3480156104b2575f80fd5b506102a360085481565b3480156104c7575f80fd5b506103d66104d6366004611f15565b610b3a565b3480156104e6575f80fd5b506103d66104f5366004611f58565b610b8f565b348015610505575f80fd5b506103d6610514366004611f15565b610bbd565b348015610524575f80fd5b5060185461034190610100900460ff1681565b348015610542575f80fd5b506103d6610551366004611f6f565b610c08565b348015610561575f80fd5b506018546103419060ff1681565b34801561057a575f80fd5b506102a3610589366004611f15565b6001600160a01b03165f908152600c602052604090205490565b3480156105ae575f80fd5b506103d6610c5b565b3480156105c2575f80fd5b5060195461030a906001600160a01b031681565b3480156105e1575f80fd5b506103d66105f0366004611f58565b610c8f565b348015610600575f80fd5b5060185461030a90630100000090046001600160a01b031681565b348015610626575f80fd5b50600b5461030a906001600160a01b031681565b348015610645575f80fd5b506102a360155481565b34801561065a575f80fd5b506102a360165481565b34801561066f575f80fd5b5061034161067e366004611f15565b60116020525f908152604090205460ff1681565b34801561069d575f80fd5b505f546001600160a01b031661030a565b3480156106b9575f80fd5b506102ca610cbd565b3480156106cd575f80fd5b506102a360095481565b3480156106e2575f80fd5b506103416106f1366004611ead565b610ccc565b348015610701575f80fd5b50610341610710366004611ead565b610d19565b348015610720575f80fd5b506103d661072f366004611f6f565b610d25565b34801561073f575f80fd5b506103d661074e366004611f6f565b610d78565b34801561075e575f80fd5b5061034161076d366004611f15565b60106020525f908152604090205460ff1681565b34801561078c575f80fd5b506103d661079b366004611ed7565b610dde565b3480156107ab575f80fd5b506102a36107ba366004611fa6565b6001600160a01b039182165f908152600d6020908152604080832093909416825291909152205490565b3480156107ef575f80fd5b506103d66107fe366004611fd2565b610e7d565b34801561080e575f80fd5b506103d661081d366004611f6f565b610ebd565b34801561082d575f80fd5b506103d6610f10565b348015610841575f80fd5b506103d6610850366004611f3d565b601880549115156101000261ff0019909216919091179055600f601255565b34801561087a575f80fd5b506103d6610889366004611f15565b610fc8565b348015610899575f80fd5b506103d66108a8366004611f15565b61105f565b3480156108b8575f80fd5b506018546103419062010000900460ff1681565b6060600180546108db90611fee565b80601f016020809104026020016040519081016040528092919081815260200182805461090790611fee565b80156109525780601f1061092957610100808354040283529160200191610952565b820191905f5260205f20905b81548152906001019060200180831161093557829003601f168201915b5050505050905090565b5f6109683384846110aa565b5060015b92915050565b5f61097e8484846111cd565b506109d084336109cb856040518060600160405280602881526020016121de602891396001600160a01b038a165f908152600d6020908152604080832033845290915290205491906115f4565b6110aa565b5060015b9392505050565b5f546001600160a01b03163314610a0d5760405162461bcd60e51b8152600401610a0490612026565b60405180910390fd5b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165f908152600c6020526040812054610abb90610ab5610aac7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03165f908152600c602052604090205490565b6013549061162c565b9061162c565b905090565b335f818152600d602090815260408083206001600160a01b038716845290915281205490916109689185906109cb908661166d565b5f546001600160a01b03163314610b1e5760405162461bcd60e51b8152600401610a0490612026565b60188054911515620100000262ff000019909216919091179055565b5f546001600160a01b03163314610b635760405162461bcd60e51b8152600401610a0490612026565b601880546001600160a01b039092166301000000026301000000600160b81b0319909216919091179055565b5f546001600160a01b03163314610bb85760405162461bcd60e51b8152600401610a0490612026565b601555565b5f546001600160a01b03163314610be65760405162461bcd60e51b8152600401610a0490612026565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b03163314610c315760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610c845760405162461bcd60e51b8152600401610a0490612026565b610c8d5f6116cb565b565b5f546001600160a01b03163314610cb85760405162461bcd60e51b8152600401610a0490612026565b601655565b6060600280546108db90611fee565b5f61096833846109cb8560405180606001604052806025815260200161220660259139335f908152600d602090815260408083206001600160a01b038d16845290915290205491906115f4565b5f6109d03384846111cd565b5f546001600160a01b03163314610d4e5760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b03919091165f908152601160205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610da15760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b039091165f908152600f60209081526040808320805494151560ff19958616811790915560109092529091208054909216179055565b5f546001600160a01b03163314610e075760405162461bcd60e51b8152600401610a0490612026565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610e53573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e77919061205b565b50505050565b5f546001600160a01b03163314610ea65760405162461bcd60e51b8152600401610a0490612026565b6018805460ff191692151592909217909155601755565b5f546001600160a01b03163314610ee65760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b03919091165f908152600e60205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610f395760405162461bcd60e51b8152600401610a0490612026565b6040515f90339047908381818185875af1925050503d805f8114610f78576040519150601f19603f3d011682016040523d82523d5f602084013e610f7d565b606091505b5050905080610fc55760405162461bcd60e51b81526020600482015260146024820152735472616e73616374696f6e204661696c6564212160601b6044820152606401610a04565b50565b5f546001600160a01b03163314610ff15760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b0381166110565760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a04565b610fc5816116cb565b5f546001600160a01b031633146110885760405162461bcd60e51b8152600401610a0490612026565b601980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661110c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a04565b6001600160a01b03821661116d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a04565b6001600160a01b038381165f818152600d602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6001600160a01b0384166112325760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a04565b6001600160a01b0383166112945760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a04565b5f82116112f55760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610a04565b601954600160a01b900460ff16156113195761131284848461171a565b90506109d4565b305f908152600c6020526040902054601754811080159081906113465750601954600160a01b900460ff16155b801561136a57506001600160a01b0386165f908152600f602052604090205460ff16155b8015611378575060185460ff165b1561138657611386826117fd565b6001600160a01b0386165f9081526011602052604090205460ff161580156113c657506001600160a01b0385165f9081526011602052604090205460ff16155b1561142e5760155484111561142e5760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657220616d6f756e74206578636565647320746865206d6178546044820152673c20b6b7bab73a1760c11b6064820152608401610a04565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0389165f908152600c909152919091205461147f9186906115f4565b6001600160a01b0387165f908152600c60205260408120919091556114a48787611938565b6114b8576114b38787876119d2565b6114ba565b845b60185490915062010000900460ff1680156114ed57506001600160a01b0386165f9081526010602052604090205460ff16155b1561156b5760165461151d82611517896001600160a01b03165f908152600c602052604090205490565b9061166d565b111561156b5760405162461bcd60e51b815260206004820152601b60248201527f4d61782057616c6c6574204c696d6974204578636565646564212100000000006044820152606401610a04565b6001600160a01b0386165f908152600c602052604090205461158d908261166d565b6001600160a01b038088165f818152600c602052604090819020939093559151908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115e09085815260200190565b60405180910390a3600193505050506109d4565b5f81848411156116175760405162461bcd60e51b8152600401610a049190611e4e565b505f611623848661208a565b95945050505050565b5f6109d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115f4565b5f80611679838561209d565b9050838110156109d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610a04565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386165f908152600c9091529182205461176a9184906115f4565b6001600160a01b038086165f908152600c60205260408082209390935590851681522054611798908361166d565b6001600160a01b038085165f818152600c602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117eb9086815260200190565b60405180910390a35060019392505050565b6019805460ff60a01b1916600160a01b1790556009546008545f91611822919061166d565b9050805f036118315750611928565b5f61184960075460055461166d90919063ffffffff16565b90505f611863600261185d85818887611af4565b90611b72565b90505f611870858361162c565b90504761187c82611bb3565b5f611887478361162c565b90505f61189f611898876002611b72565b889061162c565b90505f6118b3600261185d8481878c611af4565b90505f6118c0848361162c565b90505f821180156118d057505f87115b156118df576118df8783611d63565b801561191e57600b546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561191c573d5f803e3d5ffd5b505b5050505050505050505b506019805460ff60a01b19169055565b6001600160a01b0382165f908152600e602052604081205460ff168061197557506001600160a01b0382165f908152600e602052604090205460ff165b156119825750600161096c565b6001600160a01b0383165f908152600f602052604090205460ff16806119bf57506001600160a01b0382165f908152600f602052604090205460ff165b156119cb57505f61096c565b505f61096c565b6001600160a01b0383165f908152600f6020526040812054819060ff1615611a1657611a0f60145461185d60085486611af490919063ffffffff16565b9050611a72565b6001600160a01b0384165f908152600f602052604090205460ff1615611a7257600a6012541115611a5457601454611a0f9061185d856103e8611af4565b611a6f60145461185d60095486611af490919063ffffffff16565b90505b8015611aea57305f908152600c6020526040902054611a91908261166d565b305f818152600c6020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611ae19085815260200190565b60405180910390a35b611623838261162c565b5f825f03611b0357505f61096c565b5f611b0e83856120b0565b905082611b1b85836120c7565b146109d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610a04565b5f6109d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e22565b6040805160028082526060820183525f9260208301908036833701905050905030815f81518110611be657611be66120e6565b60200260200101906001600160a01b031690816001600160a01b031681525050601860039054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c57573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c7b91906120fa565b81600181518110611c8e57611c8e6120e6565b6001600160a01b039283166020918202929092010152601854611cbb9130916301000000900416846110aa565b60185460405163791ac94760e01b815263010000009091046001600160a01b03169063791ac94790611cf99085905f90869030904290600401612157565b5f604051808303815f87803b158015611d10575f80fd5b505af1158015611d22573d5f803e3d5ffd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051611d57929190612192565b60405180910390a15050565b601854611d82903090630100000090046001600160a01b0316846110aa565b601854600a5460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a48201526301000000909204169063f305d71990839060c40160606040518083038185885af1158015611df6573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190611e1b91906121b2565b5050505050565b5f8183611e425760405162461bcd60e51b8152600401610a049190611e4e565b505f61162384866120c7565b5f6020808352835180828501525f5b81811015611e7957858101830151858201604001528201611e5d565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610fc5575f80fd5b5f8060408385031215611ebe575f80fd5b8235611ec981611e99565b946020939093013593505050565b5f805f60608486031215611ee9575f80fd5b8335611ef481611e99565b92506020840135611f0481611e99565b929592945050506040919091013590565b5f60208284031215611f25575f80fd5b81356109d481611e99565b8015158114610fc5575f80fd5b5f60208284031215611f4d575f80fd5b81356109d481611f30565b5f60208284031215611f68575f80fd5b5035919050565b5f8060408385031215611f80575f80fd5b8235611f8b81611e99565b91506020830135611f9b81611f30565b809150509250929050565b5f8060408385031215611fb7575f80fd5b8235611fc281611e99565b91506020830135611f9b81611e99565b5f8060408385031215611fe3575f80fd5b8235611ec981611f30565b600181811c9082168061200257607f821691505b60208210810361202057634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561206b575f80fd5b81516109d481611f30565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561096c5761096c612076565b8082018082111561096c5761096c612076565b808202811582820484141761096c5761096c612076565b5f826120e157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561210a575f80fd5b81516109d481611e99565b5f8151808452602080850194508084015f5b8381101561214c5781516001600160a01b031687529582019590820190600101612127565b509495945050505050565b85815284602082015260a060408201525f61217560a0830186612115565b6001600160a01b0394909416606083015250608001529392505050565b828152604060208201525f6121aa6040830184612115565b949350505050565b5f805f606084860312156121c4575f80fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212201151e3173b068aaec03b28c102de9be845fe4472cb62e845fd731fdb530f6c8964736f6c63430008140033
Deployed Bytecode
0x608060405260043610610283575f3560e01c806372460e7f11610155578063ae85ade6116100be578063df8408fe11610078578063df8408fe14610803578063e6b2603b14610822578063ee828db314610836578063f2fde38b1461086f578063f71b9bbf1461088e578063f872858a146108ad575f80fd5b8063ae85ade614610715578063c16dd4a414610734578063c867d60b14610753578063cea9d26f14610781578063dd62ed3e146107a0578063df20fd49146107e4575f80fd5b80638b42507f1161010f5780638b42507f146106645780638da5cb5b1461069257806395d89b41146106ae5780639d9241ec146106c2578063a457c2d7146106d7578063a9059cbb146106f6575f80fd5b806372460e7f146105b7578063728d41c9146105d6578063736ce0d4146105f557806375f0a8741461061b5780637d1db4a51461063a578063807c2d9c1461064f575f80fd5b80633ecad271116101f75780635d098b38116101b15780635d098b38146104fa5780635e42358c14610519578063651a8987146105375780636ddd17131461055657806370a082311461056f578063715018a6146105a3575f80fd5b80633ecad2711461042c5780634974d88f1461045a5780635342acb41461047957806359b107b9146104a757806359fac517146104bc5780635c85974f146104db575f80fd5b806323b872dd1161024857806323b872dd1461036557806327c8f83514610384578063296f0a0c146103b75780632b112e49146103d8578063313ce567146103ec578063395093511461040d575f80fd5b80630445b6671461028e57806306fdde03146102b65780630930907b146102d7578063095ea7b31461032257806318160ddd14610351575f80fd5b3661028a57005b5f80fd5b348015610299575f80fd5b506102a360175481565b6040519081526020015b60405180910390f35b3480156102c1575f80fd5b506102ca6108cc565b6040516102ad9190611e4e565b3480156102e2575f80fd5b5061030a7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016102ad565b34801561032d575f80fd5b5061034161033c366004611ead565b61095c565b60405190151581526020016102ad565b34801561035c575f80fd5b506013546102a3565b348015610370575f80fd5b5061034161037f366004611ed7565b610972565b34801561038f575f80fd5b5061030a7f000000000000000000000000000000000000000000000000000000000000dead81565b3480156103c2575f80fd5b506103d66103d1366004611f15565b6109db565b005b3480156103e3575f80fd5b506102a3610a2f565b3480156103f7575f80fd5b5060035460405160ff90911681526020016102ad565b348015610418575f80fd5b50610341610427366004611ead565b610ac0565b348015610437575f80fd5b50610341610446366004611f15565b600f6020525f908152604090205460ff1681565b348015610465575f80fd5b506103d6610474366004611f3d565b610af5565b348015610484575f80fd5b50610341610493366004611f15565b600e6020525f908152604090205460ff1681565b3480156104b2575f80fd5b506102a360085481565b3480156104c7575f80fd5b506103d66104d6366004611f15565b610b3a565b3480156104e6575f80fd5b506103d66104f5366004611f58565b610b8f565b348015610505575f80fd5b506103d6610514366004611f15565b610bbd565b348015610524575f80fd5b5060185461034190610100900460ff1681565b348015610542575f80fd5b506103d6610551366004611f6f565b610c08565b348015610561575f80fd5b506018546103419060ff1681565b34801561057a575f80fd5b506102a3610589366004611f15565b6001600160a01b03165f908152600c602052604090205490565b3480156105ae575f80fd5b506103d6610c5b565b3480156105c2575f80fd5b5060195461030a906001600160a01b031681565b3480156105e1575f80fd5b506103d66105f0366004611f58565b610c8f565b348015610600575f80fd5b5060185461030a90630100000090046001600160a01b031681565b348015610626575f80fd5b50600b5461030a906001600160a01b031681565b348015610645575f80fd5b506102a360155481565b34801561065a575f80fd5b506102a360165481565b34801561066f575f80fd5b5061034161067e366004611f15565b60116020525f908152604090205460ff1681565b34801561069d575f80fd5b505f546001600160a01b031661030a565b3480156106b9575f80fd5b506102ca610cbd565b3480156106cd575f80fd5b506102a360095481565b3480156106e2575f80fd5b506103416106f1366004611ead565b610ccc565b348015610701575f80fd5b50610341610710366004611ead565b610d19565b348015610720575f80fd5b506103d661072f366004611f6f565b610d25565b34801561073f575f80fd5b506103d661074e366004611f6f565b610d78565b34801561075e575f80fd5b5061034161076d366004611f15565b60106020525f908152604090205460ff1681565b34801561078c575f80fd5b506103d661079b366004611ed7565b610dde565b3480156107ab575f80fd5b506102a36107ba366004611fa6565b6001600160a01b039182165f908152600d6020908152604080832093909416825291909152205490565b3480156107ef575f80fd5b506103d66107fe366004611fd2565b610e7d565b34801561080e575f80fd5b506103d661081d366004611f6f565b610ebd565b34801561082d575f80fd5b506103d6610f10565b348015610841575f80fd5b506103d6610850366004611f3d565b601880549115156101000261ff0019909216919091179055600f601255565b34801561087a575f80fd5b506103d6610889366004611f15565b610fc8565b348015610899575f80fd5b506103d66108a8366004611f15565b61105f565b3480156108b8575f80fd5b506018546103419062010000900460ff1681565b6060600180546108db90611fee565b80601f016020809104026020016040519081016040528092919081815260200182805461090790611fee565b80156109525780601f1061092957610100808354040283529160200191610952565b820191905f5260205f20905b81548152906001019060200180831161093557829003601f168201915b5050505050905090565b5f6109683384846110aa565b5060015b92915050565b5f61097e8484846111cd565b506109d084336109cb856040518060600160405280602881526020016121de602891396001600160a01b038a165f908152600d6020908152604080832033845290915290205491906115f4565b6110aa565b5060015b9392505050565b5f546001600160a01b03163314610a0d5760405162461bcd60e51b8152600401610a0490612026565b60405180910390fd5b600a80546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000165f908152600c6020526040812054610abb90610ab5610aac7f000000000000000000000000000000000000000000000000000000000000dead6001600160a01b03165f908152600c602052604090205490565b6013549061162c565b9061162c565b905090565b335f818152600d602090815260408083206001600160a01b038716845290915281205490916109689185906109cb908661166d565b5f546001600160a01b03163314610b1e5760405162461bcd60e51b8152600401610a0490612026565b60188054911515620100000262ff000019909216919091179055565b5f546001600160a01b03163314610b635760405162461bcd60e51b8152600401610a0490612026565b601880546001600160a01b039092166301000000026301000000600160b81b0319909216919091179055565b5f546001600160a01b03163314610bb85760405162461bcd60e51b8152600401610a0490612026565b601555565b5f546001600160a01b03163314610be65760405162461bcd60e51b8152600401610a0490612026565b600b80546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b03163314610c315760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b03919091165f908152601060205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610c845760405162461bcd60e51b8152600401610a0490612026565b610c8d5f6116cb565b565b5f546001600160a01b03163314610cb85760405162461bcd60e51b8152600401610a0490612026565b601655565b6060600280546108db90611fee565b5f61096833846109cb8560405180606001604052806025815260200161220660259139335f908152600d602090815260408083206001600160a01b038d16845290915290205491906115f4565b5f6109d03384846111cd565b5f546001600160a01b03163314610d4e5760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b03919091165f908152601160205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610da15760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b039091165f908152600f60209081526040808320805494151560ff19958616811790915560109092529091208054909216179055565b5f546001600160a01b03163314610e075760405162461bcd60e51b8152600401610a0490612026565b60405163a9059cbb60e01b81526001600160a01b0383811660048301526024820183905284169063a9059cbb906044016020604051808303815f875af1158015610e53573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e77919061205b565b50505050565b5f546001600160a01b03163314610ea65760405162461bcd60e51b8152600401610a0490612026565b6018805460ff191692151592909217909155601755565b5f546001600160a01b03163314610ee65760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b03919091165f908152600e60205260409020805460ff1916911515919091179055565b5f546001600160a01b03163314610f395760405162461bcd60e51b8152600401610a0490612026565b6040515f90339047908381818185875af1925050503d805f8114610f78576040519150601f19603f3d011682016040523d82523d5f602084013e610f7d565b606091505b5050905080610fc55760405162461bcd60e51b81526020600482015260146024820152735472616e73616374696f6e204661696c6564212160601b6044820152606401610a04565b50565b5f546001600160a01b03163314610ff15760405162461bcd60e51b8152600401610a0490612026565b6001600160a01b0381166110565760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610a04565b610fc5816116cb565b5f546001600160a01b031633146110885760405162461bcd60e51b8152600401610a0490612026565b601980546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b03831661110c5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610a04565b6001600160a01b03821661116d5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610a04565b6001600160a01b038381165f818152600d602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f6001600160a01b0384166112325760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610a04565b6001600160a01b0383166112945760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610a04565b5f82116112f55760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610a04565b601954600160a01b900460ff16156113195761131284848461171a565b90506109d4565b305f908152600c6020526040902054601754811080159081906113465750601954600160a01b900460ff16155b801561136a57506001600160a01b0386165f908152600f602052604090205460ff16155b8015611378575060185460ff165b1561138657611386826117fd565b6001600160a01b0386165f9081526011602052604090205460ff161580156113c657506001600160a01b0385165f9081526011602052604090205460ff16155b1561142e5760155484111561142e5760405162461bcd60e51b815260206004820152602860248201527f5472616e7366657220616d6f756e74206578636565647320746865206d6178546044820152673c20b6b7bab73a1760c11b6064820152608401610a04565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0389165f908152600c909152919091205461147f9186906115f4565b6001600160a01b0387165f908152600c60205260408120919091556114a48787611938565b6114b8576114b38787876119d2565b6114ba565b845b60185490915062010000900460ff1680156114ed57506001600160a01b0386165f9081526010602052604090205460ff16155b1561156b5760165461151d82611517896001600160a01b03165f908152600c602052604090205490565b9061166d565b111561156b5760405162461bcd60e51b815260206004820152601b60248201527f4d61782057616c6c6574204c696d6974204578636565646564212100000000006044820152606401610a04565b6001600160a01b0386165f908152600c602052604090205461158d908261166d565b6001600160a01b038088165f818152600c602052604090819020939093559151908916907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906115e09085815260200190565b60405180910390a3600193505050506109d4565b5f81848411156116175760405162461bcd60e51b8152600401610a049190611e4e565b505f611623848661208a565b95945050505050565b5f6109d483836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506115f4565b5f80611679838561209d565b9050838110156109d45760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610a04565b5f80546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386165f908152600c9091529182205461176a9184906115f4565b6001600160a01b038086165f908152600c60205260408082209390935590851681522054611798908361166d565b6001600160a01b038085165f818152600c602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906117eb9086815260200190565b60405180910390a35060019392505050565b6019805460ff60a01b1916600160a01b1790556009546008545f91611822919061166d565b9050805f036118315750611928565b5f61184960075460055461166d90919063ffffffff16565b90505f611863600261185d85818887611af4565b90611b72565b90505f611870858361162c565b90504761187c82611bb3565b5f611887478361162c565b90505f61189f611898876002611b72565b889061162c565b90505f6118b3600261185d8481878c611af4565b90505f6118c0848361162c565b90505f821180156118d057505f87115b156118df576118df8783611d63565b801561191e57600b546040516001600160a01b039091169082156108fc029083905f818181858888f1935050505015801561191c573d5f803e3d5ffd5b505b5050505050505050505b506019805460ff60a01b19169055565b6001600160a01b0382165f908152600e602052604081205460ff168061197557506001600160a01b0382165f908152600e602052604090205460ff165b156119825750600161096c565b6001600160a01b0383165f908152600f602052604090205460ff16806119bf57506001600160a01b0382165f908152600f602052604090205460ff165b156119cb57505f61096c565b505f61096c565b6001600160a01b0383165f908152600f6020526040812054819060ff1615611a1657611a0f60145461185d60085486611af490919063ffffffff16565b9050611a72565b6001600160a01b0384165f908152600f602052604090205460ff1615611a7257600a6012541115611a5457601454611a0f9061185d856103e8611af4565b611a6f60145461185d60095486611af490919063ffffffff16565b90505b8015611aea57305f908152600c6020526040902054611a91908261166d565b305f818152600c6020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90611ae19085815260200190565b60405180910390a35b611623838261162c565b5f825f03611b0357505f61096c565b5f611b0e83856120b0565b905082611b1b85836120c7565b146109d45760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610a04565b5f6109d483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611e22565b6040805160028082526060820183525f9260208301908036833701905050905030815f81518110611be657611be66120e6565b60200260200101906001600160a01b031690816001600160a01b031681525050601860039054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c57573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c7b91906120fa565b81600181518110611c8e57611c8e6120e6565b6001600160a01b039283166020918202929092010152601854611cbb9130916301000000900416846110aa565b60185460405163791ac94760e01b815263010000009091046001600160a01b03169063791ac94790611cf99085905f90869030904290600401612157565b5f604051808303815f87803b158015611d10575f80fd5b505af1158015611d22573d5f803e3d5ffd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a78282604051611d57929190612192565b60405180910390a15050565b601854611d82903090630100000090046001600160a01b0316846110aa565b601854600a5460405163f305d71960e01b8152306004820152602481018590525f6044820181905260648201526001600160a01b0391821660848201524260a48201526301000000909204169063f305d71990839060c40160606040518083038185885af1158015611df6573d5f803e3d5ffd5b50505050506040513d601f19601f82011682018060405250810190611e1b91906121b2565b5050505050565b5f8183611e425760405162461bcd60e51b8152600401610a049190611e4e565b505f61162384866120c7565b5f6020808352835180828501525f5b81811015611e7957858101830151858201604001528201611e5d565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610fc5575f80fd5b5f8060408385031215611ebe575f80fd5b8235611ec981611e99565b946020939093013593505050565b5f805f60608486031215611ee9575f80fd5b8335611ef481611e99565b92506020840135611f0481611e99565b929592945050506040919091013590565b5f60208284031215611f25575f80fd5b81356109d481611e99565b8015158114610fc5575f80fd5b5f60208284031215611f4d575f80fd5b81356109d481611f30565b5f60208284031215611f68575f80fd5b5035919050565b5f8060408385031215611f80575f80fd5b8235611f8b81611e99565b91506020830135611f9b81611f30565b809150509250929050565b5f8060408385031215611fb7575f80fd5b8235611fc281611e99565b91506020830135611f9b81611e99565b5f8060408385031215611fe3575f80fd5b8235611ec981611f30565b600181811c9082168061200257607f821691505b60208210810361202057634e487b7160e01b5f52602260045260245ffd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f6020828403121561206b575f80fd5b81516109d481611f30565b634e487b7160e01b5f52601160045260245ffd5b8181038181111561096c5761096c612076565b8082018082111561096c5761096c612076565b808202811582820484141761096c5761096c612076565b5f826120e157634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f6020828403121561210a575f80fd5b81516109d481611e99565b5f8151808452602080850194508084015f5b8381101561214c5781516001600160a01b031687529582019590820190600101612127565b509495945050505050565b85815284602082015260a060408201525f61217560a0830186612115565b6001600160a01b0394909416606083015250608001529392505050565b828152604060208201525f6121aa6040830184612115565b949350505050565b5f805f606084860312156121c4575f80fd5b835192506020840151915060408401519050925092509256fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa26469706673582212201151e3173b068aaec03b28c102de9be845fe4472cb62e845fd731fdb530f6c8964736f6c63430008140033
Deployed Bytecode Sourcemap
7436:13620:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8822:53;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;8822:53:0;;;;;;;;11118:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;7782:81::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;913:32:1;;;895:51;;883:2;868:18;7782:81:0;749:203:1;12456:161:0;;;;;;;;;;-1:-1:-1;12456:161:0;;;;;:::i;:::-;;:::i;:::-;;;1578:14:1;;1571:22;1553:41;;1541:2;1526:18;12456:161:0;1413:187:1;11395:100:0;;;;;;;;;;-1:-1:-1;11475:12:0;;11395:100;;13230:313;;;;;;;;;;-1:-1:-1;13230:313:0;;;;;:::i;:::-;;:::i;7694:81::-;;;;;;;;;;;;;;;20229:116;;;;;;;;;;-1:-1:-1;20229:116:0;;;;;:::i;:::-;;:::i;:::-;;11789:156;;;;;;;;;;;;;:::i;11304:83::-;;;;;;;;;;-1:-1:-1;11370:9:0;;11304:83;;11370:9;;;;2460:36:1;;2448:2;2433:18;11304:83:0;2318:184:1;11953:218:0;;;;;;;;;;-1:-1:-1;11953:218:0;;;;;:::i;:::-;;:::i;8396:45::-;;;;;;;;;;-1:-1:-1;8396:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;19495:105;;;;;;;;;;-1:-1:-1;19495:105:0;;;;;:::i;:::-;;:::i;8339:50::-;;;;;;;;;;-1:-1:-1;8339:50:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;8018:26;;;;;;;;;;;;;;;;20835:115;;;;;;;;;;-1:-1:-1;20835:115:0;;;;;:::i;:::-;;:::i;20116:101::-;;;;;;;;;;-1:-1:-1;20116:101:0;;;;;:::i;:::-;;:::i;20353:114::-;;;;;;;;;;-1:-1:-1;20353:114:0;;;;;:::i;:::-;;:::i;8921:32::-;;;;;;;;;;-1:-1:-1;8921:32:0;;;;;;;;;;;19738:128;;;;;;;;;;-1:-1:-1;19738:128:0;;;;;:::i;:::-;;:::i;8884:30::-;;;;;;;;;;-1:-1:-1;8884:30:0;;;;;;;;11503:123;;;;;;;;;;-1:-1:-1;11503:123:0;;;;;:::i;:::-;-1:-1:-1;;;;;11595:18:0;11569:7;11595:18;;;:9;:18;;;;;;;11503:123;2196:94;;;;;;;;;;;;;:::i;9042:22::-;;;;;;;;;;-1:-1:-1;9042:22:0;;;;-1:-1:-1;;;;;9042:22:0;;;20002:106;;;;;;;;;;-1:-1:-1;20002:106:0;;;;;:::i;:::-;;:::i;9004:31::-;;;;;;;;;;-1:-1:-1;9004:31:0;;;;;;;-1:-1:-1;;;;;9004:31:0;;;8119:84;;;;;;;;;;-1:-1:-1;8119:84:0;;;;-1:-1:-1;;;;;8119:84:0;;;8707:51;;;;;;;;;;;;;;;;8771:40;;;;;;;;;;;;;;;;8507:48;;;;;;;;;;-1:-1:-1;8507:48:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;1887:87;;;;;;;;;;-1:-1:-1;1933:7:0;1960:6;-1:-1:-1;;;;;1960:6:0;1887:87;;11209;;;;;;;;;;;;;:::i;8051:27::-;;;;;;;;;;;;;;;;12179:269;;;;;;;;;;-1:-1:-1;12179:269:0;;;;;:::i;:::-;;:::i;13055:167::-;;;;;;;;;;-1:-1:-1;13055:167:0;;;;;:::i;:::-;;:::i;19874:120::-;;;;;;;;;;-1:-1:-1;19874:120:0;;;;;:::i;:::-;;:::i;20475:166::-;;;;;;;;;;-1:-1:-1;20475:166:0;;;;;:::i;:::-;;:::i;8448:52::-;;;;;;;;;;-1:-1:-1;8448:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;19223:131;;;;;;;;;;-1:-1:-1;19223:131:0;;;;;:::i;:::-;;:::i;11634:143::-;;;;;;;;;;-1:-1:-1;11634:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;11742:18:0;;;11715:7;11742:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;11634:143;20649:178;;;;;;;;;;-1:-1:-1;20649:178:0;;;;;:::i;:::-;;:::i;19608:122::-;;;;;;;;;;-1:-1:-1;19608:122:0;;;;;:::i;:::-;;:::i;19006:177::-;;;;;;;;;;;;;:::i;19362:125::-;;;;;;;;;;-1:-1:-1;19362:125:0;;;;;:::i;:::-;19427:13;:23;;;;;;;-1:-1:-1;;19427:23:0;;;;;;;;;19477:2;19461:13;:18;19362:125;2298:229;;;;;;;;;;-1:-1:-1;2298:229:0;;;;;:::i;:::-;;:::i;20958:91::-;;;;;;;;;;-1:-1:-1;20958:91:0;;;;;:::i;:::-;;:::i;8960:35::-;;;;;;;;;;-1:-1:-1;8960:35:0;;;;;;;;;;;11118:83;11155:13;11188:5;11181:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11118:83;:::o;12456:161::-;12531:4;12548:39;534:10;12571:7;12580:6;12548:8;:39::i;:::-;-1:-1:-1;12605:4:0;12456:161;;;;;:::o;13230:313::-;13328:4;13345:36;13355:6;13363:9;13374:6;13345:9;:36::i;:::-;-1:-1:-1;13392:121:0;13401:6;534:10;13423:89;13461:6;13423:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;13423:19:0;;;;;;:11;:19;;;;;;;;534:10;13423:33;;;;;;;;;;:37;:89::i;:::-;13392:8;:121::i;:::-;-1:-1:-1;13531:4:0;13230:313;;;;;;:::o;20229:116::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;;;;;;;;;20307:17:::1;:30:::0;;-1:-1:-1;;;;;;20307:30:0::1;-1:-1:-1::0;;;;;20307:30:0;;;::::1;::::0;;;::::1;::::0;;20229:116::o;11789:156::-;-1:-1:-1;;;;;11924:11:0;11595:18;11842:7;11595:18;;;:9;:18;;;;;;11869:68;;:40;11886:22;11896:11;-1:-1:-1;;;;;11595:18:0;11569:7;11595:18;;;:9;:18;;;;;;;11503:123;11886:22;11869:12;;;:16;:40::i;:::-;:44;;:68::i;:::-;11862:75;;11789:156;:::o;11953:218::-;534:10;12041:4;12090:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12090:34:0;;;;;;;;;;12041:4;;12058:83;;12081:7;;12090:50;;12129:10;12090:38;:50::i;19495:105::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;19566:16:::1;:26:::0;;;::::1;;::::0;::::1;-1:-1:-1::0;;19566:26:0;;::::1;::::0;;;::::1;::::0;;19495:105::o;20835:115::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;20907:9:::1;:35:::0;;-1:-1:-1;;;;;20907:35:0;;::::1;::::0;::::1;-1:-1:-1::0;;;;;;20907:35:0;;::::1;::::0;;;::::1;::::0;;20835:115::o;20116:101::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;20186:12:::1;:23:::0;20116:101::o;20353:114::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;20431:15:::1;:28:::0;;-1:-1:-1;;;;;;20431:28:0::1;-1:-1:-1::0;;;;;20431:28:0;;;::::1;::::0;;;::::1;::::0;;20353:114::o;19738:128::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19823:25:0;;;::::1;;::::0;;;:19:::1;:25;::::0;;;;:35;;-1:-1:-1;;19823:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19738:128::o;2196:94::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;2261:21:::1;2279:1;2261:9;:21::i;:::-;2196:94::o:0;20002:106::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;20079:10:::1;:21:::0;20002:106::o;11209:87::-;11248:13;11281:7;11274:14;;;;;:::i;12179:269::-;12272:4;12289:129;534:10;12312:7;12321:96;12360:15;12321:96;;;;;;;;;;;;;;;;;534:10;12321:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;12321:34:0;;;;;;;;;;;;:38;:96::i;13055:167::-;13133:4;13150:42;534:10;13174:9;13185:6;13150:9;:42::i;19874:120::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19955:21:0;;;::::1;;::::0;;;:15:::1;:21;::::0;;;;:31;;-1:-1:-1;;19955:31:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19874:120::o;20475:166::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;20557:19:0;;::::1;;::::0;;;:12:::1;:19;::::0;;;;;;;:29;;;::::1;;-1:-1:-1::0;;20557:29:0;;::::1;::::0;::::1;::::0;;;20597:19:::1;:26:::0;;;;;;:36;;;;::::1;;::::0;;20475:166::o;19223:131::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;19316:30:::1;::::0;-1:-1:-1;;;19316:30:0;;-1:-1:-1;;;;;5797:32:1;;;19316:30:0::1;::::0;::::1;5779:51:1::0;5846:18;;;5839:34;;;19316:12:0;::::1;::::0;::::1;::::0;5752:18:1;;19316:30:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;19223:131:::0;;;:::o;20649:178::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;20763:11:::1;:22:::0;;-1:-1:-1;;20763:22:0::1;::::0;::::1;;::::0;;;::::1;::::0;;;20796:13:::1;:23:::0;20649:178::o;19608:122::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;19689:23:0;;;::::1;;::::0;;;:17:::1;:23;::::0;;;;:33;;-1:-1:-1;;19689:33:0::1;::::0;::::1;;::::0;;;::::1;::::0;;19608:122::o;19006:177::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;19072:58:::1;::::0;19060:7:::1;::::0;19080:10:::1;::::0;19104:21:::1;::::0;19060:7;19072:58;19060:7;19072:58;19104:21;19080:10;19072:58:::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19059:71;;;19149:2;19141:34;;;::::0;-1:-1:-1;;;19141:34:0;;6546:2:1;19141:34:0::1;::::0;::::1;6528:21:1::0;6585:2;6565:18;;;6558:30;-1:-1:-1;;;6604:18:1;;;6597:50;6664:18;;19141:34:0::1;6344:344:1::0;19141:34:0::1;19047:136;19006:177::o:0;2298:229::-;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2401:22:0;::::1;2379:110;;;::::0;-1:-1:-1;;;2379:110:0;;6895:2:1;2379:110:0::1;::::0;::::1;6877:21:1::0;6934:2;6914:18;;;6907:30;6973:34;6953:18;;;6946:62;-1:-1:-1;;;7024:18:1;;;7017:36;7070:19;;2379:110:0::1;6693:402:1::0;2379:110:0::1;2500:19;2510:8;2500:9;:19::i;20958:91::-:0;1933:7;1960:6;-1:-1:-1;;;;;1960:6:0;534:10;2108:23;2100:68;;;;-1:-1:-1;;;2100:68:0;;;;;;;:::i;:::-;21026:7:::1;:15:::0;;-1:-1:-1;;;;;;21026:15:0::1;-1:-1:-1::0;;;;;21026:15:0;;;::::1;::::0;;;::::1;::::0;;20958:91::o;12625:337::-;-1:-1:-1;;;;;12718:19:0;;12710:68;;;;-1:-1:-1;;;12710:68:0;;7302:2:1;12710:68:0;;;7284:21:1;7341:2;7321:18;;;7314:30;7380:34;7360:18;;;7353:62;-1:-1:-1;;;7431:18:1;;;7424:34;7475:19;;12710:68:0;7100:400:1;12710:68:0;-1:-1:-1;;;;;12797:21:0;;12789:68;;;;-1:-1:-1;;;12789:68:0;;7707:2:1;12789:68:0;;;7689:21:1;7746:2;7726:18;;;7719:30;7785:34;7765:18;;;7758:62;-1:-1:-1;;;7836:18:1;;;7829:32;7878:19;;12789:68:0;7505:398:1;12789:68:0;-1:-1:-1;;;;;12870:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;12922:32;;160:25:1;;;12922:32:0;;133:18:1;12922:32:0;;;;;;;12625:337;;;:::o;13551:1569::-;13638:4;-1:-1:-1;;;;;13665:20:0;;13657:70;;;;-1:-1:-1;;;13657:70:0;;8110:2:1;13657:70:0;;;8092:21:1;8149:2;8129:18;;;8122:30;8188:34;8168:18;;;8161:62;-1:-1:-1;;;8239:18:1;;;8232:35;8284:19;;13657:70:0;7908:401:1;13657:70:0;-1:-1:-1;;;;;13746:23:0;;13738:71;;;;-1:-1:-1;;;13738:71:0;;8516:2:1;13738:71:0;;;8498:21:1;8555:2;8535:18;;;8528:30;8594:34;8574:18;;;8567:62;-1:-1:-1;;;8645:18:1;;;8638:33;8688:19;;13738:71:0;8314:399:1;13738:71:0;13837:1;13828:6;:10;13820:64;;;;-1:-1:-1;;;13820:64:0;;8920:2:1;13820:64:0;;;8902:21:1;8959:2;8939:18;;;8932:30;8998:34;8978:18;;;8971:62;-1:-1:-1;;;9049:18:1;;;9042:39;9098:19;;13820:64:0;8718:405:1;13820:64:0;13901:6;;-1:-1:-1;;;13901:6:0;;;;13897:1214;;;13931:41;13946:6;13954:9;13965:6;13931:14;:41::i;:::-;13924:48;;;;13897:1214;14065:4;14016:28;11595:18;;;:9;:18;;;;;;14141:13;;14117:37;;;;;;;14175:34;;-1:-1:-1;14203:6:0;;-1:-1:-1;;;14203:6:0;;;;14202:7;14175:34;:59;;;;-1:-1:-1;;;;;;14214:20:0;;;;;;:12;:20;;;;;;;;14213:21;14175:59;:74;;;;-1:-1:-1;14238:11:0;;;;14175:74;14171:145;;;14270:30;14279:20;14270:8;:30::i;:::-;-1:-1:-1;;;;;14348:23:0;;;;;;:15;:23;;;;;;;;14347:24;:55;;;;-1:-1:-1;;;;;;14376:26:0;;;;;;:15;:26;;;;;;;;14375:27;14347:55;14344:170;;;14441:12;;14431:6;:22;;14423:75;;;;-1:-1:-1;;;14423:75:0;;9330:2:1;14423:75:0;;;9312:21:1;9369:2;9349:18;;;9342:30;9408:34;9388:18;;;9381:62;-1:-1:-1;;;9459:18:1;;;9452:38;9507:19;;14423:75:0;9128:404:1;14423:75:0;14563:53;;;;;;;;;;;-1:-1:-1;;;14563:53:0;;;;;;;;-1:-1:-1;;;;;14563:17:0;;-1:-1:-1;14563:17:0;;;:9;:17;;;;;;;;:53;;14585:6;;14563:21;:53::i;:::-;-1:-1:-1;;;;;14543:17:0;;;;;;:9;:17;;;;;:73;;;;14655:34;14553:6;14679:9;14655:16;:34::i;:::-;:80;;14701:34;14709:6;14717:9;14728:6;14701:7;:34::i;:::-;14655:80;;;14692:6;14655:80;14755:16;;14633:102;;-1:-1:-1;14755:16:0;;;;;:51;;;;-1:-1:-1;;;;;;14776:30:0;;;;;;:19;:30;;;;;;;;14775:31;14755:51;14752:181;;;14876:10;;14835:37;14860:11;14835:20;14845:9;-1:-1:-1;;;;;11595:18:0;11569:7;11595:18;;;:9;:18;;;;;;;11503:123;14835:20;:24;;:37::i;:::-;:51;;14827:90;;;;-1:-1:-1;;;14827:90:0;;9739:2:1;14827:90:0;;;9721:21:1;9778:2;9758:18;;;9751:30;9817:29;9797:18;;;9790:57;9864:18;;14827:90:0;9537:351:1;14827:90:0;-1:-1:-1;;;;;14972:20:0;;;;;;:9;:20;;;;;;:37;;14997:11;14972:24;:37::i;:::-;-1:-1:-1;;;;;14949:20:0;;;;;;;:9;:20;;;;;;;:60;;;;15031:40;;;;;;;;;;15059:11;160:25:1;;148:2;133:18;;14:177;15031:40:0;;;;;;;;15093:4;15086:11;;;;;;;3074:192;3160:7;3196:12;3188:6;;;;3180:29;;;;-1:-1:-1;;;3180:29:0;;;;;;;;:::i;:::-;-1:-1:-1;3220:9:0;3232:5;3236:1;3232;:5;:::i;:::-;3220:17;3074:192;-1:-1:-1;;;;;3074:192:0:o;2930:136::-;2988:7;3015:43;3019:1;3022;3015:43;;;;;;;;;;;;;;;;;:3;:43::i;2741:181::-;2799:7;;2831:5;2835:1;2831;:5;:::i;:::-;2819:17;;2860:1;2855;:6;;2847:46;;;;-1:-1:-1;;;2847:46:0;;10490:2:1;2847:46:0;;;10472:21:1;10529:2;10509:18;;;10502:30;10568:29;10548:18;;;10541:57;10615:18;;2847:46:0;10288:351:1;2535:173:0;2591:16;2610:6;;-1:-1:-1;;;;;2627:17:0;;;-1:-1:-1;;;;;;2627:17:0;;;;;;2660:40;;2610:6;;;;;;;2660:40;;2591:16;2660:40;2580:128;2535:173;:::o;15128:330::-;15258:53;;;;;;;;;;;-1:-1:-1;;;15258:53:0;;;;;;;;-1:-1:-1;;;;;15258:17:0;;15221:4;15258:17;;;:9;:17;;;;;;;:53;;15280:6;;15258:21;:53::i;:::-;-1:-1:-1;;;;;15238:17:0;;;;;;;:9;:17;;;;;;:73;;;;15345:20;;;;;;;:32;;15370:6;15345:24;:32::i;:::-;-1:-1:-1;;;;;15322:20:0;;;;;;;:9;:20;;;;;;;:55;;;;15393:35;;;;;;;;;;15421:6;160:25:1;;148:2;133:18;;14:177;15393:35:0;;;;;;;;-1:-1:-1;15446:4:0;15128:330;;;;;:::o;15847:1123::-;9128:6;:13;;-1:-1:-1;;;;9128:13:0;-1:-1:-1;;;9128:13:0;;;15956:12:::1;::::0;15940:11:::1;::::0;9128:13;;15940:29:::1;::::0;:11;:15:::1;:29::i;:::-;15918:51;;15985:11;16000:1;15985:16:::0;15982:28:::1;;16003:7;;;15982:28;16022:23;16048:39;16069:17;;16048:16;;:20;;:39;;;;:::i;:::-;16022:65:::0;-1:-1:-1;16179:19:0::1;16201:60;16259:1;16201:53;16242:11:::0;16201:53;:15;16022:65;16201:19:::1;:36::i;:::-;:40:::0;::::1;:53::i;:60::-;16179:82:::0;-1:-1:-1;16272:21:0::1;16296:32;:15:::0;16179:82;16296:19:::1;:32::i;:::-;16272:56:::0;-1:-1:-1;16366:21:0::1;16398:31;16272:56:::0;16398:16:::1;:31::i;:::-;16440:22;16465:41;:21;16491:14:::0;16465:25:::1;:41::i;:::-;16440:66:::0;-1:-1:-1;16519:19:0::1;16541:39;16557:22;:15:::0;16577:1:::1;16557:19;:22::i;:::-;16541:11:::0;;:15:::1;:39::i;:::-;16519:61:::0;-1:-1:-1;16601:26:0::1;16630:59;16687:1;16630:52;16519:61:::0;16630:52;:14;16649:15;16630:18:::1;:35::i;:59::-;16601:88:::0;-1:-1:-1;16700:26:0::1;16729:38;:14:::0;16601:88;16729:18:::1;:38::i;:::-;16700:67;;16804:1;16783:18;:22;:41;;;;;16823:1;16809:11;:15;16783:41;16780:91;;;16826:45;16839:11;16852:18;16826:12;:45::i;:::-;16885:22:::0;;16882:80:::1;;16917:15;::::0;16909:53:::1;::::0;-1:-1:-1;;;;;16917:15:0;;::::1;::::0;16909:53;::::1;;;::::0;16943:18;;16917:15:::1;16909:53:::0;16917:15;16909:53;16943:18;16917:15;16909:53;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;16882:80;15905:1065;;;;;;;;;9152:1;-1:-1:-1::0;9164:6:0;:14;;-1:-1:-1;;;;9164:14:0;;;15847:1123::o;15470:369::-;-1:-1:-1;;;;;15574:25:0;;15554:4;15574:25;;;:17;:25;;;;;;;;;:57;;-1:-1:-1;;;;;;15603:28:0;;;;;;:17;:28;;;;;;;;15574:57;15571:261;;;-1:-1:-1;15655:4:0;15648:11;;15571:261;-1:-1:-1;;;;;15690:20:0;;;;;;:12;:20;;;;;;;;;:47;;-1:-1:-1;;;;;;15714:23:0;;;;;;:12;:23;;;;;;;;15690:47;15686:146;;;-1:-1:-1;15761:5:0;15754:12;;15686:146;-1:-1:-1;15815:5:0;15808:12;;17640:806;-1:-1:-1;;;;;17813:20:0;;17726:7;17813:20;;;:12;:20;;;;;;17726:7;;17813:20;;17810:362;;;17872:43;17900:14;;17872:23;17883:11;;17872:6;:10;;:23;;;;:::i;:43::-;17860:55;;17810:362;;;-1:-1:-1;;;;;17954:23:0;;;;;;:12;:23;;;;;;;;17951:221;;;18021:2;18006:13;;:17;18003:154;;;18058:14;;18037:36;;:16;:6;18048:4;18037:10;:16::i;18003:154::-;18111:44;18140:14;;18111:24;18122:12;;18111:6;:10;;:24;;;;:::i;:44::-;18099:56;;18080:77;18191:13;;18188:185;;18270:4;18252:24;;;;:9;:24;;;;;;:39;;18281:9;18252:28;:39::i;:::-;18243:4;18225:24;;;;:9;:24;;;;;;;:66;;;;18315:42;;-1:-1:-1;;;;;18315:42:0;;;;;;;18347:9;160:25:1;;148:2;133:18;;14:177;18315:42:0;;;;;;;;18188:185;18396:21;:6;18407:9;18396:10;:21::i;3274:250::-;3332:7;3356:1;3361;3356:6;3352:47;;-1:-1:-1;3386:1:0;3379:8;;3352:47;3411:9;3423:5;3427:1;3423;:5;:::i;:::-;3411:17;-1:-1:-1;3456:1:0;3447:5;3451:1;3411:17;3447:5;:::i;:::-;:10;3439:56;;;;-1:-1:-1;;;3439:56:0;;11241:2:1;3439:56:0;;;11223:21:1;11280:2;11260:18;;;11253:30;11319:34;11299:18;;;11292:62;-1:-1:-1;;;11370:18:1;;;11363:31;11411:19;;3439:56:0;11039:397:1;3532:132:0;3590:7;3617:39;3621:1;3624;3617:39;;;;;;;;;;;;;;;;;:3;:39::i;16978:648::-;17128:16;;;17142:1;17128:16;;;;;;;;17104:21;;17128:16;;;;;;;;;;-1:-1:-1;17128:16:0;17104:40;;17173:4;17155;17160:1;17155:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1;;;;;17155:23:0;;;-1:-1:-1;;;;;17155:23:0;;;;;17199:9;;;;;;;;;-1:-1:-1;;;;;17199:9:0;-1:-1:-1;;;;;17199:14:0;;:16;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;17189:4;17194:1;17189:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;17189:26:0;;;:7;;;;;;;;;:26;17260:9;;17228:56;;17245:4;;17260:9;;;;17272:11;17228:8;:56::i;:::-;17323:9;;:234;;-1:-1:-1;;;17323:234:0;;:9;;;;-1:-1:-1;;;;;17323:9:0;;:60;;:234;;17398:11;;17424:1;;17468:4;;17495;;17531:15;;17323:234;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17583:35;17600:11;17613:4;17583:35;;;;;;;:::i;:::-;;;;;;;;17033:593;16978:648;:::o;18454:511::-;18634:9;;18602:56;;18619:4;;18634:9;;;-1:-1:-1;;;;;18634:9:0;18646:11;18602:8;:56::i;:::-;18701:9;;18899:17;;18701:256;;-1:-1:-1;;;18701:256:0;;18767:4;18701:256;;;13692:34:1;13742:18;;;13735:34;;;18813:1:0;13785:18:1;;;13778:34;;;13828:18;;;13821:34;-1:-1:-1;;;;;18899:17:0;;;13871:19:1;;;13864:44;18931:15:0;13924:19:1;;;13917:35;18701:9:0;;;;;;:25;;18734:9;;13626:19:1;;18701:256:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;18454:511;;:::o;3672:278::-;3758:7;3793:12;3786:5;3778:28;;;;-1:-1:-1;;;3778:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3817:9:0;3829:5;3833:1;3829;:5;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;957:131::-;-1:-1:-1;;;;;1032:31:1;;1022:42;;1012:70;;1078:1;1075;1068:12;1093:315;1161:6;1169;1222:2;1210:9;1201:7;1197:23;1193:32;1190:52;;;1238:1;1235;1228:12;1190:52;1277:9;1264:23;1296:31;1321:5;1296:31;:::i;:::-;1346:5;1398:2;1383:18;;;;1370:32;;-1:-1:-1;;;1093:315:1:o;1605:456::-;1682:6;1690;1698;1751:2;1739:9;1730:7;1726:23;1722:32;1719:52;;;1767:1;1764;1757:12;1719:52;1806:9;1793:23;1825:31;1850:5;1825:31;:::i;:::-;1875:5;-1:-1:-1;1932:2:1;1917:18;;1904:32;1945:33;1904:32;1945:33;:::i;:::-;1605:456;;1997:7;;-1:-1:-1;;;2051:2:1;2036:18;;;;2023:32;;1605:456::o;2066:247::-;2125:6;2178:2;2166:9;2157:7;2153:23;2149:32;2146:52;;;2194:1;2191;2184:12;2146:52;2233:9;2220:23;2252:31;2277:5;2252:31;:::i;2507:118::-;2593:5;2586:13;2579:21;2572:5;2569:32;2559:60;;2615:1;2612;2605:12;2630:241;2686:6;2739:2;2727:9;2718:7;2714:23;2710:32;2707:52;;;2755:1;2752;2745:12;2707:52;2794:9;2781:23;2813:28;2835:5;2813:28;:::i;2876:180::-;2935:6;2988:2;2976:9;2967:7;2963:23;2959:32;2956:52;;;3004:1;3001;2994:12;2956:52;-1:-1:-1;3027:23:1;;2876:180;-1:-1:-1;2876:180:1:o;3061:382::-;3126:6;3134;3187:2;3175:9;3166:7;3162:23;3158:32;3155:52;;;3203:1;3200;3193:12;3155:52;3242:9;3229:23;3261:31;3286:5;3261:31;:::i;:::-;3311:5;-1:-1:-1;3368:2:1;3353:18;;3340:32;3381:30;3340:32;3381:30;:::i;:::-;3430:7;3420:17;;;3061:382;;;;;:::o;4152:388::-;4220:6;4228;4281:2;4269:9;4260:7;4256:23;4252:32;4249:52;;;4297:1;4294;4287:12;4249:52;4336:9;4323:23;4355:31;4380:5;4355:31;:::i;:::-;4405:5;-1:-1:-1;4462:2:1;4447:18;;4434:32;4475:33;4434:32;4475:33;:::i;4545:309::-;4610:6;4618;4671:2;4659:9;4650:7;4646:23;4642:32;4639:52;;;4687:1;4684;4677:12;4639:52;4726:9;4713:23;4745:28;4767:5;4745:28;:::i;4859:380::-;4938:1;4934:12;;;;4981;;;5002:61;;5056:4;5048:6;5044:17;5034:27;;5002:61;5109:2;5101:6;5098:14;5078:18;5075:38;5072:161;;5155:10;5150:3;5146:20;5143:1;5136:31;5190:4;5187:1;5180:15;5218:4;5215:1;5208:15;5072:161;;4859:380;;;:::o;5244:356::-;5446:2;5428:21;;;5465:18;;;5458:30;5524:34;5519:2;5504:18;;5497:62;5591:2;5576:18;;5244:356::o;5884:245::-;5951:6;6004:2;5992:9;5983:7;5979:23;5975:32;5972:52;;;6020:1;6017;6010:12;5972:52;6052:9;6046:16;6071:28;6093:5;6071:28;:::i;9893:127::-;9954:10;9949:3;9945:20;9942:1;9935:31;9985:4;9982:1;9975:15;10009:4;10006:1;9999:15;10025:128;10092:9;;;10113:11;;;10110:37;;;10127:18;;:::i;10158:125::-;10223:9;;;10244:10;;;10241:36;;;10257:18;;:::i;10644:168::-;10717:9;;;10748;;10765:15;;;10759:22;;10745:37;10735:71;;10786:18;;:::i;10817:217::-;10857:1;10883;10873:132;;10927:10;10922:3;10918:20;10915:1;10908:31;10962:4;10959:1;10952:15;10990:4;10987:1;10980:15;10873:132;-1:-1:-1;11019:9:1;;10817:217::o;11573:127::-;11634:10;11629:3;11625:20;11622:1;11615:31;11665:4;11662:1;11655:15;11689:4;11686:1;11679:15;11705:251;11775:6;11828:2;11816:9;11807:7;11803:23;11799:32;11796:52;;;11844:1;11841;11834:12;11796:52;11876:9;11870:16;11895:31;11920:5;11895:31;:::i;11961:461::-;12014:3;12052:5;12046:12;12079:6;12074:3;12067:19;12105:4;12134:2;12129:3;12125:12;12118:19;;12171:2;12164:5;12160:14;12192:1;12202:195;12216:6;12213:1;12210:13;12202:195;;;12281:13;;-1:-1:-1;;;;;12277:39:1;12265:52;;12337:12;;;;12372:15;;;;12313:1;12231:9;12202:195;;;-1:-1:-1;12413:3:1;;11961:461;-1:-1:-1;;;;;11961:461:1:o;12427:582::-;12726:6;12715:9;12708:25;12769:6;12764:2;12753:9;12749:18;12742:34;12812:3;12807:2;12796:9;12792:18;12785:31;12689:4;12833:57;12885:3;12874:9;12870:19;12862:6;12833:57;:::i;:::-;-1:-1:-1;;;;;12926:32:1;;;;12921:2;12906:18;;12899:60;-1:-1:-1;12990:3:1;12975:19;12968:35;12825:65;12427:582;-1:-1:-1;;;12427:582:1:o;13014:332::-;13221:6;13210:9;13203:25;13264:2;13259;13248:9;13244:18;13237:30;13184:4;13284:56;13336:2;13325:9;13321:18;13313:6;13284:56;:::i;:::-;13276:64;13014:332;-1:-1:-1;;;;13014:332:1:o;13963:306::-;14051:6;14059;14067;14120:2;14108:9;14099:7;14095:23;14091:32;14088:52;;;14136:1;14133;14126:12;14088:52;14165:9;14159:16;14149:26;;14215:2;14204:9;14200:18;14194:25;14184:35;;14259:2;14248:9;14244:18;14238:25;14228:35;;13963:306;;;;;:::o
Swarm Source
ipfs://1151e3173b068aaec03b28c102de9be845fe4472cb62e845fd731fdb530f6c89
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.