Feature Tip: Add private address tag to any address under My Name Tag !
ERC-20
Overview
Max Total Supply
1,000,000,000 WOBY
Holders
47
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
0.143596584315293392 WOBYValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
Woby_Inu
Compiler Version
v0.8.19+commit.7dd6d404
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-06-12 */ //SPDX-License-Identifier: MIT pragma solidity ^0.8.19; abstract contract Context { function _msgSender() internal view virtual returns (address) { return msg.sender; } function _msgData() internal view virtual returns (bytes calldata) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } interface IBEP20 { 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 ); } interface IBEP20Metadata is IBEP20 { /** * @dev Returns the name of the token. */ function name() external view returns (string memory); /** * @dev Returns the symbol of the token. */ function symbol() external view returns (string memory); /** * @dev Returns the decimals places of the token. */ function decimals() external view returns (uint8); } contract BEP20 is Context, IBEP20, IBEP20Metadata { mapping(address => uint256) internal _balances; mapping(address => mapping(address => uint256)) internal _allowances; uint256 private _totalSupply; string private _name; string private _symbol; /** * @dev Sets the values for {name} and {symbol}. * * The defaut value of {decimals} is 18. To select a different value for * {decimals} you should overload it. * * All two of these values are immutable: they can only be set once during * construction. */ constructor(string memory name_, string memory symbol_) { _name = name_; _symbol = symbol_; } /** * @dev Returns the name of the token. */ function name() public view virtual override returns (string memory) { return _name; } /** * @dev Returns the symbol of the token, usually a shorter version of the * name. */ function symbol() public view virtual override returns (string memory) { return _symbol; } /** * @dev Returns the number of decimals used to get its user representation. * For example, if `decimals` equals `2`, a balance of `505` tokens should * be displayed to a user as `5,05` (`505 / 10 ** 2`). * * Tokens usually opt for a value of 18, imitating the relationship between * Ether and Wei. This is the value {BEP20} uses, unless this function is * overridden; * * NOTE: This information is only used for _display_ purposes: it in * no way affects any of the arithmetic of the contract, including * {IBEP20-balanceOf} and {IBEP20-transfer}. */ function decimals() public view virtual override returns (uint8) { return 18; } /** * @dev See {IBEP20-totalSupply}. */ function totalSupply() public view virtual override returns (uint256) { return _totalSupply; } /** * @dev See {IBEP20-balanceOf}. */ function balanceOf(address account) public view virtual override returns (uint256) { return _balances[account]; } /** * @dev See {IBEP20-transfer}. * * Requirements: * * - `recipient` cannot be the zero address. * - the caller must have a balance of at least `amount`. */ function transfer(address recipient, uint256 amount) public virtual override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } /** * @dev See {IBEP20-allowance}. */ function allowance(address owner, address spender) public view virtual override returns (uint256) { return _allowances[owner][spender]; } /** * @dev See {IBEP20-approve}. * * Requirements: * * - `spender` cannot be the zero address. */ function approve(address spender, uint256 amount) public virtual override returns (bool) { _approve(_msgSender(), spender, amount); return true; } /** * @dev See {IBEP20-transferFrom}. * * Emits an {Approval} event indicating the updated allowance. This is not * required by the EIP. See the note at the beginning of {BEP20}. * * Requirements: * * - `sender` and `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. * - the caller must have allowance for ``sender``'s tokens of at least * `amount`. */ function transferFrom( address sender, address recipient, uint256 amount ) public virtual override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require( currentAllowance >= amount, "BEP20: transfer amount exceeds allowance" ); _approve(sender, _msgSender(), currentAllowance - amount); return true; } /** * @dev Atomically increases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IBEP20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. */ function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender] + addedValue ); return true; } /** * @dev Atomically decreases the allowance granted to `spender` by the caller. * * This is an alternative to {approve} that can be used as a mitigation for * problems described in {IBEP20-approve}. * * Emits an {Approval} event indicating the updated allowance. * * Requirements: * * - `spender` cannot be the zero address. * - `spender` must have allowance for the caller of at least * `subtractedValue`. */ function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require( currentAllowance >= subtractedValue, "BEP20: decreased allowance below zero" ); _approve(_msgSender(), spender, currentAllowance - subtractedValue); return true; } /** * @dev Moves tokens `amount` from `sender` to `recipient`. * * This is internal function is equivalent to {transfer}, and can be used to * e.g. implement automatic token fees, slashing mechanisms, etc. * * Emits a {Transfer} event. * * Requirements: * * - `sender` cannot be the zero address. * - `recipient` cannot be the zero address. * - `sender` must have a balance of at least `amount`. */ function _transfer( address sender, address recipient, uint256 amount ) internal virtual { require(sender != address(0), "BEP20: transfer from the zero address"); require(recipient != address(0), "BEP20: transfer to the zero address"); uint256 senderBalance = _balances[sender]; require( senderBalance >= amount, "BEP20: transfer amount exceeds balance" ); _balances[sender] = senderBalance - amount; _balances[recipient] += amount; emit Transfer(sender, recipient, amount); } /** This function will be used to generate the total supply * while deploying the contract * * This function can never be called again after deploying contract */ function _tokengeneration(address account, uint256 amount) internal virtual { _totalSupply = amount; _balances[account] = amount; emit Transfer(address(0), account, amount); } /** * @dev Sets `amount` as the allowance of `spender` over the `owner` s tokens. * * This internal function is equivalent to `approve`, and can be used to * e.g. set automatic allowances for certain subsystems, etc. * * Emits an {Approval} event. * * Requirements: * * - `owner` cannot be the zero address. * - `spender` cannot be the zero address. */ function _approve( address owner, address spender, uint256 amount ) internal virtual { require(owner != address(0), "BEP20: approve from the zero address"); require(spender != address(0), "BEP20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } } library Address { function sendValue(address payable recipient, uint256 amount) internal { require( address(this).balance >= amount, "Address: insufficient balance" ); (bool success, ) = recipient.call{value: amount}(""); require( success, "Address: unable to send value, recipient may have reverted" ); } } abstract contract Ownable is Context { address private _owner; event OwnershipTransferred( address indexed previousOwner, address indexed newOwner ); constructor() { _setOwner(_msgSender()); } function owner() public view virtual returns (address) { return _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); } } interface IFactory { function createPair(address tokenA, address tokenB) external returns (address pair); } interface IRouter { 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 ); function swapExactTokensForETHSupportingFeeOnTransferTokens( uint256 amountIn, uint256 amountOutMin, address[] calldata path, address to, uint256 deadline ) external; } contract Woby_Inu is BEP20, Ownable { using Address for address payable; IRouter public router; address public pair; bool private _interlock = false; bool public providingLiquidity = false; bool public tradingEnabled = false; uint256 public tokenLiquidityThreshold = 1e6 * 10**18; uint256 public genesis_block; uint256 private deadline = 0; uint256 private launchtax = 9900; address public developmentWallet = 0x17E26b9B6c252F2d64e2c51A19FF879b8729b11B; address public marketingWallet = 0xAbc0861F9b8FD9dBa9456e20393615cDFfEEC52d; address public constant deadWallet = 0x000000000000000000000000000000000000dEaD; struct Taxes { uint256 marketing; uint256 development; uint256 liquidity; uint256 denominator; } Taxes private buyTaxes = Taxes(50, 50, 0, 100); Taxes private sellTaxes = Taxes(50, 50, 0, 100); uint256 public TotalBuyFee = (buyTaxes.marketing + buyTaxes.development + buyTaxes.liquidity)/buyTaxes.denominator; uint256 public TotalSellFee = (sellTaxes.marketing + sellTaxes.development + sellTaxes.liquidity)/sellTaxes.denominator; mapping(address => bool) public exemptFee; event FeesChanged(); modifier lockTheSwap() { if (!_interlock) { _interlock = true; _; _interlock = false; } } constructor() BEP20("Woby Inu", "WOBY") { _tokengeneration(msg.sender, 1e9 * 10**decimals()); IRouter _router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); // Create a pancake pair for this new token address _pair = IFactory(_router.factory()).createPair(address(this),_router.WETH()); router = _router; pair = _pair; exemptFee[address(this)] = true; exemptFee[msg.sender] = true; exemptFee[marketingWallet] = true; exemptFee[developmentWallet] = true; exemptFee[deadWallet] = true; exemptFee[0xD152f549545093347A162Dce210e7293f1452150] = true; exemptFee[0x407993575c91ce7643a4d4cCACc9A98c36eE1BBE] = true; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function transferFrom( address sender, address recipient, uint256 amount ) public override returns (bool) { _transfer(sender, recipient, amount); uint256 currentAllowance = _allowances[sender][_msgSender()]; require( currentAllowance >= amount, "BEP20: transfer amount exceeds allowance" ); _approve(sender, _msgSender(), currentAllowance - amount); return true; } function increaseAllowance(address spender, uint256 addedValue) public override returns (bool) { _approve( _msgSender(), spender, _allowances[_msgSender()][spender] + addedValue ); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public override returns (bool) { uint256 currentAllowance = _allowances[_msgSender()][spender]; require(currentAllowance >= subtractedValue,"BEP20: decreased allowance below zero"); _approve(_msgSender(), spender, currentAllowance - subtractedValue); return true; } function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(msg.sender, recipient, amount); return true; } function _transfer( address sender, address recipient, uint256 amount ) internal override { require(amount > 0, "Transfer amount must be greater than zero"); if (!exemptFee[sender] && !exemptFee[recipient]) { require(tradingEnabled, "Trading not enabled"); } uint256 feeswap; uint256 feesum; uint256 fee; uint256 _taxDenominator = sellTaxes.denominator; Taxes memory currentTaxes; bool useLaunchFee = !exemptFee[sender] && !exemptFee[recipient] && block.number < genesis_block + deadline; //set fee to zero if fees in contract are handled or exempted if (_interlock || exemptFee[sender] || exemptFee[recipient]) fee = 0; //calculate fee else if (recipient == pair && !useLaunchFee) { feeswap = sellTaxes.liquidity + sellTaxes.marketing + sellTaxes.development; feesum = feeswap; currentTaxes = sellTaxes; _taxDenominator = sellTaxes.denominator; } else if (!useLaunchFee) { feeswap = buyTaxes.liquidity + buyTaxes.marketing + buyTaxes.development; feesum = feeswap; currentTaxes = buyTaxes; _taxDenominator = buyTaxes.denominator; } else if (useLaunchFee) { feeswap = launchtax; feesum = launchtax; } fee = ((amount * feesum) / 100)/_taxDenominator; //send fees if threshold has been reached //don't do this on buys, breaks swap if (providingLiquidity && sender != pair) Liquify(feeswap, currentTaxes); //rest to recipient super._transfer(sender, recipient, amount - fee); if (fee > 0) { //send the fee to the contract if (feeswap > 0) { uint256 feeAmount = ((amount * feeswap) / 100)/_taxDenominator; super._transfer(sender, address(this), feeAmount); } } } function Liquify(uint256 feeswap, Taxes memory swapTaxes) private lockTheSwap { if (feeswap == 0) { return; } uint256 contractBalance = balanceOf(address(this)); if (contractBalance >= tokenLiquidityThreshold) { if (tokenLiquidityThreshold > 1) { contractBalance = tokenLiquidityThreshold; } // Split the contract balance into halves uint256 denominator = feeswap * 2; uint256 tokensToAddLiquidityWith = (contractBalance * swapTaxes.liquidity) / denominator; uint256 toSwap = contractBalance - tokensToAddLiquidityWith; uint256 initialBalance = address(this).balance; swapTokensForETH(toSwap); uint256 deltaBalance = address(this).balance - initialBalance; uint256 unitBalance = deltaBalance / ((denominator - swapTaxes.liquidity)/swapTaxes.denominator); uint256 ethToAddLiquidityWith = ((unitBalance * swapTaxes.liquidity)/swapTaxes.denominator); if (ethToAddLiquidityWith > 0) { // Add liquidity to pancake addLiquidity(tokensToAddLiquidityWith, ethToAddLiquidityWith); } uint256 developmentAmt = (unitBalance * 2 * swapTaxes.development)/swapTaxes.denominator; if (developmentAmt > 0){ payable(developmentWallet).sendValue(developmentAmt); } uint256 marketingAmt = (unitBalance * 2 * swapTaxes.marketing)/swapTaxes.denominator; if (marketingAmt > 0) { payable(marketingWallet).sendValue(marketingAmt); } } } function swapTokensForETH(uint256 tokenAmount) private { // generate the pancake pair path of token -> weth address[] memory path = new address[](2); path[0] = address(this); path[1] = router.WETH(); _approve(address(this), address(router), tokenAmount); // make the swap router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, path, address(this), block.timestamp ); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { // approve token transfer to cover all possible scenarios _approve(address(this), address(router), tokenAmount); // add the liquidity router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, // slippage is unavoidable 0, // slippage is unavoidable deadWallet, block.timestamp ); } function updateLiquidityProvide(bool state) external onlyOwner { providingLiquidity = state; } function updateLiquidityTreshhold(uint256 new_amount) external onlyOwner { require(new_amount >= 1e5,"Swap threshold amount should be above or equal to 0.01% of tokens"); require(new_amount <= 1e7,"Swap threshold amount should be lower or equal to 1% of tokens"); tokenLiquidityThreshold = new_amount * 10**decimals(); } function EnableTrading() external onlyOwner { require(!tradingEnabled, "Cannot re-enable trading"); tradingEnabled = true; providingLiquidity = true; genesis_block = block.number; } function updatedeadline(uint256 _deadline) external onlyOwner { require(!tradingEnabled, "Can't change when trading has started"); require(_deadline < 3, "Deadline should be less than 3 Blocks"); deadline = _deadline; } function updateMarketingWallet(address newWallet) external onlyOwner { require(newWallet != address(this), "Fee Address cannot be Contract Address"); require(newWallet != address(0), "Fee Address cannot be zero address"); marketingWallet = newWallet; } function updateDevlopmentWallet(address newWallet) external onlyOwner { require(newWallet != address(this), "Fee Address cannot be Contract Address"); require(newWallet != address(0), "Fee Address cannot be zero address"); developmentWallet = newWallet; } function updateBuyTaxes( uint256 _development, uint256 _marketing, uint256 _liquidity ) public onlyOwner { require((_development + _marketing + _liquidity)/buyTaxes.denominator <= 1000, "Must keep fees at 10% or less"); buyTaxes.development = _development; buyTaxes.marketing = _marketing; buyTaxes.liquidity = _liquidity; emit FeesChanged(); } function updateSellTaxes( uint256 _development, uint256 _marketing, uint256 _liquidity ) public onlyOwner { require((_development + _marketing + _liquidity)/sellTaxes.denominator <= 1000, "Must keep fees at 10% or less"); sellTaxes.development = _development; sellTaxes.marketing = _marketing; sellTaxes.liquidity = _liquidity; emit FeesChanged(); } function updateExemptFee(address _address, bool state) external onlyOwner { exemptFee[_address] = state; } function bulkExemptFee(address[] memory accounts, bool state) external onlyOwner { for (uint256 i = 0; i < accounts.length; i++) { exemptFee[accounts[i]] = state; } } function rescueBNB() external onlyOwner { uint256 contractETHBalance = address(this).balance; payable(owner()).transfer(contractETHBalance); } function rescueBSC20(address tokenAdd, uint256 amount) external onlyOwner { require(tokenAdd != address(this), "Owner can't claim contract's balance of its own tokens"); IBEP20(tokenAdd).transfer(owner(), amount); } // fallbacks receive() external payable {} }
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":[],"name":"FeesChanged","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"EnableTrading","outputs":[],"stateMutability":"nonpayable","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":[{"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":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"state","type":"bool"}],"name":"bulkExemptFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deadWallet","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":[],"name":"developmentWallet","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"exemptFee","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"genesis_block","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":[],"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":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"providingLiquidity","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"rescueBNB","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAdd","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueBSC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tokenLiquidityThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","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":[{"internalType":"uint256","name":"_development","type":"uint256"},{"internalType":"uint256","name":"_marketing","type":"uint256"},{"internalType":"uint256","name":"_liquidity","type":"uint256"}],"name":"updateBuyTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateDevlopmentWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"state","type":"bool"}],"name":"updateExemptFee","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"state","type":"bool"}],"name":"updateLiquidityProvide","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"new_amount","type":"uint256"}],"name":"updateLiquidityTreshhold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newWallet","type":"address"}],"name":"updateMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_development","type":"uint256"},{"internalType":"uint256","name":"_marketing","type":"uint256"},{"internalType":"uint256","name":"_liquidity","type":"uint256"}],"name":"updateSellTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_deadline","type":"uint256"}],"name":"updatedeadline","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6007805462ffffff60a01b1916905569d3c21bcecceda10000006008556000600a8190556126ac600b55600c80546001600160a01b03199081167317e26b9b6c252f2d64e2c51a19ff879b8729b11b17909155600d805490911673abc0861f9b8fd9dba9456e20393615cdffeec52d1790556032608081905260a081905260c0829052606460e0819052600e829055600f8290556010839055601181905561018060405261010082905261012082905261014083905261016081905260128290556013829055601483905560158190559190620000dd908062000521565b620000e9919062000521565b620000f591906200053d565b60165560155460145460135460125462000110919062000521565b6200011c919062000521565b6200012891906200053d565b6017553480156200013857600080fd5b5060405180604001604052806008815260200167576f627920496e7560c01b81525060405180604001604052806004815260200163574f425960e01b815250816003908162000188919062000605565b50600462000197828262000605565b505050620001b4620001ae6200046160201b60201c565b62000465565b620001dd33620001c76012600a620007ce565b620001d790633b9aca00620007e6565b620004b7565b6000737a250d5630b4cf539739df2c5dacb4c659f2488d90506000816001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000237573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200025d919062000800565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620002ab573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002d1919062000800565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200031f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000345919062000800565b600680546001600160a01b03199081166001600160a01b0395861617909155600780549091169184169190911790555030600090815260186020526040808220805460ff1990811660019081179092553384528284208054821683179055600d54851684528284208054821683179055600c54909416835290822080548416821790557fe3ec2099396b7359df1c566dfdf9dfdb5e22fd64a6ede9d61aa32b2f63968fd680548416821790557f9a822146f4b5cb396f735d418daac668c1953f9c65fa8f241c16c117c97f8467805484168217905573407993575c91ce7643a4d4ccacc9a98c36ee1bbe9091527f409706a94ce6ab8012d00acbcce3fec3d5f430f8f38524878c51b66717854a9480549092161790556200082b565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b60028190556001600160a01b038216600081815260208181526040808320859055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b634e487b7160e01b600052601160045260246000fd5b808201808211156200053757620005376200050b565b92915050565b6000826200055b57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200058b57607f821691505b602082108103620005ac57634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200060057600081815260208120601f850160051c81016020861015620005db5750805b601f850160051c820191505b81811015620005fc57828155600101620005e7565b5050505b505050565b81516001600160401b0381111562000621576200062162000560565b620006398162000632845462000576565b84620005b2565b602080601f831160018114620006715760008415620006585750858301515b600019600386901b1c1916600185901b178555620005fc565b600085815260208120601f198616915b82811015620006a25788860151825594840194600190910190840162000681565b5085821015620006c15787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600181815b8085111562000712578160001904821115620006f657620006f66200050b565b808516156200070457918102915b93841c9390800290620006d6565b509250929050565b6000826200072b5750600162000537565b816200073a5750600062000537565b81600181146200075357600281146200075e576200077e565b600191505062000537565b60ff8411156200077257620007726200050b565b50506001821b62000537565b5060208310610133831016604e8410600b8410161715620007a3575081810a62000537565b620007af8383620006d1565b8060001904821115620007c657620007c66200050b565b029392505050565b6000620007df60ff8416836200071a565b9392505050565b80820281158282048414176200053757620005376200050b565b6000602082840312156200081357600080fd5b81516001600160a01b0381168114620007df57600080fd5b6124fe806200083b6000396000f3fe6080604052600436106102295760003560e01c80638c374ac111610123578063c04a5414116100ab578063edaa11681161006f578063edaa116814610681578063f25f136c146106a1578063f2fde38b146106b6578063f887ea40146106d6578063fbe6324e146106f657600080fd5b8063c04a5414146105b5578063c5d32bb2146105d5578063c9300ed514610605578063dc89f88c14610625578063dd62ed3e1461063b57600080fd5b8063a8aa1b31116100f2578063a8aa1b3114610515578063a9059cbb14610535578063aab02c7114610555578063aacebbe314610575578063b4337b4e1461059557600080fd5b80638c374ac1146104a25780638da5cb5b146104c257806395d89b41146104e0578063a457c2d7146104f557600080fd5b8063313ce567116101b157806370a082311161017557806370a08231146103f3578063715018a61461042957806375f0a8741461043e5780637b46eee51461047657806385141a771461048c57600080fd5b8063313ce56714610356578063355496ca14610372578063395093511461039257806342b6fa11146103b25780634ada218b146103d257600080fd5b80631675d802116101f85780631675d802146102d257806318160ddd146102f65780631d97b7cd1461030b57806323b872dd14610320578063274a533c1461034057600080fd5b806306fdde0314610235578063095ea7b3146102605780630e375a5c146102905780631340538f146102b257600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024a610717565b6040516102579190611e8e565b60405180910390f35b34801561026c57600080fd5b5061028061027b366004611f01565b6107a9565b6040519015158152602001610257565b34801561029c57600080fd5b506102b06102ab366004611f5c565b6107c0565b005b3480156102be57600080fd5b506102b06102cd366004612033565b61085f565b3480156102de57600080fd5b506102e860085481565b604051908152602001610257565b34801561030257600080fd5b506002546102e8565b34801561031757600080fd5b506102b06108a7565b34801561032c57600080fd5b5061028061033b366004612057565b610946565b34801561034c57600080fd5b506102e860095481565b34801561036257600080fd5b5060405160128152602001610257565b34801561037e57600080fd5b506102b061038d366004612098565b6109f7565b34801561039e57600080fd5b506102806103ad366004611f01565b610a4c565b3480156103be57600080fd5b506102b06103cd3660046120d1565b610a83565b3480156103de57600080fd5b5060075461028090600160b01b900460ff1681565b3480156103ff57600080fd5b506102e861040e3660046120ea565b6001600160a01b031660009081526020819052604090205490565b34801561043557600080fd5b506102b0610bc5565b34801561044a57600080fd5b50600d5461045e906001600160a01b031681565b6040516001600160a01b039091168152602001610257565b34801561048257600080fd5b506102e860165481565b34801561049857600080fd5b5061045e61dead81565b3480156104ae57600080fd5b506102b06104bd366004612107565b610bfb565b3480156104ce57600080fd5b506005546001600160a01b031661045e565b3480156104ec57600080fd5b5061024a610cd6565b34801561050157600080fd5b50610280610510366004611f01565b610ce5565b34801561052157600080fd5b5060075461045e906001600160a01b031681565b34801561054157600080fd5b50610280610550366004611f01565b610d80565b34801561056157600080fd5b506102b06105703660046120ea565b610d8d565b34801561058157600080fd5b506102b06105903660046120ea565b610e27565b3480156105a157600080fd5b506102b06105b0366004612107565b610ec1565b3480156105c157600080fd5b50600c5461045e906001600160a01b031681565b3480156105e157600080fd5b506102806105f03660046120ea565b60186020526000908152604090205460ff1681565b34801561061157600080fd5b506102b0610620366004611f01565b610f9c565b34801561063157600080fd5b506102e860175481565b34801561064757600080fd5b506102e8610656366004612133565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561068d57600080fd5b506102b061069c3660046120d1565b6110cf565b3480156106ad57600080fd5b506102b06111c4565b3480156106c257600080fd5b506102b06106d13660046120ea565b61123d565b3480156106e257600080fd5b5060065461045e906001600160a01b031681565b34801561070257600080fd5b5060075461028090600160a81b900460ff1681565b60606003805461072690612161565b80601f016020809104026020016040519081016040528092919081815260200182805461075290612161565b801561079f5780601f106107745761010080835404028352916020019161079f565b820191906000526020600020905b81548152906001019060200180831161078257829003601f168201915b5050505050905090565b60006107b63384846112d8565b5060015b92915050565b6005546001600160a01b031633146107f35760405162461bcd60e51b81526004016107ea9061219b565b60405180910390fd5b60005b825181101561085a578160186000858481518110610816576108166121d0565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610852816121fc565b9150506107f6565b505050565b6005546001600160a01b031633146108895760405162461bcd60e51b81526004016107ea9061219b565b60078054911515600160a81b0260ff60a81b19909216919091179055565b6005546001600160a01b031633146108d15760405162461bcd60e51b81526004016107ea9061219b565b600754600160b01b900460ff161561092b5760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f742072652d656e61626c652074726164696e67000000000000000060448201526064016107ea565b6007805461ffff60a81b191661010160a81b17905543600955565b60006109538484846113fc565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156109d85760405162461bcd60e51b815260206004820152602860248201527f42455032303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016107ea565b6109ec85336109e78685612215565b6112d8565b506001949350505050565b6005546001600160a01b03163314610a215760405162461bcd60e51b81526004016107ea9061219b565b6001600160a01b03919091166000908152601860205260409020805460ff1916911515919091179055565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916107b69185906109e7908690612228565b6005546001600160a01b03163314610aad5760405162461bcd60e51b81526004016107ea9061219b565b620186a0811015610b305760405162461bcd60e51b815260206004820152604160248201527f53776170207468726573686f6c6420616d6f756e742073686f756c642062652060448201527f61626f7665206f7220657175616c20746f20302e303125206f6620746f6b656e6064820152607360f81b608482015260a4016107ea565b62989680811115610ba95760405162461bcd60e51b815260206004820152603e60248201527f53776170207468726573686f6c6420616d6f756e742073686f756c642062652060448201527f6c6f776572206f7220657175616c20746f203125206f6620746f6b656e73000060648201526084016107ea565b610bb56012600a61231f565b610bbf908261232e565b60085550565b6005546001600160a01b03163314610bef5760405162461bcd60e51b81526004016107ea9061219b565b610bf96000611788565b565b6005546001600160a01b03163314610c255760405162461bcd60e51b81526004016107ea9061219b565b6011546103e89082610c378587612228565b610c419190612228565b610c4b9190612345565b1115610c995760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016107ea565b600f839055600e82905560108190556040517f846206d6c3449ac0b05841dfb88bf28b55aef00f96152490c69c96238048de1590600090a1505050565b60606004805461072690612161565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610d675760405162461bcd60e51b815260206004820152602560248201527f42455032303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107ea565b610d7633856109e78685612215565b5060019392505050565b60006107b63384846113fc565b6005546001600160a01b03163314610db75760405162461bcd60e51b81526004016107ea9061219b565b306001600160a01b03821603610ddf5760405162461bcd60e51b81526004016107ea90612367565b6001600160a01b038116610e055760405162461bcd60e51b81526004016107ea906123ad565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610e515760405162461bcd60e51b81526004016107ea9061219b565b306001600160a01b03821603610e795760405162461bcd60e51b81526004016107ea90612367565b6001600160a01b038116610e9f5760405162461bcd60e51b81526004016107ea906123ad565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610eeb5760405162461bcd60e51b81526004016107ea9061219b565b6015546103e89082610efd8587612228565b610f079190612228565b610f119190612345565b1115610f5f5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016107ea565b6013839055601282905560148190556040517f846206d6c3449ac0b05841dfb88bf28b55aef00f96152490c69c96238048de1590600090a1505050565b6005546001600160a01b03163314610fc65760405162461bcd60e51b81526004016107ea9061219b565b306001600160a01b0383160361103d5760405162461bcd60e51b815260206004820152603660248201527f4f776e65722063616e277420636c61696d20636f6e747261637427732062616c604482015275616e6365206f6620697473206f776e20746f6b656e7360501b60648201526084016107ea565b816001600160a01b031663a9059cbb61105e6005546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af11580156110ab573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085a91906123ef565b6005546001600160a01b031633146110f95760405162461bcd60e51b81526004016107ea9061219b565b600754600160b01b900460ff16156111615760405162461bcd60e51b815260206004820152602560248201527f43616e2774206368616e6765207768656e2074726164696e6720686173207374604482015264185c9d195960da1b60648201526084016107ea565b600381106111bf5760405162461bcd60e51b815260206004820152602560248201527f446561646c696e652073686f756c64206265206c657373207468616e203320426044820152646c6f636b7360d81b60648201526084016107ea565b600a55565b6005546001600160a01b031633146111ee5760405162461bcd60e51b81526004016107ea9061219b565b476112016005546001600160a01b031690565b6001600160a01b03166108fc829081150290604051600060405180830381858888f19350505050158015611239573d6000803e3d6000fd5b5050565b6005546001600160a01b031633146112675760405162461bcd60e51b81526004016107ea9061219b565b6001600160a01b0381166112cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ea565b6112d581611788565b50565b6001600160a01b03831661133a5760405162461bcd60e51b8152602060048201526024808201527f42455032303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107ea565b6001600160a01b03821661139b5760405162461bcd60e51b815260206004820152602260248201527f42455032303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107ea565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000811161145e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107ea565b6001600160a01b03831660009081526018602052604090205460ff161580156114a057506001600160a01b03821660009081526018602052604090205460ff16155b156114f457600754600160b01b900460ff166114f45760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b60448201526064016107ea565b600080600080601260030154905061152d6040518060800160405280600081526020016000815260200160008152602001600081525090565b6001600160a01b03881660009081526018602052604081205460ff1615801561156f57506001600160a01b03881660009081526018602052604090205460ff16155b80156115895750600a546009546115869190612228565b43105b600754909150600160a01b900460ff16806115bc57506001600160a01b03891660009081526018602052604090205460ff165b806115df57506001600160a01b03881660009081526018602052604090205460ff165b156115ed57600093506116d1565b6007546001600160a01b038981169116148015611608575080155b15611665576013546012546014546116209190612228565b61162a9190612228565b6040805160808101825260125481526013546020820152601454918101919091526015546060820181905291975087965090935091506116d1565b806116c257600f54600e5460105461167d9190612228565b6116879190612228565b60408051608081018252600e548152600f546020820152601054918101919091526011546060820181905291975087965090935091506116d1565b80156116d157600b5495508594505b8260646116de878a61232e565b6116e89190612345565b6116f29190612345565b600754909450600160a81b900460ff16801561171c57506007546001600160a01b038a8116911614155b1561172b5761172b86836117da565b61173f898961173a878b612215565b611991565b831561177d57851561177d57600083606461175a898b61232e565b6117649190612345565b61176e9190612345565b905061177b8a3083611991565b505b505050505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600754600160a01b900460ff16611239576007805460ff60a01b1916600160a01b17905581156119805730600090815260208190526040902054600854811061197e576001600854111561182d57506008545b600061183a84600261232e565b905060008184604001518461184f919061232e565b6118599190612345565b905060006118678285612215565b90504761187382611b69565b600061187f8247612215565b9050600087606001518860400151876118989190612215565b6118a29190612345565b6118ac9083612345565b9050600088606001518960400151836118c5919061232e565b6118cf9190612345565b905080156118e1576118e18682611cc3565b600089606001518a602001518460026118fa919061232e565b611904919061232e565b61190e9190612345565b9050801561192c57600c5461192c906001600160a01b031682611d75565b60608a01518a516000919061194286600261232e565b61194c919061232e565b6119569190612345565b9050801561197457600d54611974906001600160a01b031682611d75565b5050505050505050505b505b6007805460ff60a01b191690555050565b6001600160a01b0383166119f55760405162461bcd60e51b815260206004820152602560248201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107ea565b6001600160a01b038216611a575760405162461bcd60e51b815260206004820152602360248201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107ea565b6001600160a01b03831660009081526020819052604090205481811015611acf5760405162461bcd60e51b815260206004820152602660248201527f42455032303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107ea565b611ad98282612215565b6001600160a01b038086166000908152602081905260408082209390935590851681529081208054849290611b0f908490612228565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b5b91815260200190565b60405180910390a350505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611b9e57611b9e6121d0565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611bf7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c1b919061240c565b81600181518110611c2e57611c2e6121d0565b6001600160a01b039283166020918202929092010152600654611c5491309116846112d8565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611c8d908590600090869030904290600401612429565b600060405180830381600087803b158015611ca757600080fd5b505af1158015611cbb573d6000803e3d6000fd5b505050505050565b600654611cdb9030906001600160a01b0316846112d8565b60065460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015261dead60848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611d49573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d6e919061249a565b5050505050565b80471015611dc55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ea565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611e12576040519150601f19603f3d011682016040523d82523d6000602084013e611e17565b606091505b505090508061085a5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ea565b600060208083528351808285015260005b81811015611ebb57858101830151858201604001528201611e9f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146112d557600080fd5b8035611efc81611edc565b919050565b60008060408385031215611f1457600080fd5b8235611f1f81611edc565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b80151581146112d557600080fd5b8035611efc81611f43565b60008060408385031215611f6f57600080fd5b823567ffffffffffffffff80821115611f8757600080fd5b818501915085601f830112611f9b57600080fd5b8135602082821115611faf57611faf611f2d565b8160051b604051601f19603f83011681018181108682111715611fd457611fd4611f2d565b604052928352818301935084810182019289841115611ff257600080fd5b948201945b838610156120175761200886611ef1565b85529482019493820193611ff7565b96506120269050878201611f51565b9450505050509250929050565b60006020828403121561204557600080fd5b813561205081611f43565b9392505050565b60008060006060848603121561206c57600080fd5b833561207781611edc565b9250602084013561208781611edc565b929592945050506040919091013590565b600080604083850312156120ab57600080fd5b82356120b681611edc565b915060208301356120c681611f43565b809150509250929050565b6000602082840312156120e357600080fd5b5035919050565b6000602082840312156120fc57600080fd5b813561205081611edc565b60008060006060848603121561211c57600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561214657600080fd5b823561215181611edc565b915060208301356120c681611edc565b600181811c9082168061217557607f821691505b60208210810361219557634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161220e5761220e6121e6565b5060010190565b818103818111156107ba576107ba6121e6565b808201808211156107ba576107ba6121e6565b600181815b8085111561227657816000190482111561225c5761225c6121e6565b8085161561226957918102915b93841c9390800290612240565b509250929050565b60008261228d575060016107ba565b8161229a575060006107ba565b81600181146122b057600281146122ba576122d6565b60019150506107ba565b60ff8411156122cb576122cb6121e6565b50506001821b6107ba565b5060208310610133831016604e8410600b84101617156122f9575081810a6107ba565b612303838361223b565b8060001904821115612317576123176121e6565b029392505050565b600061205060ff84168361227e565b80820281158282048414176107ba576107ba6121e6565b60008261236257634e487b7160e01b600052601260045260246000fd5b500490565b60208082526026908201527f46656520416464726573732063616e6e6f7420626520436f6e7472616374204160408201526564647265737360d01b606082015260800190565b60208082526022908201527f46656520416464726573732063616e6e6f74206265207a65726f206164647265604082015261737360f01b606082015260800190565b60006020828403121561240157600080fd5b815161205081611f43565b60006020828403121561241e57600080fd5b815161205081611edc565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156124795784516001600160a01b031683529383019391830191600101612454565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156124af57600080fd5b835192506020840151915060408401519050925092509256fea264697066735822122024e79720f3bc5aae1495d5054f7008adf1f1e2d8b4fc80a4d2a19d06c72cd82a64736f6c63430008130033
Deployed Bytecode
0x6080604052600436106102295760003560e01c80638c374ac111610123578063c04a5414116100ab578063edaa11681161006f578063edaa116814610681578063f25f136c146106a1578063f2fde38b146106b6578063f887ea40146106d6578063fbe6324e146106f657600080fd5b8063c04a5414146105b5578063c5d32bb2146105d5578063c9300ed514610605578063dc89f88c14610625578063dd62ed3e1461063b57600080fd5b8063a8aa1b31116100f2578063a8aa1b3114610515578063a9059cbb14610535578063aab02c7114610555578063aacebbe314610575578063b4337b4e1461059557600080fd5b80638c374ac1146104a25780638da5cb5b146104c257806395d89b41146104e0578063a457c2d7146104f557600080fd5b8063313ce567116101b157806370a082311161017557806370a08231146103f3578063715018a61461042957806375f0a8741461043e5780637b46eee51461047657806385141a771461048c57600080fd5b8063313ce56714610356578063355496ca14610372578063395093511461039257806342b6fa11146103b25780634ada218b146103d257600080fd5b80631675d802116101f85780631675d802146102d257806318160ddd146102f65780631d97b7cd1461030b57806323b872dd14610320578063274a533c1461034057600080fd5b806306fdde0314610235578063095ea7b3146102605780630e375a5c146102905780631340538f146102b257600080fd5b3661023057005b600080fd5b34801561024157600080fd5b5061024a610717565b6040516102579190611e8e565b60405180910390f35b34801561026c57600080fd5b5061028061027b366004611f01565b6107a9565b6040519015158152602001610257565b34801561029c57600080fd5b506102b06102ab366004611f5c565b6107c0565b005b3480156102be57600080fd5b506102b06102cd366004612033565b61085f565b3480156102de57600080fd5b506102e860085481565b604051908152602001610257565b34801561030257600080fd5b506002546102e8565b34801561031757600080fd5b506102b06108a7565b34801561032c57600080fd5b5061028061033b366004612057565b610946565b34801561034c57600080fd5b506102e860095481565b34801561036257600080fd5b5060405160128152602001610257565b34801561037e57600080fd5b506102b061038d366004612098565b6109f7565b34801561039e57600080fd5b506102806103ad366004611f01565b610a4c565b3480156103be57600080fd5b506102b06103cd3660046120d1565b610a83565b3480156103de57600080fd5b5060075461028090600160b01b900460ff1681565b3480156103ff57600080fd5b506102e861040e3660046120ea565b6001600160a01b031660009081526020819052604090205490565b34801561043557600080fd5b506102b0610bc5565b34801561044a57600080fd5b50600d5461045e906001600160a01b031681565b6040516001600160a01b039091168152602001610257565b34801561048257600080fd5b506102e860165481565b34801561049857600080fd5b5061045e61dead81565b3480156104ae57600080fd5b506102b06104bd366004612107565b610bfb565b3480156104ce57600080fd5b506005546001600160a01b031661045e565b3480156104ec57600080fd5b5061024a610cd6565b34801561050157600080fd5b50610280610510366004611f01565b610ce5565b34801561052157600080fd5b5060075461045e906001600160a01b031681565b34801561054157600080fd5b50610280610550366004611f01565b610d80565b34801561056157600080fd5b506102b06105703660046120ea565b610d8d565b34801561058157600080fd5b506102b06105903660046120ea565b610e27565b3480156105a157600080fd5b506102b06105b0366004612107565b610ec1565b3480156105c157600080fd5b50600c5461045e906001600160a01b031681565b3480156105e157600080fd5b506102806105f03660046120ea565b60186020526000908152604090205460ff1681565b34801561061157600080fd5b506102b0610620366004611f01565b610f9c565b34801561063157600080fd5b506102e860175481565b34801561064757600080fd5b506102e8610656366004612133565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561068d57600080fd5b506102b061069c3660046120d1565b6110cf565b3480156106ad57600080fd5b506102b06111c4565b3480156106c257600080fd5b506102b06106d13660046120ea565b61123d565b3480156106e257600080fd5b5060065461045e906001600160a01b031681565b34801561070257600080fd5b5060075461028090600160a81b900460ff1681565b60606003805461072690612161565b80601f016020809104026020016040519081016040528092919081815260200182805461075290612161565b801561079f5780601f106107745761010080835404028352916020019161079f565b820191906000526020600020905b81548152906001019060200180831161078257829003601f168201915b5050505050905090565b60006107b63384846112d8565b5060015b92915050565b6005546001600160a01b031633146107f35760405162461bcd60e51b81526004016107ea9061219b565b60405180910390fd5b60005b825181101561085a578160186000858481518110610816576108166121d0565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff191691151591909117905580610852816121fc565b9150506107f6565b505050565b6005546001600160a01b031633146108895760405162461bcd60e51b81526004016107ea9061219b565b60078054911515600160a81b0260ff60a81b19909216919091179055565b6005546001600160a01b031633146108d15760405162461bcd60e51b81526004016107ea9061219b565b600754600160b01b900460ff161561092b5760405162461bcd60e51b815260206004820152601860248201527f43616e6e6f742072652d656e61626c652074726164696e67000000000000000060448201526064016107ea565b6007805461ffff60a81b191661010160a81b17905543600955565b60006109538484846113fc565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156109d85760405162461bcd60e51b815260206004820152602860248201527f42455032303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084016107ea565b6109ec85336109e78685612215565b6112d8565b506001949350505050565b6005546001600160a01b03163314610a215760405162461bcd60e51b81526004016107ea9061219b565b6001600160a01b03919091166000908152601860205260409020805460ff1916911515919091179055565b3360008181526001602090815260408083206001600160a01b038716845290915281205490916107b69185906109e7908690612228565b6005546001600160a01b03163314610aad5760405162461bcd60e51b81526004016107ea9061219b565b620186a0811015610b305760405162461bcd60e51b815260206004820152604160248201527f53776170207468726573686f6c6420616d6f756e742073686f756c642062652060448201527f61626f7665206f7220657175616c20746f20302e303125206f6620746f6b656e6064820152607360f81b608482015260a4016107ea565b62989680811115610ba95760405162461bcd60e51b815260206004820152603e60248201527f53776170207468726573686f6c6420616d6f756e742073686f756c642062652060448201527f6c6f776572206f7220657175616c20746f203125206f6620746f6b656e73000060648201526084016107ea565b610bb56012600a61231f565b610bbf908261232e565b60085550565b6005546001600160a01b03163314610bef5760405162461bcd60e51b81526004016107ea9061219b565b610bf96000611788565b565b6005546001600160a01b03163314610c255760405162461bcd60e51b81526004016107ea9061219b565b6011546103e89082610c378587612228565b610c419190612228565b610c4b9190612345565b1115610c995760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016107ea565b600f839055600e82905560108190556040517f846206d6c3449ac0b05841dfb88bf28b55aef00f96152490c69c96238048de1590600090a1505050565b60606004805461072690612161565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610d675760405162461bcd60e51b815260206004820152602560248201527f42455032303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107ea565b610d7633856109e78685612215565b5060019392505050565b60006107b63384846113fc565b6005546001600160a01b03163314610db75760405162461bcd60e51b81526004016107ea9061219b565b306001600160a01b03821603610ddf5760405162461bcd60e51b81526004016107ea90612367565b6001600160a01b038116610e055760405162461bcd60e51b81526004016107ea906123ad565b600c80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610e515760405162461bcd60e51b81526004016107ea9061219b565b306001600160a01b03821603610e795760405162461bcd60e51b81526004016107ea90612367565b6001600160a01b038116610e9f5760405162461bcd60e51b81526004016107ea906123ad565b600d80546001600160a01b0319166001600160a01b0392909216919091179055565b6005546001600160a01b03163314610eeb5760405162461bcd60e51b81526004016107ea9061219b565b6015546103e89082610efd8587612228565b610f079190612228565b610f119190612345565b1115610f5f5760405162461bcd60e51b815260206004820152601d60248201527f4d757374206b656570206665657320617420313025206f72206c65737300000060448201526064016107ea565b6013839055601282905560148190556040517f846206d6c3449ac0b05841dfb88bf28b55aef00f96152490c69c96238048de1590600090a1505050565b6005546001600160a01b03163314610fc65760405162461bcd60e51b81526004016107ea9061219b565b306001600160a01b0383160361103d5760405162461bcd60e51b815260206004820152603660248201527f4f776e65722063616e277420636c61696d20636f6e747261637427732062616c604482015275616e6365206f6620697473206f776e20746f6b656e7360501b60648201526084016107ea565b816001600160a01b031663a9059cbb61105e6005546001600160a01b031690565b6040516001600160e01b031960e084901b1681526001600160a01b039091166004820152602481018490526044016020604051808303816000875af11580156110ab573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061085a91906123ef565b6005546001600160a01b031633146110f95760405162461bcd60e51b81526004016107ea9061219b565b600754600160b01b900460ff16156111615760405162461bcd60e51b815260206004820152602560248201527f43616e2774206368616e6765207768656e2074726164696e6720686173207374604482015264185c9d195960da1b60648201526084016107ea565b600381106111bf5760405162461bcd60e51b815260206004820152602560248201527f446561646c696e652073686f756c64206265206c657373207468616e203320426044820152646c6f636b7360d81b60648201526084016107ea565b600a55565b6005546001600160a01b031633146111ee5760405162461bcd60e51b81526004016107ea9061219b565b476112016005546001600160a01b031690565b6001600160a01b03166108fc829081150290604051600060405180830381858888f19350505050158015611239573d6000803e3d6000fd5b5050565b6005546001600160a01b031633146112675760405162461bcd60e51b81526004016107ea9061219b565b6001600160a01b0381166112cc5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107ea565b6112d581611788565b50565b6001600160a01b03831661133a5760405162461bcd60e51b8152602060048201526024808201527f42455032303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107ea565b6001600160a01b03821661139b5760405162461bcd60e51b815260206004820152602260248201527f42455032303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107ea565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6000811161145e5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107ea565b6001600160a01b03831660009081526018602052604090205460ff161580156114a057506001600160a01b03821660009081526018602052604090205460ff16155b156114f457600754600160b01b900460ff166114f45760405162461bcd60e51b8152602060048201526013602482015272151c98591a5b99c81b9bdd08195b98589b1959606a1b60448201526064016107ea565b600080600080601260030154905061152d6040518060800160405280600081526020016000815260200160008152602001600081525090565b6001600160a01b03881660009081526018602052604081205460ff1615801561156f57506001600160a01b03881660009081526018602052604090205460ff16155b80156115895750600a546009546115869190612228565b43105b600754909150600160a01b900460ff16806115bc57506001600160a01b03891660009081526018602052604090205460ff165b806115df57506001600160a01b03881660009081526018602052604090205460ff165b156115ed57600093506116d1565b6007546001600160a01b038981169116148015611608575080155b15611665576013546012546014546116209190612228565b61162a9190612228565b6040805160808101825260125481526013546020820152601454918101919091526015546060820181905291975087965090935091506116d1565b806116c257600f54600e5460105461167d9190612228565b6116879190612228565b60408051608081018252600e548152600f546020820152601054918101919091526011546060820181905291975087965090935091506116d1565b80156116d157600b5495508594505b8260646116de878a61232e565b6116e89190612345565b6116f29190612345565b600754909450600160a81b900460ff16801561171c57506007546001600160a01b038a8116911614155b1561172b5761172b86836117da565b61173f898961173a878b612215565b611991565b831561177d57851561177d57600083606461175a898b61232e565b6117649190612345565b61176e9190612345565b905061177b8a3083611991565b505b505050505050505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b600754600160a01b900460ff16611239576007805460ff60a01b1916600160a01b17905581156119805730600090815260208190526040902054600854811061197e576001600854111561182d57506008545b600061183a84600261232e565b905060008184604001518461184f919061232e565b6118599190612345565b905060006118678285612215565b90504761187382611b69565b600061187f8247612215565b9050600087606001518860400151876118989190612215565b6118a29190612345565b6118ac9083612345565b9050600088606001518960400151836118c5919061232e565b6118cf9190612345565b905080156118e1576118e18682611cc3565b600089606001518a602001518460026118fa919061232e565b611904919061232e565b61190e9190612345565b9050801561192c57600c5461192c906001600160a01b031682611d75565b60608a01518a516000919061194286600261232e565b61194c919061232e565b6119569190612345565b9050801561197457600d54611974906001600160a01b031682611d75565b5050505050505050505b505b6007805460ff60a01b191690555050565b6001600160a01b0383166119f55760405162461bcd60e51b815260206004820152602560248201527f42455032303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107ea565b6001600160a01b038216611a575760405162461bcd60e51b815260206004820152602360248201527f42455032303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107ea565b6001600160a01b03831660009081526020819052604090205481811015611acf5760405162461bcd60e51b815260206004820152602660248201527f42455032303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107ea565b611ad98282612215565b6001600160a01b038086166000908152602081905260408082209390935590851681529081208054849290611b0f908490612228565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611b5b91815260200190565b60405180910390a350505050565b6040805160028082526060820183526000926020830190803683370190505090503081600081518110611b9e57611b9e6121d0565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015611bf7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c1b919061240c565b81600181518110611c2e57611c2e6121d0565b6001600160a01b039283166020918202929092010152600654611c5491309116846112d8565b60065460405163791ac94760e01b81526001600160a01b039091169063791ac94790611c8d908590600090869030904290600401612429565b600060405180830381600087803b158015611ca757600080fd5b505af1158015611cbb573d6000803e3d6000fd5b505050505050565b600654611cdb9030906001600160a01b0316846112d8565b60065460405163f305d71960e01b815230600482015260248101849052600060448201819052606482015261dead60848201524260a48201526001600160a01b039091169063f305d71990839060c40160606040518083038185885af1158015611d49573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190611d6e919061249a565b5050505050565b80471015611dc55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107ea565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611e12576040519150601f19603f3d011682016040523d82523d6000602084013e611e17565b606091505b505090508061085a5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107ea565b600060208083528351808285015260005b81811015611ebb57858101830151858201604001528201611e9f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146112d557600080fd5b8035611efc81611edc565b919050565b60008060408385031215611f1457600080fd5b8235611f1f81611edc565b946020939093013593505050565b634e487b7160e01b600052604160045260246000fd5b80151581146112d557600080fd5b8035611efc81611f43565b60008060408385031215611f6f57600080fd5b823567ffffffffffffffff80821115611f8757600080fd5b818501915085601f830112611f9b57600080fd5b8135602082821115611faf57611faf611f2d565b8160051b604051601f19603f83011681018181108682111715611fd457611fd4611f2d565b604052928352818301935084810182019289841115611ff257600080fd5b948201945b838610156120175761200886611ef1565b85529482019493820193611ff7565b96506120269050878201611f51565b9450505050509250929050565b60006020828403121561204557600080fd5b813561205081611f43565b9392505050565b60008060006060848603121561206c57600080fd5b833561207781611edc565b9250602084013561208781611edc565b929592945050506040919091013590565b600080604083850312156120ab57600080fd5b82356120b681611edc565b915060208301356120c681611f43565b809150509250929050565b6000602082840312156120e357600080fd5b5035919050565b6000602082840312156120fc57600080fd5b813561205081611edc565b60008060006060848603121561211c57600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561214657600080fd5b823561215181611edc565b915060208301356120c681611edc565b600181811c9082168061217557607f821691505b60208210810361219557634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b60006001820161220e5761220e6121e6565b5060010190565b818103818111156107ba576107ba6121e6565b808201808211156107ba576107ba6121e6565b600181815b8085111561227657816000190482111561225c5761225c6121e6565b8085161561226957918102915b93841c9390800290612240565b509250929050565b60008261228d575060016107ba565b8161229a575060006107ba565b81600181146122b057600281146122ba576122d6565b60019150506107ba565b60ff8411156122cb576122cb6121e6565b50506001821b6107ba565b5060208310610133831016604e8410600b84101617156122f9575081810a6107ba565b612303838361223b565b8060001904821115612317576123176121e6565b029392505050565b600061205060ff84168361227e565b80820281158282048414176107ba576107ba6121e6565b60008261236257634e487b7160e01b600052601260045260246000fd5b500490565b60208082526026908201527f46656520416464726573732063616e6e6f7420626520436f6e7472616374204160408201526564647265737360d01b606082015260800190565b60208082526022908201527f46656520416464726573732063616e6e6f74206265207a65726f206164647265604082015261737360f01b606082015260800190565b60006020828403121561240157600080fd5b815161205081611f43565b60006020828403121561241e57600080fd5b815161205081611edc565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156124795784516001600160a01b031683529383019391830191600101612454565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156124af57600080fd5b835192506020840151915060408401519050925092509256fea264697066735822122024e79720f3bc5aae1495d5054f7008adf1f1e2d8b4fc80a4d2a19d06c72cd82a64736f6c63430008130033
Deployed Bytecode Sourcemap
12252:11978:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2452:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14444:193;;;;;;;;;;-1:-1:-1;14444:193:0;;;;;:::i;:::-;;:::i;:::-;;;1327:14:1;;1320:22;1302:41;;1290:2;1275:18;14444:193:0;1162:187:1;23552:202:0;;;;;;;;;;-1:-1:-1;23552:202:0;;;;;:::i;:::-;;:::i;:::-;;20987:108;;;;;;;;;;-1:-1:-1;20987:108:0;;;;;:::i;:::-;;:::i;12519:53::-;;;;;;;;;;;;;;;;;;;3330:25:1;;;3318:2;3303:18;12519:53:0;3184:177:1;3572:108:0;;;;;;;;;;-1:-1:-1;3660:12:0;;3572:108;;21463:222;;;;;;;;;;;;;:::i;14645:485::-;;;;;;;;;;-1:-1:-1;14645:485:0;;;;;:::i;:::-;;:::i;12581:28::-;;;;;;;;;;;;;;;;3414:93;;;;;;;;;;-1:-1:-1;3414:93:0;;3497:2;3969:36:1;;3957:2;3942:18;3414:93:0;3827:184:1;23424:120:0;;;;;;;;;;-1:-1:-1;23424:120:0;;;;;:::i;:::-;;:::i;15138:298::-;;;;;;;;;;-1:-1:-1;15138:298:0;;;;;:::i;:::-;;:::i;21103:352::-;;;;;;;;;;-1:-1:-1;21103:352:0;;;;;:::i;:::-;;:::i;12476:34::-;;;;;;;;;;-1:-1:-1;12476:34:0;;;;-1:-1:-1;;;12476:34:0;;;;;;3743:177;;;;;;;;;;-1:-1:-1;3743:177:0;;;;;:::i;:::-;-1:-1:-1;;;;;3894:18:0;3862:7;3894:18;;;;;;;;;;;;3743:177;10860:94;;;;;;;;;;;;;:::i;12776:76::-;;;;;;;;;;-1:-1:-1;12776:76:0;;;;-1:-1:-1;;;;;12776:76:0;;;;;;-1:-1:-1;;;;;5004:32:1;;;4986:51;;4974:2;4959:18;12776:76:0;4840:203:1;13201:114:0;;;;;;;;;;;;;;;;12859:79;;;;;;;;;;;;12896:42;12859:79;;22547:426;;;;;;;;;;-1:-1:-1;22547:426:0;;;;;:::i;:::-;;:::i;10637:87::-;;;;;;;;;;-1:-1:-1;10710:6:0;;-1:-1:-1;;;;;10710:6:0;10637:87;;2671:104;;;;;;;;;;;;;:::i;15444:409::-;;;;;;;;;;-1:-1:-1;15444:409:0;;;;;:::i;:::-;;:::i;12365:19::-;;;;;;;;;;-1:-1:-1;12365:19:0;;;;-1:-1:-1;;;;;12365:19:0;;;15861:197;;;;;;;;;;-1:-1:-1;15861:197:0;;;;;:::i;:::-;;:::i;22247:287::-;;;;;;;;;;-1:-1:-1;22247:287:0;;;;;:::i;:::-;;:::i;21955:284::-;;;;;;;;;;-1:-1:-1;21955:284:0;;;;;:::i;:::-;;:::i;22981:431::-;;;;;;;;;;-1:-1:-1;22981:431:0;;;;;:::i;:::-;;:::i;12692:77::-;;;;;;;;;;-1:-1:-1;12692:77:0;;;;-1:-1:-1;;;;;12692:77:0;;;13453:41;;;;;;;;;;-1:-1:-1;13453:41:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;23934:238;;;;;;;;;;-1:-1:-1;23934:238:0;;;;;:::i;:::-;;:::i;13322:119::-;;;;;;;;;;;;;;;;4412:201;;;;;;;;;;-1:-1:-1;4412:201:0;;;;;:::i;:::-;-1:-1:-1;;;;;4578:18:0;;;4546:7;4578:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;4412:201;21693:251;;;;;;;;;;-1:-1:-1;21693:251:0;;;;;:::i;:::-;;:::i;23762:164::-;;;;;;;;;;;;;:::i;10962:229::-;;;;;;;;;;-1:-1:-1;10962:229:0;;;;;:::i;:::-;;:::i;12337:21::-;;;;;;;;;;-1:-1:-1;12337:21:0;;;;-1:-1:-1;;;;;12337:21:0;;;12431:38;;;;;;;;;;-1:-1:-1;12431:38:0;;;;-1:-1:-1;;;12431:38:0;;;;;;2452:100;2506:13;2539:5;2532:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2452:100;:::o;14444:193::-;14546:4;14568:39;175:10;14591:7;14600:6;14568:8;:39::i;:::-;-1:-1:-1;14625:4:0;14444:193;;;;;:::o;23552:202::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;;;;;;;;;23649:9:::1;23644:103;23668:8;:15;23664:1;:19;23644:103;;;23730:5;23705:9;:22;23715:8;23724:1;23715:11;;;;;;;;:::i;:::-;;::::0;;::::1;::::0;;;;;;;-1:-1:-1;;;;;23705:22:0::1;::::0;;;::::1;::::0;;;;;;-1:-1:-1;23705:22:0;:30;;-1:-1:-1;;23705:30:0::1;::::0;::::1;;::::0;;;::::1;::::0;;23685:3;::::1;::::0;::::1;:::i;:::-;;;;23644:103;;;;23552:202:::0;;:::o;20987:108::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;21061:18:::1;:26:::0;;;::::1;;-1:-1:-1::0;;;21061:26:0::1;-1:-1:-1::0;;;;21061:26:0;;::::1;::::0;;;::::1;::::0;;20987:108::o;21463:222::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;21527:14:::1;::::0;-1:-1:-1;;;21527:14:0;::::1;;;21526:15;21518:52;;;::::0;-1:-1:-1;;;21518:52:0;;7337:2:1;21518:52:0::1;::::0;::::1;7319:21:1::0;7376:2;7356:18;;;7349:30;7415:26;7395:18;;;7388:54;7459:18;;21518:52:0::1;7135:348:1::0;21518:52:0::1;21581:14;:21:::0;;-1:-1:-1;;;;21613:25:0;-1:-1:-1;;;21613:25:0;;;21665:12:::1;21649:13;:28:::0;21463:222::o;14645:485::-;14777:4;14794:36;14804:6;14812:9;14823:6;14794:9;:36::i;:::-;-1:-1:-1;;;;;14870:19:0;;14843:24;14870:19;;;:11;:19;;;;;;;;175:10;14870:33;;;;;;;;14936:26;;;;14914:116;;;;-1:-1:-1;;;14914:116:0;;7690:2:1;14914:116:0;;;7672:21:1;7729:2;7709:18;;;7702:30;7768:34;7748:18;;;7741:62;-1:-1:-1;;;7819:18:1;;;7812:38;7867:19;;14914:116:0;7488:404:1;14914:116:0;15041:57;15050:6;175:10;15072:25;15091:6;15072:16;:25;:::i;:::-;15041:8;:57::i;:::-;-1:-1:-1;15118:4:0;;14645:485;-1:-1:-1;;;;14645:485:0:o;23424:120::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;23509:19:0;;;::::1;;::::0;;;:9:::1;:19;::::0;;;;:27;;-1:-1:-1;;23509:27:0::1;::::0;::::1;;::::0;;;::::1;::::0;;23424:120::o;15138:298::-;175:10;15254:4;15348:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15348:34:0;;;;;;;;;;15254:4;;15276:130;;15326:7;;15348:47;;15385:10;;15348:47;:::i;21103:352::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;21209:3:::1;21195:10;:17;;21187:94;;;::::0;-1:-1:-1;;;21187:94:0;;8362:2:1;21187:94:0::1;::::0;::::1;8344:21:1::0;8401:2;8381:18;;;8374:30;8440:34;8420:18;;;8413:62;8511:34;8491:18;;;8484:62;-1:-1:-1;;;8562:19:1;;;8555:32;8604:19;;21187:94:0::1;8160:469:1::0;21187:94:0::1;21314:3;21300:10;:17;;21292:91;;;::::0;-1:-1:-1;;;21292:91:0;;8836:2:1;21292:91:0::1;::::0;::::1;8818:21:1::0;8875:2;8855:18;;;8848:30;8914:34;8894:18;;;8887:62;8985:32;8965:18;;;8958:60;9035:19;;21292:91:0::1;8634:426:1::0;21292:91:0::1;21433:14;3497:2:::0;21433::::1;:14;:::i;:::-;21420:27;::::0;:10;:27:::1;:::i;:::-;21394:23;:53:::0;-1:-1:-1;21103:352:0:o;10860:94::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;10925:21:::1;10943:1;10925:9;:21::i;:::-;10860:94::o:0;22547:426::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;22744:20;;22768:4:::1;::::0;22732:10;22704:25:::1;22719:10:::0;22704:12;:25:::1;:::i;:::-;:38;;;;:::i;:::-;22703:61;;;;:::i;:::-;:69;;22695:111;;;::::0;-1:-1:-1;;;22695:111:0;;11045:2:1;22695:111:0::1;::::0;::::1;11027:21:1::0;11084:2;11064:18;;;11057:30;11123:31;11103:18;;;11096:59;11172:18;;22695:111:0::1;10843:353:1::0;22695:111:0::1;22817:20:::0;:35;;;:8:::1;22863:31:::0;;;22905:18;:31;;;22952:13:::1;::::0;::::1;::::0;22863:18:::1;::::0;22952:13:::1;22547:426:::0;;;:::o;2671:104::-;2727:13;2760:7;2753:14;;;;;:::i;15444:409::-;175:10;15565:4;15614:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;15614:34:0;;;;;;;;;;15667:35;;;;15659:84;;;;-1:-1:-1;;;15659:84:0;;11403:2:1;15659:84:0;;;11385:21:1;11442:2;11422:18;;;11415:30;11481:34;11461:18;;;11454:62;-1:-1:-1;;;11532:18:1;;;11525:35;11577:19;;15659:84:0;11201:401:1;15659:84:0;15754:67;175:10;15777:7;15786:34;15805:15;15786:16;:34;:::i;15754:67::-;-1:-1:-1;15841:4:0;;15444:409;-1:-1:-1;;;15444:409:0:o;15861:197::-;15966:4;15988:40;15998:10;16010:9;16021:6;15988:9;:40::i;22247:287::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;22357:4:::1;-1:-1:-1::0;;;;;22336:26:0;::::1;::::0;22328:77:::1;;;;-1:-1:-1::0;;;22328:77:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;22424:23:0;::::1;22416:70;;;;-1:-1:-1::0;;;22416:70:0::1;;;;;;;:::i;:::-;22497:17;:29:::0;;-1:-1:-1;;;;;;22497:29:0::1;-1:-1:-1::0;;;;;22497:29:0;;;::::1;::::0;;;::::1;::::0;;22247:287::o;21955:284::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;22064:4:::1;-1:-1:-1::0;;;;;22043:26:0;::::1;::::0;22035:77:::1;;;;-1:-1:-1::0;;;22035:77:0::1;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;22131:23:0;::::1;22123:70;;;;-1:-1:-1::0;;;22123:70:0::1;;;;;;;:::i;:::-;22204:15;:27:::0;;-1:-1:-1;;;;;;22204:27:0::1;-1:-1:-1::0;;;;;22204:27:0;;;::::1;::::0;;;::::1;::::0;;21955:284::o;22981:431::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;23179:21;;23204:4:::1;::::0;23167:10;23139:25:::1;23154:10:::0;23139:12;:25:::1;:::i;:::-;:38;;;;:::i;:::-;23138:62;;;;:::i;:::-;:70;;23130:112;;;::::0;-1:-1:-1;;;23130:112:0;;11045:2:1;23130:112:0::1;::::0;::::1;11027:21:1::0;11084:2;11064:18;;;11057:30;11123:31;11103:18;;;11096:59;11172:18;;23130:112:0::1;10843:353:1::0;23130:112:0::1;23253:21:::0;:36;;;:9:::1;23300:32:::0;;;23343:19;:32;;;23391:13:::1;::::0;::::1;::::0;23300:19:::1;::::0;23391:13:::1;22981:431:::0;;;:::o;23934:238::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;24047:4:::1;-1:-1:-1::0;;;;;24027:25:0;::::1;::::0;24019:92:::1;;;::::0;-1:-1:-1;;;24019:92:0;;12619:2:1;24019:92:0::1;::::0;::::1;12601:21:1::0;12658:2;12638:18;;;12631:30;12697:34;12677:18;;;12670:62;-1:-1:-1;;;12748:18:1;;;12741:52;12810:19;;24019:92:0::1;12417:418:1::0;24019:92:0::1;24129:8;-1:-1:-1::0;;;;;24122:25:0::1;;24148:7;10710:6:::0;;-1:-1:-1;;;;;10710:6:0;;10637:87;24148:7:::1;24122:42;::::0;-1:-1:-1;;;;;;24122:42:0::1;::::0;;;;;;-1:-1:-1;;;;;13032:32:1;;;24122:42:0::1;::::0;::::1;13014:51:1::0;13081:18;;;13074:34;;;12987:18;;24122:42:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;21693:251::-:0;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;21775:14:::1;::::0;-1:-1:-1;;;21775:14:0;::::1;;;21774:15;21766:65;;;::::0;-1:-1:-1;;;21766:65:0;;13571:2:1;21766:65:0::1;::::0;::::1;13553:21:1::0;13610:2;13590:18;;;13583:30;13649:34;13629:18;;;13622:62;-1:-1:-1;;;13700:18:1;;;13693:35;13745:19;;21766:65:0::1;13369:401:1::0;21766:65:0::1;21862:1;21850:9;:13;21842:63;;;::::0;-1:-1:-1;;;21842:63:0;;13977:2:1;21842:63:0::1;::::0;::::1;13959:21:1::0;14016:2;13996:18;;;13989:30;14055:34;14035:18;;;14028:62;-1:-1:-1;;;14106:18:1;;;14099:35;14151:19;;21842:63:0::1;13775:401:1::0;21842:63:0::1;21916:8;:20:::0;21693:251::o;23762:164::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;23841:21:::1;23881:7;10710:6:::0;;-1:-1:-1;;;;;10710:6:0;;10637:87;23881:7:::1;-1:-1:-1::0;;;;;23873:25:0::1;:45;23899:18;23873:45;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;23802:124;23762:164::o:0;10962:229::-;10710:6;;-1:-1:-1;;;;;10710:6:0;175:10;10772:23;10764:68;;;;-1:-1:-1;;;10764:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;11065:22:0;::::1;11043:110;;;::::0;-1:-1:-1;;;11043:110:0;;14383:2:1;11043:110:0::1;::::0;::::1;14365:21:1::0;14422:2;14402:18;;;14395:30;14461:34;14441:18;;;14434:62;-1:-1:-1;;;14512:18:1;;;14505:36;14558:19;;11043:110:0::1;14181:402:1::0;11043:110:0::1;11164:19;11174:8;11164:9;:19::i;:::-;10962:229:::0;:::o;9573:380::-;-1:-1:-1;;;;;9709:19:0;;9701:68;;;;-1:-1:-1;;;9701:68:0;;14790:2:1;9701:68:0;;;14772:21:1;14829:2;14809:18;;;14802:30;14868:34;14848:18;;;14841:62;-1:-1:-1;;;14919:18:1;;;14912:34;14963:19;;9701:68:0;14588:400:1;9701:68:0;-1:-1:-1;;;;;9788:21:0;;9780:68;;;;-1:-1:-1;;;9780:68:0;;15195:2:1;9780:68:0;;;15177:21:1;15234:2;15214:18;;;15207:30;15273:34;15253:18;;;15246:62;-1:-1:-1;;;15324:18:1;;;15317:32;15366:19;;9780:68:0;14993:398:1;9780:68:0;-1:-1:-1;;;;;9861:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9913:32;;3330:25:1;;;9913:32:0;;3303:18:1;9913:32:0;;;;;;;9573:380;;;:::o;16066:2118::-;16216:1;16207:6;:10;16199:64;;;;-1:-1:-1;;;16199:64:0;;15598:2:1;16199:64:0;;;15580:21:1;15637:2;15617:18;;;15610:30;15676:34;15656:18;;;15649:62;-1:-1:-1;;;15727:18:1;;;15720:39;15776:19;;16199:64:0;15396:405:1;16199:64:0;-1:-1:-1;;;;;16288:17:0;;;;;;:9;:17;;;;;;;;16287:18;:43;;;;-1:-1:-1;;;;;;16310:20:0;;;;;;:9;:20;;;;;;;;16309:21;16287:43;16283:122;;;16355:14;;-1:-1:-1;;;16355:14:0;;;;16347:46;;;;-1:-1:-1;;;16347:46:0;;16008:2:1;16347:46:0;;;15990:21:1;16047:2;16027:18;;;16020:30;-1:-1:-1;;;16066:18:1;;;16059:49;16125:18;;16347:46:0;15806:343:1;16347:46:0;16425:15;16451:14;16476:11;16498:23;16524:9;:21;;;16498:47;;16556:25;-1:-1:-1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16556:25:0;-1:-1:-1;;;;;16615:17:0;;16594;16615;;;:9;:17;;;;;;;;16614:18;:56;;;;-1:-1:-1;;;;;;16650:20:0;;;;;;:9;:20;;;;;;;;16649:21;16614:56;:112;;;;;16718:8;;16702:13;;:24;;;;:::i;:::-;16687:12;:39;16614:112;16814:10;;16594:132;;-1:-1:-1;;;;16814:10:0;;;;;:31;;-1:-1:-1;;;;;;16828:17:0;;;;;;:9;:17;;;;;;;;16814:31;:55;;;-1:-1:-1;;;;;;16849:20:0;;;;;;:9;:20;;;;;;;;16814:55;16810:742;;;16890:1;16884:7;;16810:742;;;16955:4;;-1:-1:-1;;;;;16942:17:0;;;16955:4;;16942:17;:34;;;;;16964:12;16963:13;16942:34;16938:614;;;17047:21;;:9;17025:19;17003;;:41;;17025:19;17003:41;:::i;:::-;:65;;;;:::i;:::-;17114:24;;;;;;;;17129:9;17114:24;;;;;;;;;;;;;;;;;;;;;;;;;;16993:75;;-1:-1:-1;16993:75:0;;-1:-1:-1;17114:24:0;;-1:-1:-1;17114:24:0;-1:-1:-1;16938:614:0;;;17215:12;17210:342;;17296:20;;:8;17275:18;17254;;:39;;17275:18;17254:39;:::i;:::-;:62;;;;:::i;:::-;17362:23;;;;;;;;17377:8;17362:23;;;;;;;;;;;;;;;;;;;;;;;;;;17244:72;;-1:-1:-1;17244:72:0;;-1:-1:-1;17362:23:0;;-1:-1:-1;17362:23:0;-1:-1:-1;17210:342:0;;;17459:12;17455:97;;;17498:9;;;-1:-1:-1;17498:9:0;;-1:-1:-1;17455:97:0;17596:15;17591:3;17572:15;17581:6;17572;:15;:::i;:::-;17571:23;;;;:::i;:::-;17570:41;;;;:::i;:::-;17732:18;;17564:47;;-1:-1:-1;;;;17732:18:0;;;;:36;;;;-1:-1:-1;17764:4:0;;-1:-1:-1;;;;;17754:14:0;;;17764:4;;17754:14;;17732:36;17728:85;;;17783:30;17791:7;17800:12;17783:7;:30::i;:::-;17855:48;17871:6;17879:9;17890:12;17899:3;17890:6;:12;:::i;:::-;17855:15;:48::i;:::-;17918:7;;17914:265;;17990:11;;17986:182;;18022:17;18069:15;18064:3;18044:16;18053:7;18044:6;:16;:::i;:::-;18043:24;;;;:::i;:::-;18042:42;;;;:::i;:::-;18022:62;;18103:49;18119:6;18135:4;18142:9;18103:15;:49::i;:::-;18003:165;17986:182;16188:1996;;;;;;16066:2118;;;:::o;11199:173::-;11274:6;;;-1:-1:-1;;;;;11291:17:0;;;-1:-1:-1;;;;;;11291:17:0;;;;;;;11324:40;;11274:6;;;11291:17;11274:6;;11324:40;;11255:16;;11324:40;11244:128;11199:173;:::o;18192:1739::-;13573:10;;-1:-1:-1;;;13573:10:0;;;;13568:110;;13600:10;:17;;-1:-1:-1;;;;13600:17:0;-1:-1:-1;;;13600:17:0;;;18281:51;;18314:7:::1;18281:51;18388:4;18344:23;3894:18:::0;;;;;;;;;;;18428:23:::1;::::0;18409:42;::::1;18405:1519;;18498:1;18472:23;;:27;18468:109;;;-1:-1:-1::0;18538:23:0::1;::::0;18468:109:::1;18648:19;18670:11;:7:::0;18680:1:::1;18670:11;:::i;:::-;18648:33;;18696:32;18773:11;18750:9;:19;;;18732:15;:37;;;;:::i;:::-;18731:53;;;;:::i;:::-;18696:88:::0;-1:-1:-1;18799:14:0::1;18816:42;18696:88:::0;18816:15;:42:::1;:::i;:::-;18799:59:::0;-1:-1:-1;18900:21:0::1;18938:24;18799:59:::0;18938:16:::1;:24::i;:::-;18979:20;19002:38;19026:14:::0;19002:21:::1;:38;:::i;:::-;18979:61;;19055:19;19129:9;:21;;;19108:9;:19;;;19094:11;:33;;;;:::i;:::-;19093:57;;;;:::i;:::-;19077:74;::::0;:12;:74:::1;:::i;:::-;19055:96;;19166:29;19235:9;:21;;;19214:9;:19;;;19200:11;:33;;;;:::i;:::-;19199:57;;;;:::i;:::-;19166:91:::0;-1:-1:-1;19278:25:0;;19274:172:::1;;19369:61;19382:24;19408:21;19369:12;:61::i;:::-;19462:22;19529:9;:21;;;19506:9;:21;;;19488:11;19502:1;19488:15;;;;:::i;:::-;:39;;;;:::i;:::-;19487:63;;;;:::i;:::-;19462:88:::0;-1:-1:-1;19571:18:0;;19567:114:::1;;19619:17;::::0;19611:52:::1;::::0;-1:-1:-1;;;;;19619:17:0::1;19648:14:::0;19611:36:::1;:52::i;:::-;19772:21;::::0;::::1;::::0;19751:19;;19709:20:::1;::::0;19772:21;19733:15:::1;:11:::0;19747:1:::1;19733:15;:::i;:::-;:37;;;;:::i;:::-;19732:61;;;;:::i;:::-;19709:84:::0;-1:-1:-1;19812:16:0;;19808:105:::1;;19857:15;::::0;19849:48:::1;::::0;-1:-1:-1;;;;;19857:15:0::1;19884:12:::0;19849:34:::1;:48::i;:::-;18453:1471;;;;;;;;;18405:1519;18270:1661;13632:1;13648:10:::0;:18;;-1:-1:-1;;;;13648:18:0;;;18192:1739;;:::o;8090:615::-;-1:-1:-1;;;;;8230:20:0;;8222:70;;;;-1:-1:-1;;;8222:70:0;;16356:2:1;8222:70:0;;;16338:21:1;16395:2;16375:18;;;16368:30;16434:34;16414:18;;;16407:62;-1:-1:-1;;;16485:18:1;;;16478:35;16530:19;;8222:70:0;16154:401:1;8222:70:0;-1:-1:-1;;;;;8311:23:0;;8303:71;;;;-1:-1:-1;;;8303:71:0;;16762:2:1;8303:71:0;;;16744:21:1;16801:2;16781:18;;;16774:30;16840:34;16820:18;;;16813:62;-1:-1:-1;;;16891:18:1;;;16884:33;16934:19;;8303:71:0;16560:399:1;8303:71:0;-1:-1:-1;;;;;8411:17:0;;8387:21;8411:17;;;;;;;;;;;8461:23;;;;8439:111;;;;-1:-1:-1;;;8439:111:0;;17166:2:1;8439:111:0;;;17148:21:1;17205:2;17185:18;;;17178:30;17244:34;17224:18;;;17217:62;-1:-1:-1;;;17295:18:1;;;17288:36;17341:19;;8439:111:0;16964:402:1;8439:111:0;8581:22;8597:6;8581:13;:22;:::i;:::-;-1:-1:-1;;;;;8561:17:0;;;:9;:17;;;;;;;;;;;:42;;;;8614:20;;;;;;;;:30;;8638:6;;8561:9;8614:30;;8638:6;;8614:30;:::i;:::-;;;;;;;;8679:9;-1:-1:-1;;;;;8662:35:0;8671:6;-1:-1:-1;;;;;8662:35:0;;8690:6;8662:35;;;;3330:25:1;;3318:2;3303:18;;3184:177;8662:35:0;;;;;;;;8211:494;8090:615;;;:::o;19939:534::-;20089:16;;;20103:1;20089:16;;;;;;;;20065:21;;20089:16;;;;;;;;;;-1:-1:-1;20089:16:0;20065:40;;20134:4;20116;20121:1;20116:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20116:23:0;;;:7;;;;;;;;;;:23;;;;20160:6;;:13;;;-1:-1:-1;;;20160:13:0;;;;:6;;;;;:11;;:13;;;;;20116:7;;20160:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;20150:4;20155:1;20150:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;20150:23:0;;;:7;;;;;;;;;:23;20218:6;;20186:53;;20203:4;;20218:6;20227:11;20186:8;:53::i;:::-;20278:6;;:187;;-1:-1:-1;;;20278:187:0;;-1:-1:-1;;;;;20278:6:0;;;;:57;;:187;;20350:11;;20278:6;;20392:4;;20419;;20439:15;;20278:187;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19994:479;19939:534;:::o;20481:498::-;20661:6;;20629:53;;20646:4;;-1:-1:-1;;;;;20661:6:0;20670:11;20629:8;:53::i;:::-;20725:6;;:246;;-1:-1:-1;;;20725:246:0;;20788:4;20725:246;;;18953:34:1;19003:18;;;18996:34;;;20725:6:0;19046:18:1;;;19039:34;;;19089:18;;;19082:34;12896:42:0;19132:19:1;;;19125:44;20945:15:0;19185:19:1;;;19178:35;-1:-1:-1;;;;;20725:6:0;;;;:22;;20755:9;;18887:19:1;;20725:246:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;20481:498;;:::o;9983:391::-;10112:6;10087:21;:31;;10065:110;;;;-1:-1:-1;;;10065:110:0;;19737:2:1;10065:110:0;;;19719:21:1;19776:2;19756:18;;;19749:30;19815:31;19795:18;;;19788:59;19864:18;;10065:110:0;19535:353:1;10065:110:0;10189:12;10207:9;-1:-1:-1;;;;;10207:14:0;10229:6;10207:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10188:52;;;10273:7;10251:115;;;;-1:-1:-1;;;10251:115:0;;20305:2:1;10251:115:0;;;20287:21:1;20344:2;20324:18;;;20317:30;20383:34;20363:18;;;20356:62;20454:28;20434:18;;;20427:56;20500:19;;10251:115:0;20103:422:1;14:548;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;703:134;771:20;;800:31;771:20;800:31;:::i;:::-;703:134;;;:::o;842:315::-;910:6;918;971:2;959:9;950:7;946:23;942:32;939:52;;;987:1;984;977:12;939:52;1026:9;1013:23;1045:31;1070:5;1045:31;:::i;:::-;1095:5;1147:2;1132:18;;;;1119:32;;-1:-1:-1;;;842:315:1:o;1354:127::-;1415:10;1410:3;1406:20;1403:1;1396:31;1446:4;1443:1;1436:15;1470:4;1467:1;1460:15;1486:118;1572:5;1565:13;1558:21;1551:5;1548:32;1538:60;;1594:1;1591;1584:12;1609:128;1674:20;;1703:28;1674:20;1703:28;:::i;1742:1191::-;1832:6;1840;1893:2;1881:9;1872:7;1868:23;1864:32;1861:52;;;1909:1;1906;1899:12;1861:52;1949:9;1936:23;1978:18;2019:2;2011:6;2008:14;2005:34;;;2035:1;2032;2025:12;2005:34;2073:6;2062:9;2058:22;2048:32;;2118:7;2111:4;2107:2;2103:13;2099:27;2089:55;;2140:1;2137;2130:12;2089:55;2176:2;2163:16;2198:4;2221:2;2217;2214:10;2211:36;;;2227:18;;:::i;:::-;2273:2;2270:1;2266:10;2305:2;2299:9;2368:2;2364:7;2359:2;2355;2351:11;2347:25;2339:6;2335:38;2423:6;2411:10;2408:22;2403:2;2391:10;2388:18;2385:46;2382:72;;;2434:18;;:::i;:::-;2470:2;2463:22;2520:18;;;2554:15;;;;-1:-1:-1;2596:11:1;;;2592:20;;;2624:19;;;2621:39;;;2656:1;2653;2646:12;2621:39;2680:11;;;;2700:148;2716:6;2711:3;2708:15;2700:148;;;2782:23;2801:3;2782:23;:::i;:::-;2770:36;;2733:12;;;;2826;;;;2700:148;;;2867:6;-1:-1:-1;2892:35:1;;-1:-1:-1;2908:18:1;;;2892:35;:::i;:::-;2882:45;;;;;;1742:1191;;;;;:::o;2938:241::-;2994:6;3047:2;3035:9;3026:7;3022:23;3018:32;3015:52;;;3063:1;3060;3053:12;3015:52;3102:9;3089:23;3121:28;3143:5;3121:28;:::i;:::-;3168:5;2938:241;-1:-1:-1;;;2938:241:1:o;3366:456::-;3443:6;3451;3459;3512:2;3500:9;3491:7;3487:23;3483:32;3480:52;;;3528:1;3525;3518:12;3480:52;3567:9;3554:23;3586:31;3611:5;3586:31;:::i;:::-;3636:5;-1:-1:-1;3693:2:1;3678:18;;3665:32;3706:33;3665:32;3706:33;:::i;:::-;3366:456;;3758:7;;-1:-1:-1;;;3812:2:1;3797:18;;;;3784:32;;3366:456::o;4016:382::-;4081:6;4089;4142:2;4130:9;4121:7;4117:23;4113:32;4110:52;;;4158:1;4155;4148:12;4110:52;4197:9;4184:23;4216:31;4241:5;4216:31;:::i;:::-;4266:5;-1:-1:-1;4323:2:1;4308:18;;4295:32;4336:30;4295:32;4336:30;:::i;:::-;4385:7;4375:17;;;4016:382;;;;;:::o;4403:180::-;4462:6;4515:2;4503:9;4494:7;4490:23;4486:32;4483:52;;;4531:1;4528;4521:12;4483:52;-1:-1:-1;4554:23:1;;4403:180;-1:-1:-1;4403:180:1:o;4588:247::-;4647:6;4700:2;4688:9;4679:7;4675:23;4671:32;4668:52;;;4716:1;4713;4706:12;4668:52;4755:9;4742:23;4774:31;4799:5;4774:31;:::i;5048:316::-;5125:6;5133;5141;5194:2;5182:9;5173:7;5169:23;5165:32;5162:52;;;5210:1;5207;5200:12;5162:52;-1:-1:-1;;5233:23:1;;;5303:2;5288:18;;5275:32;;-1:-1:-1;5354:2:1;5339:18;;;5326:32;;5048:316;-1:-1:-1;5048:316:1:o;5369:388::-;5437:6;5445;5498:2;5486:9;5477:7;5473:23;5469:32;5466:52;;;5514:1;5511;5504:12;5466:52;5553:9;5540:23;5572:31;5597:5;5572:31;:::i;:::-;5622:5;-1:-1:-1;5679:2:1;5664:18;;5651:32;5692:33;5651:32;5692:33;:::i;5985:380::-;6064:1;6060:12;;;;6107;;;6128:61;;6182:4;6174:6;6170:17;6160:27;;6128:61;6235:2;6227:6;6224:14;6204:18;6201:38;6198:161;;6281:10;6276:3;6272:20;6269:1;6262:31;6316:4;6313:1;6306:15;6344:4;6341:1;6334:15;6198:161;;5985:380;;;:::o;6370:356::-;6572:2;6554:21;;;6591:18;;;6584:30;6650:34;6645:2;6630:18;;6623:62;6717:2;6702:18;;6370:356::o;6731:127::-;6792:10;6787:3;6783:20;6780:1;6773:31;6823:4;6820:1;6813:15;6847:4;6844:1;6837:15;6863:127;6924:10;6919:3;6915:20;6912:1;6905:31;6955:4;6952:1;6945:15;6979:4;6976:1;6969:15;6995:135;7034:3;7055:17;;;7052:43;;7075:18;;:::i;:::-;-1:-1:-1;7122:1:1;7111:13;;6995:135::o;7897:128::-;7964:9;;;7985:11;;;7982:37;;;7999:18;;:::i;8030:125::-;8095:9;;;8116:10;;;8113:36;;;8129:18;;:::i;9065:422::-;9154:1;9197:5;9154:1;9211:270;9232:7;9222:8;9219:21;9211:270;;;9291:4;9287:1;9283:6;9279:17;9273:4;9270:27;9267:53;;;9300:18;;:::i;:::-;9350:7;9340:8;9336:22;9333:55;;;9370:16;;;;9333:55;9449:22;;;;9409:15;;;;9211:270;;;9215:3;9065:422;;;;;:::o;9492:806::-;9541:5;9571:8;9561:80;;-1:-1:-1;9612:1:1;9626:5;;9561:80;9660:4;9650:76;;-1:-1:-1;9697:1:1;9711:5;;9650:76;9742:4;9760:1;9755:59;;;;9828:1;9823:130;;;;9735:218;;9755:59;9785:1;9776:10;;9799:5;;;9823:130;9860:3;9850:8;9847:17;9844:43;;;9867:18;;:::i;:::-;-1:-1:-1;;9923:1:1;9909:16;;9938:5;;9735:218;;10037:2;10027:8;10024:16;10018:3;10012:4;10009:13;10005:36;9999:2;9989:8;9986:16;9981:2;9975:4;9972:12;9968:35;9965:77;9962:159;;;-1:-1:-1;10074:19:1;;;10106:5;;9962:159;10153:34;10178:8;10172:4;10153:34;:::i;:::-;10223:6;10219:1;10215:6;10211:19;10202:7;10199:32;10196:58;;;10234:18;;:::i;:::-;10272:20;;9492:806;-1:-1:-1;;;9492:806:1:o;10303:140::-;10361:5;10390:47;10431:4;10421:8;10417:19;10411:4;10390:47;:::i;10448:168::-;10521:9;;;10552;;10569:15;;;10563:22;;10549:37;10539:71;;10590:18;;:::i;10621:217::-;10661:1;10687;10677:132;;10731:10;10726:3;10722:20;10719:1;10712:31;10766:4;10763:1;10756:15;10794:4;10791:1;10784:15;10677:132;-1:-1:-1;10823:9:1;;10621:217::o;11607:402::-;11809:2;11791:21;;;11848:2;11828:18;;;11821:30;11887:34;11882:2;11867:18;;11860:62;-1:-1:-1;;;11953:2:1;11938:18;;11931:36;11999:3;11984:19;;11607:402::o;12014:398::-;12216:2;12198:21;;;12255:2;12235:18;;;12228:30;12294:34;12289:2;12274:18;;12267:62;-1:-1:-1;;;12360:2:1;12345:18;;12338:32;12402:3;12387:19;;12014:398::o;13119:245::-;13186:6;13239:2;13227:9;13218:7;13214:23;13210:32;13207:52;;;13255:1;13252;13245:12;13207:52;13287:9;13281:16;13306:28;13328:5;13306:28;:::i;17371:251::-;17441:6;17494:2;17482:9;17473:7;17469:23;17465:32;17462:52;;;17510:1;17507;17500:12;17462:52;17542:9;17536:16;17561:31;17586:5;17561:31;:::i;17627:980::-;17889:4;17937:3;17926:9;17922:19;17968:6;17957:9;17950:25;17994:2;18032:6;18027:2;18016:9;18012:18;18005:34;18075:3;18070:2;18059:9;18055:18;18048:31;18099:6;18134;18128:13;18165:6;18157;18150:22;18203:3;18192:9;18188:19;18181:26;;18242:2;18234:6;18230:15;18216:29;;18263:1;18273:195;18287:6;18284:1;18281:13;18273:195;;;18352:13;;-1:-1:-1;;;;;18348:39:1;18336:52;;18443:15;;;;18408:12;;;;18384:1;18302:9;18273:195;;;-1:-1:-1;;;;;;;18524:32:1;;;;18519:2;18504:18;;18497:60;-1:-1:-1;;;18588:3:1;18573:19;18566:35;18485:3;17627:980;-1:-1:-1;;;17627:980:1:o;19224:306::-;19312:6;19320;19328;19381:2;19369:9;19360:7;19356:23;19352:32;19349:52;;;19397:1;19394;19387:12;19349:52;19426:9;19420:16;19410:26;;19476:2;19465:9;19461:18;19455:25;19445:35;;19520:2;19509:9;19505:18;19499:25;19489:35;;19224:306;;;;;:::o
Swarm Source
ipfs://24e79720f3bc5aae1495d5054f7008adf1f1e2d8b4fc80a4d2a19d06c72cd82a
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.