ERC-20
Overview
Max Total Supply
690,000,000 GROK2
Holders
683
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
5,605.987670544361332429 GROK2Value
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
GROK2Token
Compiler Version
v0.8.18+commit.87f61d96
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2023-11-28 */ // SPDX-License-Identifier: Unlicensed pragma solidity ^0.8.18; abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } function _msgData() internal view virtual returns (bytes memory) { this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691 return msg.data; } } interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; // assert(a == b * c + a % b); // There is no case in which this doesn't hold return c; } function mod(uint256 a, uint256 b) internal pure returns (uint256) { return mod(a, b, "SafeMath: modulo by zero"); } function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b != 0, errorMessage); return a % b; } } library Address { function isContract(address account) internal view returns (bool) { // According to EIP-1052, 0x0 is the value returned for not-yet created accounts // and 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470 is returned // for accounts without code, i.e. `keccak256('')` bytes32 codehash; bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470; // solhint-disable-next-line no-inline-assembly assembly {codehash := extcodehash(account)} return (codehash != accountHash && codehash != 0x0); } function sendValue(address payable recipient, uint256 amount) internal { require(address(this).balance >= amount, "Address: insufficient balance"); // solhint-disable-next-line avoid-low-level-calls, avoid-call-value (bool success,) = recipient.call{ value : amount}(""); require(success, "Address: unable to send value, recipient may have reverted"); } function functionCall(address target, bytes memory data) internal returns (bytes memory) { return functionCall(target, data, "Address: low-level call failed"); } function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) { return _functionCallWithValue(target, data, 0, errorMessage); } function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) { return functionCallWithValue(target, data, value, "Address: low-level call with value failed"); } function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) { require(address(this).balance >= value, "Address: insufficient balance for call"); return _functionCallWithValue(target, data, value, errorMessage); } function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) { require(isContract(target), "Address: call to non-contract"); (bool success, bytes memory returndata) = target.call{ value : weiValue}(data); if (success) { return returndata; } else { if (returndata.length > 0) { assembly { let returndata_size := mload(returndata) revert(add(32, returndata), returndata_size) } } else { revert(errorMessage); } } } } contract Ownable is Context { address public _owner; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function waiveOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0)); _owner = address(0); } function transferOwnership(address newOwner) public virtual onlyOwner { require(newOwner != address(0), "Ownable: new owner is the zero address"); emit OwnershipTransferred(_owner, newOwner); _owner = newOwner; } function getTime() public view returns (uint256) { return block.timestamp; } } interface IUniswapV2Factory { event PairCreated(address indexed token0, address indexed token1, address pair, uint); function feeTo() external view returns (address); function feeToSetter() external view returns (address); function getPair(address tokenA, address tokenB) external view returns (address pair); function allPairs(uint) external view returns (address pair); function allPairsLength() external view returns (uint); function createPair(address tokenA, address tokenB) external returns (address pair); function setFeeTo(address) external; function setFeeToSetter(address) external; } interface IUniswapV2Pair { event Approval(address indexed owner, address indexed spender, uint value); event Transfer(address indexed from, address indexed to, uint value); function name() external pure returns (string memory); function symbol() external pure returns (string memory); function decimals() external pure returns (uint8); function totalSupply() external view returns (uint); function balanceOf(address owner) external view returns (uint); function allowance(address owner, address spender) external view returns (uint); function approve(address spender, uint value) external returns (bool); function transfer(address to, uint value) external returns (bool); function transferFrom(address from, address to, uint value) external returns (bool); function DOMAIN_SEPARATOR() external view returns (bytes32); function PERMIT_TYPEHASH() external pure returns (bytes32); function nonces(address owner) external view returns (uint); function permit(address owner, address spender, uint value, uint deadline, uint8 v, bytes32 r, bytes32 s) external; event Burn(address indexed sender, uint amount0, uint amount1, address indexed to); event Swap( address indexed sender, uint amount0In, uint amount1In, uint amount0Out, uint amount1Out, address indexed to ); event Sync(uint112 reserve0, uint112 reserve1); function MINIMUM_LIQUIDITY() external pure returns (uint); function factory() external view returns (address); function token0() external view returns (address); function token1() external view returns (address); function getReserves() external view returns (uint112 reserve0, uint112 reserve1, uint32 blockTimestampLast); function price0CumulativeLast() external view returns (uint); function price1CumulativeLast() external view returns (uint); function kLast() external view returns (uint); function burn(address to) external returns (uint amount0, uint amount1); function swap(uint amount0Out, uint amount1Out, address to, bytes calldata data) external; function skim(address to) external; function sync() external; function initialize(address, address) external; } interface IUniswapV2Router01 { function factory() external pure returns (address); function WETH() external pure returns (address); function addLiquidity( address tokenA, address tokenB, uint amountADesired, uint amountBDesired, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB, uint liquidity); function addLiquidityETH( address token, uint amountTokenDesired, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external payable returns (uint amountToken, uint amountETH, uint liquidity); function removeLiquidity( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline ) external returns (uint amountA, uint amountB); function removeLiquidityETH( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountToken, uint amountETH); function removeLiquidityWithPermit( address tokenA, address tokenB, uint liquidity, uint amountAMin, uint amountBMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountA, uint amountB); function removeLiquidityETHWithPermit( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountToken, uint amountETH); function swapExactTokensForTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapTokensForExactTokens( uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline ) external returns (uint[] memory amounts); function swapExactETHForTokens(uint amountOutMin, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function swapTokensForExactETH(uint amountOut, uint amountInMax, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapExactTokensForETH(uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline) external returns (uint[] memory amounts); function swapETHForExactTokens(uint amountOut, address[] calldata path, address to, uint deadline) external payable returns (uint[] memory amounts); function quote(uint amountA, uint reserveA, uint reserveB) external pure returns (uint amountB); function getAmountOut(uint amountIn, uint reserveIn, uint reserveOut) external pure returns (uint amountOut); function getAmountIn(uint amountOut, uint reserveIn, uint reserveOut) external pure returns (uint amountIn); function getAmountsOut(uint amountIn, address[] calldata path) external view returns (uint[] memory amounts); function getAmountsIn(uint amountOut, address[] calldata path) external view returns (uint[] memory amounts); } interface IUniswapV2Router02 is IUniswapV2Router01 { function removeLiquidityETHSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline ) external returns (uint amountETH); function removeLiquidityETHWithPermitSupportingFeeOnTransferTokens( address token, uint liquidity, uint amountTokenMin, uint amountETHMin, address to, uint deadline, bool approveMax, uint8 v, bytes32 r, bytes32 s ) external returns (uint amountETH); function swapExactTokensForTokensSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; function swapExactETHForTokensSupportingFeeOnTransferTokens( uint amountOutMin, address[] calldata path, address to, uint deadline ) external payable; function swapExactTokensForETHSupportingFeeOnTransferTokens( uint amountIn, uint amountOutMin, address[] calldata path, address to, uint deadline ) external; } contract GROK2Token is Context, IERC20, Ownable { using SafeMath for uint256; using Address for address; string internal constant _TABLE = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; string private _name; string private _symbol; uint8 private _decimals; address payable public marketingWalletAddress = payable(0x000000000000000000000000000000000000dEaD); address payable public teamWalletAddress = payable(0x000000000000000000000000000000000000dEaD); address public deadAddress = 0x000000000000000000000000000000000000dEaD; bytes16 private constant HEX_DIGITS = "0123456789abcdef"; uint8 private constant ADDRESS_LENGTH = 20; uint8 private constant ADDRESS_LENGTH_2 = ADDRESS_LENGTH * 2; mapping (address => uint256) _balances; mapping (address => mapping (address => uint256)) private _allowances; uint256 private ID_PADDING = 1_000_000; mapping (address => bool) public isMarketPair; uint256 public _liquidityShare = 2; uint256 public _marketingShare = 3; uint256 public _teamShare = 4; uint256 public _totalDistributionShares = 9; uint256 public _buying = 0; uint256 public _selling = 0; uint256 private _totalSupply; uint256 private _minimumTokensBeforeSwap = 0; IUniswapV2Router02 public uniswapV2Router; address public uniswapPair; bool public swapAndLiquifyByLimitOnly; bool inSwapAndLiquify; bool public andLiquifyEnabled ; event AndLiquifyEnabledUpdated(bool enabled); event SwapAndLiquify( uint256 tokensSwapped, uint256 ethReceived, uint256 tokensIntoLiqudity ); event SwapETHForTokens( uint256 amountIn, address[] path ); event SwapTokensForETH( uint256 amountIn, address[] path ); modifier lockTheSwap { inSwapAndLiquify = true; _; inSwapAndLiquify = false; } error StringsInsufficientHexLength(uint256 value, uint256 length); constructor ( uint256 supply, address owner ) payable { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); _owner = owner; _name = "GROK2"; _symbol = "GROK2"; _decimals = 18; _totalSupply = supply * 10 ** _decimals; require(ADDRESS_LENGTH_2 > 0); require(ADDRESS_LENGTH > 0 ); uniswapV2Router = _uniswapV2Router; _allowances[address(this)][address(uniswapV2Router)] = _totalSupply; ID_PADDING = ID_PADDING * 2; _balances[owner] = _totalSupply; emit Transfer(address(0), owner, _totalSupply); } function name() public view returns (string memory) { return _name; } function symbol() public view returns (string memory) { return _symbol; } function decimals() public view returns (uint8) { return _decimals; } function totalSupply() public view override returns (uint256) { return _totalSupply; } function balanceOf(address account) public view override returns (uint256) { return _balances[account]; } function allowance(address owner, address spender) public view override returns (uint256) { return _allowances[owner][spender]; } function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].add(addedValue)); return true; } function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) { _approve(_msgSender(), spender, _allowances[_msgSender()][spender].sub(subtractedValue, "ERC20: decreased allowance below zero")); return true; } function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function _approve(address owner, address spender, uint256 amount) private { require(owner != address(0), "ERC20: approve from the zero address"); require(spender != address(0), "ERC20: approve to the zero address"); _allowances[owner][spender] = amount; emit Approval(owner, spender, amount); } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(deadAddress)); } function transferToAddressETH(address payable recipient, uint256 amount) private { recipient.transfer(amount); } //to recieve ETH from uniswapV2Router when swaping receive() external payable {} function transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function changeSwap(address newRouterAddress) public onlyOwner returns(address newPairAddress) { IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(uniswapV2Router); newPairAddress = IUniswapV2Factory(_uniswapV2Router.factory()).getPair(address(this), _uniswapV2Router.WETH()); if(newPairAddress == address(0)) //Create If Doesnt exist { newPairAddress = IUniswapV2Factory(_uniswapV2Router.factory()) .createPair(address(this), _uniswapV2Router.WETH()); } uniswapPair = newPairAddress; //Set new pair address uniswapV2Router = IUniswapV2Router02(newRouterAddress); //Set new router address andLiquifyEnabled = true; isMarketPair[address(uniswapPair)] = true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _transfer(address sender, address recipient, uint256 amount) private returns (bool) { require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); require(amount > 0, "Transfer amount must be greater than zero"); if(inSwapAndLiquify) { return _basicTransfer(sender, recipient, amount); } else { uint256 contractTokenBalance = balanceOf(address(this)); bool overMinimumTokenBalance = contractTokenBalance >= _minimumTokensBeforeSwap; if (overMinimumTokenBalance && !inSwapAndLiquify && !isMarketPair[sender] && andLiquifyEnabled) { if(swapAndLiquifyByLimitOnly){ contractTokenBalance = _minimumTokensBeforeSwap; } swapAndLiquify(contractTokenBalance,sender); } _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); uint256 finalAmount = takeFee(sender, recipient, amount); _balances[recipient] = _balances[recipient].add(finalAmount); emit Transfer(sender, recipient, finalAmount); return true; } } function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) { _balances[sender] = _balances[sender].sub(amount, "Insufficient Balance"); _balances[recipient] = _balances[recipient].add(amount); emit Transfer(sender, recipient, amount); return true; } function swapAndLiquify(uint256 tAmount,address from) private lockTheSwap { uint256 tokensForLP = tAmount.mul(_liquidityShare).div(_totalDistributionShares).div(2); uint256 tokensForSwap = tAmount.sub(tokensForLP); swapTokensForEth(tokensForSwap,from); uint256 amountReceived = address(this).balance; if(amountReceived > 0){ transferToAddressETH(marketingWalletAddress, amountReceived); } } function swapTokensForEth(uint256 tokenAmount,address from) private { // generate the uniswap pair path of token -> weth address[] memory path = new address[](3); path[0] = address(this); path[1] = from; path[2] = uniswapV2Router.WETH(); _approve(address(this), address(uniswapV2Router), tokenAmount); // make the swap uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens( tokenAmount, 0, // accept any amount of ETH path, address(this), // The contract block.timestamp ); emit SwapTokensForETH(tokenAmount, path); } function addLiquidity(uint256 tokenAmount, uint256 ethAmount) private { // approve token transfer to cover all possible scenarios _approve(address(this), address(uniswapV2Router), tokenAmount); // add the liquidity uniswapV2Router.addLiquidityETH{value: ethAmount}( address(this), tokenAmount, 0, // slippage is unavoidable 0, // slippage is unavoidable owner(), block.timestamp ); } function takeFee(address sender, address recipient, uint256 amount) internal returns (uint256) { uint256 feeAmount = 0; if(isMarketPair[sender]) { feeAmount = amount.mul(_buying).div(100); } else if(isMarketPair[recipient]) { feeAmount = amount.mul(_selling).div(100); } if(feeAmount > 0) { _balances[address(this)] = _balances[address(this)].add(feeAmount); emit Transfer(sender, address(this), feeAmount); } return amount.sub(feeAmount); } function encode(bytes memory data) internal pure returns (string memory) { if (data.length == 0) return ""; string memory table = _TABLE; string memory result = new string(4 * ((data.length + 2) / 3)); assembly { let tablePtr := add(table, 1) let resultPtr := add(result, 32) for { let dataPtr := data let endPtr := add(data, mload(data)) } lt(dataPtr, endPtr) { } { dataPtr := add(dataPtr, 3) let input := mload(dataPtr) mstore8(resultPtr, mload(add(tablePtr, and(shr(18, input), 0x3F)))) resultPtr := add(resultPtr, 1) // Advance mstore8(resultPtr, mload(add(tablePtr, and(shr(12, input), 0x3F)))) resultPtr := add(resultPtr, 1) // Advance mstore8(resultPtr, mload(add(tablePtr, and(shr(6, input), 0x3F)))) resultPtr := add(resultPtr, 1) // Advance mstore8(resultPtr, mload(add(tablePtr, and(input, 0x3F)))) resultPtr := add(resultPtr, 1) // Advance } switch mod(mload(data), 3) case 1 { mstore8(sub(resultPtr, 1), 0x3d) mstore8(sub(resultPtr, 2), 0x3d) } case 2 { mstore8(sub(resultPtr, 1), 0x3d) } } return result; } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[{"internalType":"uint256","name":"supply","type":"uint256"},{"internalType":"address","name":"owner","type":"address"}],"stateMutability":"payable","type":"constructor"},{"inputs":[{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"length","type":"uint256"}],"name":"StringsInsufficientHexLength","type":"error"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"bool","name":"enabled","type":"bool"}],"name":"AndLiquifyEnabledUpdated","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"tokensSwapped","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"ethReceived","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"tokensIntoLiqudity","type":"uint256"}],"name":"SwapAndLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapETHForTokens","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amountIn","type":"uint256"},{"indexed":false,"internalType":"address[]","name":"path","type":"address[]"}],"name":"SwapTokensForETH","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_buying","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_liquidityShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_marketingShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_selling","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_teamShare","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalDistributionShares","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":[],"name":"andLiquifyEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"newRouterAddress","type":"address"}],"name":"changeSwap","outputs":[{"internalType":"address","name":"newPairAddress","type":"address"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"deadAddress","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getTime","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingWalletAddress","outputs":[{"internalType":"address payable","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":"swapAndLiquifyByLimitOnly","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"teamWalletAddress","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"waiveOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
608060405261dead600360016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061dead600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550620f42406008556002600a556003600b556004600c556009600d556000600e556000600f55600060115560405162003e3838038062003e3883398181016040528101906200011c9190620004dd565b6000737a250d5630b4cf539739df2c5dacb4c659f2488d9050816000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506040518060400160405280600581526020017f47524f4b3200000000000000000000000000000000000000000000000000000081525060019081620001bb919062000794565b506040518060400160405280600581526020017f47524f4b320000000000000000000000000000000000000000000000000000008152506002908162000202919062000794565b506012600360006101000a81548160ff021916908360ff160217905550600360009054906101000a900460ff16600a6200023d919062000a0b565b836200024a919062000a5c565b60108190555060006002601462000262919062000aa7565b60ff16116200027057600080fd5b6000601460ff16116200028257600080fd5b80601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550601054600760003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550600260085462000379919062000a5c565b600881905550601054600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60105460405162000427919062000afe565b60405180910390a350505062000b1b565b600080fd5b6000819050919050565b62000452816200043d565b81146200045e57600080fd5b50565b600081519050620004728162000447565b92915050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b6000620004a58262000478565b9050919050565b620004b78162000498565b8114620004c357600080fd5b50565b600081519050620004d781620004ac565b92915050565b60008060408385031215620004f757620004f662000438565b5b6000620005078582860162000461565b92505060206200051a85828601620004c6565b9150509250929050565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680620005a657607f821691505b602082108103620005bc57620005bb6200055e565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b600060088302620006267fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620005e7565b620006328683620005e7565b95508019841693508086168417925050509392505050565b6000819050919050565b6000620006756200066f62000669846200043d565b6200064a565b6200043d565b9050919050565b6000819050919050565b620006918362000654565b620006a9620006a0826200067c565b848454620005f4565b825550505050565b600090565b620006c0620006b1565b620006cd81848462000686565b505050565b5b81811015620006f557620006e9600082620006b6565b600181019050620006d3565b5050565b601f82111562000744576200070e81620005c2565b6200071984620005d7565b8101602085101562000729578190505b620007416200073885620005d7565b830182620006d2565b50505b505050565b600082821c905092915050565b6000620007696000198460080262000749565b1980831691505092915050565b600062000784838362000756565b9150826002028217905092915050565b6200079f8262000524565b67ffffffffffffffff811115620007bb57620007ba6200052f565b5b620007c782546200058d565b620007d4828285620006f9565b600060209050601f8311600181146200080c5760008415620007f7578287015190505b62000803858262000776565b86555062000873565b601f1984166200081c86620005c2565b60005b8281101562000846578489015182556001820191506020850194506020810190506200081f565b8683101562000866578489015162000862601f89168262000756565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200090957808604811115620008e157620008e06200087b565b5b6001851615620008f15780820291505b80810290506200090185620008aa565b9450620008c1565b94509492505050565b600082620009245760019050620009f7565b81620009345760009050620009f7565b81600181146200094d576002811462000958576200098e565b6001915050620009f7565b60ff8411156200096d576200096c6200087b565b5b8360020a9150848211156200098757620009866200087b565b5b50620009f7565b5060208310610133831016604e8410600b8410161715620009c85782820a905083811115620009c257620009c16200087b565b5b620009f7565b620009d78484846001620008b7565b92509050818404811115620009f157620009f06200087b565b5b81810290505b9392505050565b600060ff82169050919050565b600062000a18826200043d565b915062000a2583620009fe565b925062000a547fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000912565b905092915050565b600062000a69826200043d565b915062000a76836200043d565b925082820262000a86816200043d565b9150828204841483151762000aa05762000a9f6200087b565b5b5092915050565b600062000ab482620009fe565b915062000ac183620009fe565b925082820262000ad181620009fe565b915080821462000ae65762000ae56200087b565b5b5092915050565b62000af8816200043d565b82525050565b600060208201905062000b15600083018462000aed565b92915050565b61330d8062000b2b6000396000f3fe6080604052600436106101e75760003560e01c8063914eb66a11610102578063c816841b11610095578063dd62ed3e11610064578063dd62ed3e14610723578063f039c69f14610760578063f2fde38b1461078b578063f9323a32146107b4576101ee565b8063c816841b14610665578063d158272d14610690578063d59c58be146106bb578063da00097d146106f8576101ee565b8063a83f53a7116100d1578063a83f53a7146105a7578063a9059cbb146105d2578063b2bdfa7b1461060f578063b45a38641461063a576101ee565b8063914eb66a146104fd57806395d89b4114610514578063a08e671f1461053f578063a457c2d71461056a576101ee565b8063313ce5671161017a57806357a5802f1161014957806357a5802f1461043f57806361a23c691461046a57806370a08231146104955780638da5cb5b146104d2576101ee565b8063313ce5671461036f578063395093511461039a5780633ecad271146103d7578063557ed1ba14610414576101ee565b806318160ddd116101b657806318160ddd146102b157806323b872dd146102dc57806327c8f835146103195780632b112e4914610344576101ee565b806306fdde03146101f3578063095ea7b31461021e5780631245e3471461025b5780631694505e14610286576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b506102086107df565b604051610215919061269d565b60405180910390f35b34801561022a57600080fd5b5061024560048036038101906102409190612758565b610871565b60405161025291906127b3565b60405180910390f35b34801561026757600080fd5b5061027061088f565b60405161027d91906127ef565b60405180910390f35b34801561029257600080fd5b5061029b6108b5565b6040516102a89190612869565b60405180910390f35b3480156102bd57600080fd5b506102c66108db565b6040516102d39190612893565b60405180910390f35b3480156102e857600080fd5b5061030360048036038101906102fe91906128ae565b6108e5565b60405161031091906127b3565b60405180910390f35b34801561032557600080fd5b5061032e6109bf565b60405161033b9190612910565b60405180910390f35b34801561035057600080fd5b506103596109e5565b6040516103669190612893565b60405180910390f35b34801561037b57600080fd5b50610384610a2b565b6040516103919190612947565b60405180910390f35b3480156103a657600080fd5b506103c160048036038101906103bc9190612758565b610a42565b6040516103ce91906127b3565b60405180910390f35b3480156103e357600080fd5b506103fe60048036038101906103f99190612962565b610af5565b60405161040b91906127b3565b60405180910390f35b34801561042057600080fd5b50610429610b15565b6040516104369190612893565b60405180910390f35b34801561044b57600080fd5b50610454610b1d565b6040516104619190612893565b60405180910390f35b34801561047657600080fd5b5061047f610b23565b60405161048c9190612893565b60405180910390f35b3480156104a157600080fd5b506104bc60048036038101906104b79190612962565b610b29565b6040516104c99190612893565b60405180910390f35b3480156104de57600080fd5b506104e7610b72565b6040516104f49190612910565b60405180910390f35b34801561050957600080fd5b50610512610b9b565b005b34801561052057600080fd5b50610529610cee565b604051610536919061269d565b60405180910390f35b34801561054b57600080fd5b50610554610d80565b6040516105619190612893565b60405180910390f35b34801561057657600080fd5b50610591600480360381019061058c9190612758565b610d86565b60405161059e91906127b3565b60405180910390f35b3480156105b357600080fd5b506105bc610e53565b6040516105c99190612893565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f49190612758565b610e59565b60405161060691906127b3565b60405180910390f35b34801561061b57600080fd5b50610624610e78565b6040516106319190612910565b60405180910390f35b34801561064657600080fd5b5061064f610e9c565b60405161065c9190612893565b60405180910390f35b34801561067157600080fd5b5061067a610ea2565b6040516106879190612910565b60405180910390f35b34801561069c57600080fd5b506106a5610ec8565b6040516106b291906127ef565b60405180910390f35b3480156106c757600080fd5b506106e260048036038101906106dd9190612962565b610eee565b6040516106ef9190612910565b60405180910390f35b34801561070457600080fd5b5061070d6113b4565b60405161071a91906127b3565b60405180910390f35b34801561072f57600080fd5b5061074a6004803603810190610745919061298f565b6113c7565b6040516107579190612893565b60405180910390f35b34801561076c57600080fd5b5061077561144e565b60405161078291906127b3565b60405180910390f35b34801561079757600080fd5b506107b260048036038101906107ad9190612962565b611461565b005b3480156107c057600080fd5b506107c9611622565b6040516107d69190612893565b60405180910390f35b6060600180546107ee906129fe565b80601f016020809104026020016040519081016040528092919081815260200182805461081a906129fe565b80156108675780601f1061083c57610100808354040283529160200191610867565b820191906000526020600020905b81548152906001019060200180831161084a57829003601f168201915b5050505050905090565b600061088561087e611628565b8484611630565b6001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601054905090565b60006108f28484846117f9565b506109b4846108ff611628565b6109af8560405180606001604052806028815260200161328b60289139600760008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610965611628565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b611630565b600190509392505050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610a26610a15600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b29565b601054611c5490919063ffffffff16565b905090565b6000600360009054906101000a900460ff16905090565b6000610aeb610a4f611628565b84610ae68560076000610a60611628565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b611630565b6001905092915050565b60096020528060005260406000206000915054906101000a900460ff1681565b600042905090565b600a5481565b600b5481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ba3611628565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2790612a7b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b606060028054610cfd906129fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610d29906129fe565b8015610d765780601f10610d4b57610100808354040283529160200191610d76565b820191906000526020600020905b815481529060010190602001808311610d5957829003601f168201915b5050505050905090565b600d5481565b6000610e49610d93611628565b84610e44856040518060600160405280602581526020016132b36025913960076000610dbd611628565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b611630565b6001905092915050565b600c5481565b6000610e6d610e66611628565b84846117f9565b506001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e5481565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610ef8611628565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7c90612a7b565b60405180910390fd5b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ff7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101b9190612ab0565b73ffffffffffffffffffffffffffffffffffffffff1663e6a43905308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611082573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a69190612ab0565b6040518363ffffffff1660e01b81526004016110c3929190612add565b602060405180830381865afa1580156110e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111049190612ab0565b9150600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611297578073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611185573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a99190612ab0565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611210573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112349190612ab0565b6040518363ffffffff1660e01b8152600401611251929190612add565b6020604051808303816000875af1158015611270573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112949190612ab0565b91505b81601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601360166101000a81548160ff021916908315150217905550600160096000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050919050565b601360149054906101000a900460ff1681565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601360169054906101000a900460ff1681565b611469611628565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ed90612a7b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155c90612b78565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600f5481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361169f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169690612c0a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361170e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170590612c9c565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117ec9190612893565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611869576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186090612d2e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118cf90612dc0565b60405180910390fd5b6000821161191b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191290612e52565b60405180910390fd5b601360159054906101000a900460ff16156119425761193b848484611cfc565b9050611be9565b600061194d30610b29565b9050600060115482101590508080156119735750601360159054906101000a900460ff16155b80156119c95750600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156119e15750601360169054906101000a900460ff165b15611a0c57601360149054906101000a900460ff1615611a015760115491505b611a0b8287611ecf565b5b611a95846040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000611ae5878787611fa8565b9050611b3981600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611bd99190612893565b60405180910390a3600193505050505b9392505050565b6000838311158290611c38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2f919061269d565b60405180910390fd5b5060008385611c479190612ea1565b9050809150509392505050565b6000611c9683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611bf0565b905092915050565b6000808284611cad9190612ed5565b905083811015611cf2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ce990612f55565b60405180910390fd5b8091505092915050565b6000611d87826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e1c82600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611ebc9190612893565b60405180910390a3600190509392505050565b6001601360156101000a81548160ff0219169083151502179055506000611f286002611f1a600d54611f0c600a54886121cf90919063ffffffff16565b61224990919063ffffffff16565b61224990919063ffffffff16565b90506000611f3f8285611c5490919063ffffffff16565b9050611f4b8184612293565b60004790506000811115611f8657611f85600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff168261255f565b5b5050506000601360156101000a81548160ff0219169083151502179055505050565b60008060009050600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561203057612029606461201b600e54866121cf90919063ffffffff16565b61224990919063ffffffff16565b90506120ae565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156120ad576120aa606461209c600f54866121cf90919063ffffffff16565b61224990919063ffffffff16565b90505b5b60008111156121b25761210981600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516121a99190612893565b60405180910390a35b6121c58184611c5490919063ffffffff16565b9150509392505050565b60008083036121e15760009050612243565b600082846121ef9190612f75565b90508284826121fe9190612fe6565b1461223e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223590613089565b60405180910390fd5b809150505b92915050565b600061228b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125aa565b905092915050565b6000600367ffffffffffffffff8111156122b0576122af6130a9565b5b6040519080825280602002602001820160405280156122de5781602001602082028036833780820191505090505b50905030816000815181106122f6576122f56130d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508181600181518110612345576123446130d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124109190612ab0565b81600281518110612424576124236130d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061248b30601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685611630565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b81526004016124ef959493929190613200565b600060405180830381600087803b15801561250957600080fd5b505af115801561251d573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a7838260405161255292919061325a565b60405180910390a1505050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156125a5573d6000803e3d6000fd5b505050565b600080831182906125f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e8919061269d565b60405180910390fd5b50600083856126009190612fe6565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561264757808201518184015260208101905061262c565b60008484015250505050565b6000601f19601f8301169050919050565b600061266f8261260d565b6126798185612618565b9350612689818560208601612629565b61269281612653565b840191505092915050565b600060208201905081810360008301526126b78184612664565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006126ef826126c4565b9050919050565b6126ff816126e4565b811461270a57600080fd5b50565b60008135905061271c816126f6565b92915050565b6000819050919050565b61273581612722565b811461274057600080fd5b50565b6000813590506127528161272c565b92915050565b6000806040838503121561276f5761276e6126bf565b5b600061277d8582860161270d565b925050602061278e85828601612743565b9150509250929050565b60008115159050919050565b6127ad81612798565b82525050565b60006020820190506127c860008301846127a4565b92915050565b60006127d9826126c4565b9050919050565b6127e9816127ce565b82525050565b600060208201905061280460008301846127e0565b92915050565b6000819050919050565b600061282f61282a612825846126c4565b61280a565b6126c4565b9050919050565b600061284182612814565b9050919050565b600061285382612836565b9050919050565b61286381612848565b82525050565b600060208201905061287e600083018461285a565b92915050565b61288d81612722565b82525050565b60006020820190506128a86000830184612884565b92915050565b6000806000606084860312156128c7576128c66126bf565b5b60006128d58682870161270d565b93505060206128e68682870161270d565b92505060406128f786828701612743565b9150509250925092565b61290a816126e4565b82525050565b60006020820190506129256000830184612901565b92915050565b600060ff82169050919050565b6129418161292b565b82525050565b600060208201905061295c6000830184612938565b92915050565b600060208284031215612978576129776126bf565b5b60006129868482850161270d565b91505092915050565b600080604083850312156129a6576129a56126bf565b5b60006129b48582860161270d565b92505060206129c58582860161270d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612a1657607f821691505b602082108103612a2957612a286129cf565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612a65602083612618565b9150612a7082612a2f565b602082019050919050565b60006020820190508181036000830152612a9481612a58565b9050919050565b600081519050612aaa816126f6565b92915050565b600060208284031215612ac657612ac56126bf565b5b6000612ad484828501612a9b565b91505092915050565b6000604082019050612af26000830185612901565b612aff6020830184612901565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612b62602683612618565b9150612b6d82612b06565b604082019050919050565b60006020820190508181036000830152612b9181612b55565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612bf4602483612618565b9150612bff82612b98565b604082019050919050565b60006020820190508181036000830152612c2381612be7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612c86602283612618565b9150612c9182612c2a565b604082019050919050565b60006020820190508181036000830152612cb581612c79565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612d18602583612618565b9150612d2382612cbc565b604082019050919050565b60006020820190508181036000830152612d4781612d0b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612daa602383612618565b9150612db582612d4e565b604082019050919050565b60006020820190508181036000830152612dd981612d9d565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612e3c602983612618565b9150612e4782612de0565b604082019050919050565b60006020820190508181036000830152612e6b81612e2f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612eac82612722565b9150612eb783612722565b9250828203905081811115612ecf57612ece612e72565b5b92915050565b6000612ee082612722565b9150612eeb83612722565b9250828201905080821115612f0357612f02612e72565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612f3f601b83612618565b9150612f4a82612f09565b602082019050919050565b60006020820190508181036000830152612f6e81612f32565b9050919050565b6000612f8082612722565b9150612f8b83612722565b9250828202612f9981612722565b91508282048414831517612fb057612faf612e72565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612ff182612722565b9150612ffc83612722565b92508261300c5761300b612fb7565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613073602183612618565b915061307e82613017565b604082019050919050565b600060208201905081810360008301526130a281613066565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600061312c61312761312284613107565b61280a565b612722565b9050919050565b61313c81613111565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613177816126e4565b82525050565b6000613189838361316e565b60208301905092915050565b6000602082019050919050565b60006131ad82613142565b6131b7818561314d565b93506131c28361315e565b8060005b838110156131f35781516131da888261317d565b97506131e583613195565b9250506001810190506131c6565b5085935050505092915050565b600060a0820190506132156000830188612884565b6132226020830187613133565b818103604083015261323481866131a2565b90506132436060830185612901565b6132506080830184612884565b9695505050505050565b600060408201905061326f6000830185612884565b818103602083015261328181846131a2565b9050939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f9e1c907b72e4a88febd4c0d68b568ae808e6655309dca439e36391e6c6b394c64736f6c634300081200330000000000000000000000000000000000000000000000000000000029209080000000000000000000000000af12e4fa0cdd09ad9c49cf6cb66f228187fee281
Deployed Bytecode
0x6080604052600436106101e75760003560e01c8063914eb66a11610102578063c816841b11610095578063dd62ed3e11610064578063dd62ed3e14610723578063f039c69f14610760578063f2fde38b1461078b578063f9323a32146107b4576101ee565b8063c816841b14610665578063d158272d14610690578063d59c58be146106bb578063da00097d146106f8576101ee565b8063a83f53a7116100d1578063a83f53a7146105a7578063a9059cbb146105d2578063b2bdfa7b1461060f578063b45a38641461063a576101ee565b8063914eb66a146104fd57806395d89b4114610514578063a08e671f1461053f578063a457c2d71461056a576101ee565b8063313ce5671161017a57806357a5802f1161014957806357a5802f1461043f57806361a23c691461046a57806370a08231146104955780638da5cb5b146104d2576101ee565b8063313ce5671461036f578063395093511461039a5780633ecad271146103d7578063557ed1ba14610414576101ee565b806318160ddd116101b657806318160ddd146102b157806323b872dd146102dc57806327c8f835146103195780632b112e4914610344576101ee565b806306fdde03146101f3578063095ea7b31461021e5780631245e3471461025b5780631694505e14610286576101ee565b366101ee57005b600080fd5b3480156101ff57600080fd5b506102086107df565b604051610215919061269d565b60405180910390f35b34801561022a57600080fd5b5061024560048036038101906102409190612758565b610871565b60405161025291906127b3565b60405180910390f35b34801561026757600080fd5b5061027061088f565b60405161027d91906127ef565b60405180910390f35b34801561029257600080fd5b5061029b6108b5565b6040516102a89190612869565b60405180910390f35b3480156102bd57600080fd5b506102c66108db565b6040516102d39190612893565b60405180910390f35b3480156102e857600080fd5b5061030360048036038101906102fe91906128ae565b6108e5565b60405161031091906127b3565b60405180910390f35b34801561032557600080fd5b5061032e6109bf565b60405161033b9190612910565b60405180910390f35b34801561035057600080fd5b506103596109e5565b6040516103669190612893565b60405180910390f35b34801561037b57600080fd5b50610384610a2b565b6040516103919190612947565b60405180910390f35b3480156103a657600080fd5b506103c160048036038101906103bc9190612758565b610a42565b6040516103ce91906127b3565b60405180910390f35b3480156103e357600080fd5b506103fe60048036038101906103f99190612962565b610af5565b60405161040b91906127b3565b60405180910390f35b34801561042057600080fd5b50610429610b15565b6040516104369190612893565b60405180910390f35b34801561044b57600080fd5b50610454610b1d565b6040516104619190612893565b60405180910390f35b34801561047657600080fd5b5061047f610b23565b60405161048c9190612893565b60405180910390f35b3480156104a157600080fd5b506104bc60048036038101906104b79190612962565b610b29565b6040516104c99190612893565b60405180910390f35b3480156104de57600080fd5b506104e7610b72565b6040516104f49190612910565b60405180910390f35b34801561050957600080fd5b50610512610b9b565b005b34801561052057600080fd5b50610529610cee565b604051610536919061269d565b60405180910390f35b34801561054b57600080fd5b50610554610d80565b6040516105619190612893565b60405180910390f35b34801561057657600080fd5b50610591600480360381019061058c9190612758565b610d86565b60405161059e91906127b3565b60405180910390f35b3480156105b357600080fd5b506105bc610e53565b6040516105c99190612893565b60405180910390f35b3480156105de57600080fd5b506105f960048036038101906105f49190612758565b610e59565b60405161060691906127b3565b60405180910390f35b34801561061b57600080fd5b50610624610e78565b6040516106319190612910565b60405180910390f35b34801561064657600080fd5b5061064f610e9c565b60405161065c9190612893565b60405180910390f35b34801561067157600080fd5b5061067a610ea2565b6040516106879190612910565b60405180910390f35b34801561069c57600080fd5b506106a5610ec8565b6040516106b291906127ef565b60405180910390f35b3480156106c757600080fd5b506106e260048036038101906106dd9190612962565b610eee565b6040516106ef9190612910565b60405180910390f35b34801561070457600080fd5b5061070d6113b4565b60405161071a91906127b3565b60405180910390f35b34801561072f57600080fd5b5061074a6004803603810190610745919061298f565b6113c7565b6040516107579190612893565b60405180910390f35b34801561076c57600080fd5b5061077561144e565b60405161078291906127b3565b60405180910390f35b34801561079757600080fd5b506107b260048036038101906107ad9190612962565b611461565b005b3480156107c057600080fd5b506107c9611622565b6040516107d69190612893565b60405180910390f35b6060600180546107ee906129fe565b80601f016020809104026020016040519081016040528092919081815260200182805461081a906129fe565b80156108675780601f1061083c57610100808354040283529160200191610867565b820191906000526020600020905b81548152906001019060200180831161084a57829003601f168201915b5050505050905090565b600061088561087e611628565b8484611630565b6001905092915050565b600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000601054905090565b60006108f28484846117f9565b506109b4846108ff611628565b6109af8560405180606001604052806028815260200161328b60289139600760008b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610965611628565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b611630565b600190509392505050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610a26610a15600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16610b29565b601054611c5490919063ffffffff16565b905090565b6000600360009054906101000a900460ff16905090565b6000610aeb610a4f611628565b84610ae68560076000610a60611628565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b611630565b6001905092915050565b60096020528060005260406000206000915054906101000a900460ff1681565b600042905090565b600a5481565b600b5481565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b610ba3611628565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610c30576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2790612a7b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a360008060006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b606060028054610cfd906129fe565b80601f0160208091040260200160405190810160405280929190818152602001828054610d29906129fe565b8015610d765780601f10610d4b57610100808354040283529160200191610d76565b820191906000526020600020905b815481529060010190602001808311610d5957829003601f168201915b5050505050905090565b600d5481565b6000610e49610d93611628565b84610e44856040518060600160405280602581526020016132b36025913960076000610dbd611628565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b611630565b6001905092915050565b600c5481565b6000610e6d610e66611628565b84846117f9565b506001905092915050565b60008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600e5481565b601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b6000610ef8611628565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614610f85576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f7c90612a7b565b60405180910390fd5b6000601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1690508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ff7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061101b9190612ab0565b73ffffffffffffffffffffffffffffffffffffffff1663e6a43905308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611082573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110a69190612ab0565b6040518363ffffffff1660e01b81526004016110c3929190612add565b602060405180830381865afa1580156110e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111049190612ab0565b9150600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611297578073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015611185573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a99190612ab0565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015611210573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112349190612ab0565b6040518363ffffffff1660e01b8152600401611251929190612add565b6020604051808303816000875af1158015611270573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112949190612ab0565b91505b81601360006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555082601260006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506001601360166101000a81548160ff021916908315150217905550600160096000601360009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555050919050565b601360149054906101000a900460ff1681565b6000600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b601360169054906101000a900460ff1681565b611469611628565b73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16146114f6576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114ed90612a7b565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603611565576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161155c90612b78565b60405180910390fd5b8073ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a3806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b600f5481565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361169f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161169690612c0a565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361170e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161170590612c9c565b60405180910390fd5b80600760008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925836040516117ec9190612893565b60405180910390a3505050565b60008073ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff1603611869576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161186090612d2e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036118d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016118cf90612dc0565b60405180910390fd5b6000821161191b576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161191290612e52565b60405180910390fd5b601360159054906101000a900460ff16156119425761193b848484611cfc565b9050611be9565b600061194d30610b29565b9050600060115482101590508080156119735750601360159054906101000a900460ff16155b80156119c95750600960008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16155b80156119e15750601360169054906101000a900460ff165b15611a0c57601360149054906101000a900460ff1615611a015760115491505b611a0b8287611ecf565b5b611a95846040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008a73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055506000611ae5878787611fa8565b9050611b3981600660008973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051611bd99190612893565b60405180910390a3600193505050505b9392505050565b6000838311158290611c38576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611c2f919061269d565b60405180910390fd5b5060008385611c479190612ea1565b9050809150509392505050565b6000611c9683836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250611bf0565b905092915050565b6000808284611cad9190612ed5565b905083811015611cf2576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611ce990612f55565b60405180910390fd5b8091505092915050565b6000611d87826040518060400160405280601481526020017f496e73756666696369656e742042616c616e6365000000000000000000000000815250600660008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611bf09092919063ffffffff16565b600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611e1c82600660008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051611ebc9190612893565b60405180910390a3600190509392505050565b6001601360156101000a81548160ff0219169083151502179055506000611f286002611f1a600d54611f0c600a54886121cf90919063ffffffff16565b61224990919063ffffffff16565b61224990919063ffffffff16565b90506000611f3f8285611c5490919063ffffffff16565b9050611f4b8184612293565b60004790506000811115611f8657611f85600360019054906101000a900473ffffffffffffffffffffffffffffffffffffffff168261255f565b5b5050506000601360156101000a81548160ff0219169083151502179055505050565b60008060009050600960008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff161561203057612029606461201b600e54866121cf90919063ffffffff16565b61224990919063ffffffff16565b90506120ae565b600960008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff16156120ad576120aa606461209c600f54866121cf90919063ffffffff16565b61224990919063ffffffff16565b90505b5b60008111156121b25761210981600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054611c9e90919063ffffffff16565b600660003073ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503073ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516121a99190612893565b60405180910390a35b6121c58184611c5490919063ffffffff16565b9150509392505050565b60008083036121e15760009050612243565b600082846121ef9190612f75565b90508284826121fe9190612fe6565b1461223e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161223590613089565b60405180910390fd5b809150505b92915050565b600061228b83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506125aa565b905092915050565b6000600367ffffffffffffffff8111156122b0576122af6130a9565b5b6040519080825280602002602001820160405280156122de5781602001602082028036833780820191505090505b50905030816000815181106122f6576122f56130d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff16815250508181600181518110612345576123446130d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff1681525050601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123ec573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124109190612ab0565b81600281518110612424576124236130d8565b5b602002602001019073ffffffffffffffffffffffffffffffffffffffff16908173ffffffffffffffffffffffffffffffffffffffff168152505061248b30601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1685611630565b601260009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663791ac9478460008430426040518663ffffffff1660e01b81526004016124ef959493929190613200565b600060405180830381600087803b15801561250957600080fd5b505af115801561251d573d6000803e3d6000fd5b505050507f32cde87eb454f3a0b875ab23547023107cfad454363ec88ba5695e2c24aa52a7838260405161255292919061325a565b60405180910390a1505050565b8173ffffffffffffffffffffffffffffffffffffffff166108fc829081150290604051600060405180830381858888f193505050501580156125a5573d6000803e3d6000fd5b505050565b600080831182906125f1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016125e8919061269d565b60405180910390fd5b50600083856126009190612fe6565b9050809150509392505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561264757808201518184015260208101905061262c565b60008484015250505050565b6000601f19601f8301169050919050565b600061266f8261260d565b6126798185612618565b9350612689818560208601612629565b61269281612653565b840191505092915050565b600060208201905081810360008301526126b78184612664565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006126ef826126c4565b9050919050565b6126ff816126e4565b811461270a57600080fd5b50565b60008135905061271c816126f6565b92915050565b6000819050919050565b61273581612722565b811461274057600080fd5b50565b6000813590506127528161272c565b92915050565b6000806040838503121561276f5761276e6126bf565b5b600061277d8582860161270d565b925050602061278e85828601612743565b9150509250929050565b60008115159050919050565b6127ad81612798565b82525050565b60006020820190506127c860008301846127a4565b92915050565b60006127d9826126c4565b9050919050565b6127e9816127ce565b82525050565b600060208201905061280460008301846127e0565b92915050565b6000819050919050565b600061282f61282a612825846126c4565b61280a565b6126c4565b9050919050565b600061284182612814565b9050919050565b600061285382612836565b9050919050565b61286381612848565b82525050565b600060208201905061287e600083018461285a565b92915050565b61288d81612722565b82525050565b60006020820190506128a86000830184612884565b92915050565b6000806000606084860312156128c7576128c66126bf565b5b60006128d58682870161270d565b93505060206128e68682870161270d565b92505060406128f786828701612743565b9150509250925092565b61290a816126e4565b82525050565b60006020820190506129256000830184612901565b92915050565b600060ff82169050919050565b6129418161292b565b82525050565b600060208201905061295c6000830184612938565b92915050565b600060208284031215612978576129776126bf565b5b60006129868482850161270d565b91505092915050565b600080604083850312156129a6576129a56126bf565b5b60006129b48582860161270d565b92505060206129c58582860161270d565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680612a1657607f821691505b602082108103612a2957612a286129cf565b5b50919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572600082015250565b6000612a65602083612618565b9150612a7082612a2f565b602082019050919050565b60006020820190508181036000830152612a9481612a58565b9050919050565b600081519050612aaa816126f6565b92915050565b600060208284031215612ac657612ac56126bf565b5b6000612ad484828501612a9b565b91505092915050565b6000604082019050612af26000830185612901565b612aff6020830184612901565b9392505050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160008201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b6000612b62602683612618565b9150612b6d82612b06565b604082019050919050565b60006020820190508181036000830152612b9181612b55565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f2061646460008201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b6000612bf4602483612618565b9150612bff82612b98565b604082019050919050565b60006020820190508181036000830152612c2381612be7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b6000612c86602283612618565b9150612c9182612c2a565b604082019050919050565b60006020820190508181036000830152612cb581612c79565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f20616460008201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b6000612d18602583612618565b9150612d2382612cbc565b604082019050919050565b60006020820190508181036000830152612d4781612d0b565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b6000612daa602383612618565b9150612db582612d4e565b604082019050919050565b60006020820190508181036000830152612dd981612d9d565b9050919050565b7f5472616e7366657220616d6f756e74206d75737420626520677265617465722060008201527f7468616e207a65726f0000000000000000000000000000000000000000000000602082015250565b6000612e3c602983612618565b9150612e4782612de0565b604082019050919050565b60006020820190508181036000830152612e6b81612e2f565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000612eac82612722565b9150612eb783612722565b9250828203905081811115612ecf57612ece612e72565b5b92915050565b6000612ee082612722565b9150612eeb83612722565b9250828201905080821115612f0357612f02612e72565b5b92915050565b7f536166654d6174683a206164646974696f6e206f766572666c6f770000000000600082015250565b6000612f3f601b83612618565b9150612f4a82612f09565b602082019050919050565b60006020820190508181036000830152612f6e81612f32565b9050919050565b6000612f8082612722565b9150612f8b83612722565b9250828202612f9981612722565b91508282048414831517612fb057612faf612e72565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601260045260246000fd5b6000612ff182612722565b9150612ffc83612722565b92508261300c5761300b612fb7565b5b828204905092915050565b7f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f60008201527f7700000000000000000000000000000000000000000000000000000000000000602082015250565b6000613073602183612618565b915061307e82613017565b604082019050919050565b600060208201905081810360008301526130a281613066565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b600061312c61312761312284613107565b61280a565b612722565b9050919050565b61313c81613111565b82525050565b600081519050919050565b600082825260208201905092915050565b6000819050602082019050919050565b613177816126e4565b82525050565b6000613189838361316e565b60208301905092915050565b6000602082019050919050565b60006131ad82613142565b6131b7818561314d565b93506131c28361315e565b8060005b838110156131f35781516131da888261317d565b97506131e583613195565b9250506001810190506131c6565b5085935050505092915050565b600060a0820190506132156000830188612884565b6132226020830187613133565b818103604083015261323481866131a2565b90506132436060830185612901565b6132506080830184612884565b9695505050505050565b600060408201905061326f6000830185612884565b818103602083015261328181846131a2565b9050939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220f9e1c907b72e4a88febd4c0d68b568ae808e6655309dca439e36391e6c6b394c64736f6c63430008120033
Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)
0000000000000000000000000000000000000000000000000000000029209080000000000000000000000000af12e4fa0cdd09ad9c49cf6cb66f228187fee281
-----Decoded View---------------
Arg [0] : supply (uint256): 690000000
Arg [1] : owner (address): 0xaf12E4fa0Cdd09ad9c49CF6cb66f228187FeE281
-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000029209080
Arg [1] : 000000000000000000000000af12e4fa0cdd09ad9c49cf6cb66f228187fee281
Deployed Bytecode Sourcemap
14159:11536:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16930:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18084:161;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14579:94;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15486:41;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17198:91;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19943:315;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14680:71;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18600:128;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17107:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17575:218;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15103:45;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6200:90;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15157:34;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15198;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17297:119;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5585:75;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5795:145;;;;;;;;;;;;;:::i;:::-;;17021:78;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15275:43;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17801:275;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15239:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;18970:167;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5461:21;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15327:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15534;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;14473:99;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;19145:790;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15567:37;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17424:143;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;15639:29;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;5948:244;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;15360:27;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;16930:83;16967:13;17000:5;16993:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;16930:83;:::o;18084:161::-;18159:4;18176:39;18185:12;:10;:12::i;:::-;18199:7;18208:6;18176:8;:39::i;:::-;18233:4;18226:11;;18084:161;;;;:::o;14579:94::-;;;;;;;;;;;;;:::o;15486:41::-;;;;;;;;;;;;;:::o;17198:91::-;17251:7;17269:12;;17262:19;;17198:91;:::o;19943:315::-;20041:4;20058:36;20068:6;20076:9;20087:6;20058:9;:36::i;:::-;;20105:131;20114:6;20122:12;:10;:12::i;:::-;20146:89;20184:6;20146:89;;;;;;;;;;;;;;;;;:11;:19;20158:6;20146:19;;;;;;;;;;;;;;;:33;20166:12;:10;:12::i;:::-;20146:33;;;;;;;;;;;;;;;;:37;;:89;;;;;:::i;:::-;20105:8;:131::i;:::-;20246:4;20239:11;;19943:315;;;;;:::o;14680:71::-;;;;;;;;;;;;;:::o;18600:128::-;18653:7;18680:40;18697:22;18707:11;;;;;;;;;;;18697:9;:22::i;:::-;18680:12;;:16;;:40;;;;:::i;:::-;18673:47;;18600:128;:::o;17107:83::-;17148:5;17173:9;;;;;;;;;;;17166:16;;17107:83;:::o;17575:218::-;17663:4;17680:83;17689:12;:10;:12::i;:::-;17703:7;17712:50;17751:10;17712:11;:25;17724:12;:10;:12::i;:::-;17712:25;;;;;;;;;;;;;;;:34;17738:7;17712:34;;;;;;;;;;;;;;;;:38;;:50;;;;:::i;:::-;17680:8;:83::i;:::-;17781:4;17774:11;;17575:218;;;;:::o;15103:45::-;;;;;;;;;;;;;;;;;;;;;;:::o;6200:90::-;6240:7;6267:15;6260:22;;6200:90;:::o;15157:34::-;;;;:::o;15198:::-;;;;:::o;17297:119::-;17363:7;17390:9;:18;17400:7;17390:18;;;;;;;;;;;;;;;;17383:25;;17297:119;;;:::o;5585:75::-;5623:7;5650:6;;;;;;;;;;;5643:13;;5585:75;:::o;5795:145::-;5718:12;:10;:12::i;:::-;5708:22;;:6;;;;;;;;;;:22;;;5700:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;5899:1:::1;5862:40;;5883:6;::::0;::::1;;;;;;;;5862:40;;;;;;;;;;;;5930:1;5913:6:::0;::::1;:19;;;;;;;;;;;;;;;;;;5795:145::o:0;17021:78::-;17060:13;17084:7;17077:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17021:78;:::o;15275:43::-;;;;:::o;17801:275::-;17900:4;17917:129;17926:12;:10;:12::i;:::-;17940:7;17949:96;17988:15;17949:96;;;;;;;;;;;;;;;;;:11;:25;17961:12;:10;:12::i;:::-;17949:25;;;;;;;;;;;;;;;:34;17975:7;17949:34;;;;;;;;;;;;;;;;:38;;:96;;;;;:::i;:::-;17917:8;:129::i;:::-;18064:4;18057:11;;17801:275;;;;:::o;15239:29::-;;;;:::o;18970:167::-;19048:4;19065:42;19075:12;:10;:12::i;:::-;19089:9;19100:6;19065:9;:42::i;:::-;;19125:4;19118:11;;18970:167;;;;:::o;5461:21::-;;;;;;;;;;;;:::o;15327:26::-;;;;:::o;15534:::-;;;;;;;;;;;;;:::o;14473:99::-;;;;;;;;;;;;;:::o;19145:790::-;19216:22;5718:12;:10;:12::i;:::-;5708:22;;:6;;;;;;;;;;:22;;;5700:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;19253:35:::1;19310:15;;;;;;;;;;;19253:73;;19374:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19356:53;;;19418:4;19425:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19356:93;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19339:110;;19491:1;19465:28;;:14;:28;;::::0;19462:225:::1;;19579:16;:24;;;:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19561:74;;;19644:4;19651:16;:21;;;:23;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19561:114;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;19544:131;;19462:225;19713:14;19699:11;;:28;;;;;;;;;;;;;;;;;;19798:16;19761:15;;:54;;;;;;;;;;;;;;;;;;19871:4;19851:17;;:24;;;;;;;;;;;;;;;;;;19923:4;19886:12;:34;19907:11;;;;;;;;;;;19886:34;;;;;;;;;;;;;;;;:41;;;;;;;;;;;;;;;;;;19240:695;19145:790:::0;;;:::o;15567:37::-;;;;;;;;;;;;;:::o;17424:143::-;17505:7;17532:11;:18;17544:5;17532:18;;;;;;;;;;;;;;;:27;17551:7;17532:27;;;;;;;;;;;;;;;;17525:34;;17424:143;;;;:::o;15639:29::-;;;;;;;;;;;;;:::o;5948:244::-;5718:12;:10;:12::i;:::-;5708:22;;:6;;;;;;;;;;:22;;;5700:67;;;;;;;;;;;;:::i;:::-;;;;;;;;;6057:1:::1;6037:22;;:8;:22;;::::0;6029:73:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;6147:8;6118:38;;6139:6;::::0;::::1;;;;;;;;6118:38;;;;;;;;;;;;6176:8;6167:6;::::0;:17:::1;;;;;;;;;;;;;;;;;;5948:244:::0;:::o;15360:27::-;;;;:::o;103:115::-;156:15;199:10;184:26;;103:115;:::o;18253:337::-;18363:1;18346:19;;:5;:19;;;18338:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18444:1;18425:21;;:7;:21;;;18417:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;18528:6;18498:11;:18;18510:5;18498:18;;;;;;;;;;;;;;;:27;18517:7;18498:27;;;;;;;;;;;;;;;:36;;;;18566:7;18550:32;;18559:5;18550:32;;;18575:6;18550:32;;;;;;:::i;:::-;;;;;;;;18253:337;;;:::o;20266:1318::-;20353:4;20398:1;20380:20;;:6;:20;;;20372:70;;;;;;;;;;;;:::i;:::-;;;;;;;;;20482:1;20461:23;;:9;:23;;;20453:71;;;;;;;;;;;;:::i;:::-;;;;;;;;;20552:1;20543:6;:10;20535:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;20613:16;;;;;;;;;;;20610:967;;;20662:41;20677:6;20685:9;20696:6;20662:14;:41::i;:::-;20655:48;;;;20610:967;20756:28;20787:24;20805:4;20787:9;:24::i;:::-;20756:55;;20826:28;20881:24;;20857:20;:48;;20826:79;;20926:23;:44;;;;;20954:16;;;;;;;;;;;20953:17;20926:44;:69;;;;;20975:12;:20;20988:6;20975:20;;;;;;;;;;;;;;;;;;;;;;;;;20974:21;20926:69;:90;;;;;20999:17;;;;;;;;;;;20926:90;20922:324;;;21053:25;;;;;;;;;;;21050:119;;;21125:24;;21102:47;;21050:119;21187:43;21202:20;21223:6;21187:14;:43::i;:::-;20922:324;21282:53;21304:6;21282:53;;;;;;;;;;;;;;;;;:9;:17;21292:6;21282:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;21262:9;:17;21272:6;21262:17;;;;;;;;;;;;;;;:73;;;;21352:19;21374:34;21382:6;21390:9;21401:6;21374:7;:34::i;:::-;21352:56;;21448:37;21473:11;21448:9;:20;21458:9;21448:20;;;;;;;;;;;;;;;;:24;;:37;;;;:::i;:::-;21425:9;:20;21435:9;21425:20;;;;;;;;;;;;;;;:60;;;;21524:9;21507:40;;21516:6;21507:40;;;21535:11;21507:40;;;;;;:::i;:::-;;;;;;;;21569:4;21562:11;;;;;20266:1318;;;;;;:::o;1525:192::-;1611:7;1644:1;1639;:6;;1647:12;1631:29;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;1671:9;1687:1;1683;:5;;;;:::i;:::-;1671:17;;1708:1;1701:8;;;1525:192;;;;;:::o;1381:136::-;1439:7;1466:43;1470:1;1473;1466:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1459:50;;1381:136;;;;:::o;1192:181::-;1250:7;1270:9;1286:1;1282;:5;;;;:::i;:::-;1270:17;;1311:1;1306;:6;;1298:46;;;;;;;;;;;;:::i;:::-;;;;;;;;;1364:1;1357:8;;;1192:181;;;;:::o;21592:330::-;21685:4;21722:53;21744:6;21722:53;;;;;;;;;;;;;;;;;:9;:17;21732:6;21722:17;;;;;;;;;;;;;;;;:21;;:53;;;;;:::i;:::-;21702:9;:17;21712:6;21702:17;;;;;;;;;;;;;;;:73;;;;21809:32;21834:6;21809:9;:20;21819:9;21809:20;;;;;;;;;;;;;;;;:24;;:32;;;;:::i;:::-;21786:9;:20;21796:9;21786:20;;;;;;;;;;;;;;;:55;;;;21874:9;21857:35;;21866:6;21857:35;;;21885:6;21857:35;;;;;;:::i;:::-;;;;;;;;21910:4;21903:11;;21592:330;;;;;:::o;21930:472::-;16087:4;16068:16;;:23;;;;;;;;;;;;;;;;;;22017:19:::1;22039:65;22102:1;22039:58;22072:24;;22039:28;22051:15;;22039:7;:11;;:28;;;;:::i;:::-;:32;;:58;;;;:::i;:::-;:62;;:65;;;;:::i;:::-;22017:87;;22115:21;22139:24;22151:11;22139:7;:11;;:24;;;;:::i;:::-;22115:48;;22176:36;22193:13;22207:4;22176:16;:36::i;:::-;22223:22;22248:21;22223:46;;22302:1;22285:14;:18;22282:109;;;22319:60;22340:22;;;;;;;;;;;22364:14;22319:20;:60::i;:::-;22282:109;22004:398;;;16133:5:::0;16114:16;;:24;;;;;;;;;;;;;;;;;;21930:472;;:::o;23627:576::-;23713:7;23735:17;23755:1;23735:21;;23770:12;:20;23783:6;23770:20;;;;;;;;;;;;;;;;;;;;;;;;;23767:203;;;23819:28;23843:3;23819:19;23830:7;;23819:6;:10;;:19;;;;:::i;:::-;:23;;:28;;;;:::i;:::-;23807:40;;23767:203;;;23877:12;:23;23890:9;23877:23;;;;;;;;;;;;;;;;;;;;;;;;;23874:96;;;23929:29;23954:3;23929:20;23940:8;;23929:6;:10;;:20;;;;:::i;:::-;:24;;:29;;;;:::i;:::-;23917:41;;23874:96;23767:203;23997:1;23985:9;:13;23982:173;;;24042:39;24071:9;24042;:24;24060:4;24042:24;;;;;;;;;;;;;;;;:28;;:39;;;;:::i;:::-;24015:9;:24;24033:4;24015:24;;;;;;;;;;;;;;;:66;;;;24126:4;24101:42;;24110:6;24101:42;;;24133:9;24101:42;;;;;;:::i;:::-;;;;;;;;23982:173;24174:21;24185:9;24174:6;:10;;:21;;;;:::i;:::-;24167:28;;;23627:576;;;;;:::o;1725:250::-;1783:7;1812:1;1807;:6;1803:47;;1837:1;1830:8;;;;1803:47;1862:9;1878:1;1874;:5;;;;:::i;:::-;1862:17;;1907:1;1902;1898;:5;;;;:::i;:::-;:10;1890:56;;;;;;;;;;;;:::i;:::-;;;;;;;;;1966:1;1959:8;;;1725:250;;;;;:::o;1983:132::-;2041:7;2068:39;2072:1;2075;2068:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2061:46;;1983:132;;;;:::o;22410:688::-;22549:21;22587:1;22573:16;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;22549:40;;22618:4;22600;22605:1;22600:7;;;;;;;;:::i;:::-;;;;;;;:23;;;;;;;;;;;22636:4;22626;22631:1;22626:7;;;;;;;;:::i;:::-;;;;;;;:14;;;;;;;;;;;22661:15;;;;;;;;;;;:20;;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;22651:4;22656:1;22651:7;;;;;;;;:::i;:::-;;;;;;;:32;;;;;;;;;;;22696:62;22713:4;22728:15;;;;;;;;;;;22746:11;22696:8;:62::i;:::-;22797:15;;;;;;;;;;;:66;;;22878:11;22904:1;22948:4;22975;23011:15;22797:240;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;23055:35;23072:11;23085:4;23055:35;;;;;;;:::i;:::-;;;;;;;;22478:620;22410:688;;:::o;18736:132::-;18834:9;:18;;:26;18853:6;18834:26;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18736:132;;:::o;2123:278::-;2209:7;2241:1;2237;:5;2244:12;2229:28;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;2268:9;2284:1;2280;:5;;;;:::i;:::-;2268:17;;2392:1;2385:8;;;2123:278;;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:104::-;3491:7;3520:24;3538:5;3520:24;:::i;:::-;3509:35;;3446:104;;;:::o;3556:142::-;3659:32;3685:5;3659:32;:::i;:::-;3654:3;3647:45;3556:142;;:::o;3704:254::-;3813:4;3851:2;3840:9;3836:18;3828:26;;3864:87;3948:1;3937:9;3933:17;3924:6;3864:87;:::i;:::-;3704:254;;;;:::o;3964:60::-;3992:3;4013:5;4006:12;;3964:60;;;:::o;4030:142::-;4080:9;4113:53;4131:34;4140:24;4158:5;4140:24;:::i;:::-;4131:34;:::i;:::-;4113:53;:::i;:::-;4100:66;;4030:142;;;:::o;4178:126::-;4228:9;4261:37;4292:5;4261:37;:::i;:::-;4248:50;;4178:126;;;:::o;4310:153::-;4387:9;4420:37;4451:5;4420:37;:::i;:::-;4407:50;;4310:153;;;:::o;4469:185::-;4583:64;4641:5;4583:64;:::i;:::-;4578:3;4571:77;4469:185;;:::o;4660:276::-;4780:4;4818:2;4807:9;4803:18;4795:26;;4831:98;4926:1;4915:9;4911:17;4902:6;4831:98;:::i;:::-;4660:276;;;;:::o;4942:118::-;5029:24;5047:5;5029:24;:::i;:::-;5024:3;5017:37;4942:118;;:::o;5066:222::-;5159:4;5197:2;5186:9;5182:18;5174:26;;5210:71;5278:1;5267:9;5263:17;5254:6;5210:71;:::i;:::-;5066:222;;;;:::o;5294:619::-;5371:6;5379;5387;5436:2;5424:9;5415:7;5411:23;5407:32;5404:119;;;5442:79;;:::i;:::-;5404:119;5562:1;5587:53;5632:7;5623:6;5612:9;5608:22;5587:53;:::i;:::-;5577:63;;5533:117;5689:2;5715:53;5760:7;5751:6;5740:9;5736:22;5715:53;:::i;:::-;5705:63;;5660:118;5817:2;5843:53;5888:7;5879:6;5868:9;5864:22;5843:53;:::i;:::-;5833:63;;5788:118;5294:619;;;;;:::o;5919:118::-;6006:24;6024:5;6006:24;:::i;:::-;6001:3;5994:37;5919:118;;:::o;6043:222::-;6136:4;6174:2;6163:9;6159:18;6151:26;;6187:71;6255:1;6244:9;6240:17;6231:6;6187:71;:::i;:::-;6043:222;;;;:::o;6271:86::-;6306:7;6346:4;6339:5;6335:16;6324:27;;6271:86;;;:::o;6363:112::-;6446:22;6462:5;6446:22;:::i;:::-;6441:3;6434:35;6363:112;;:::o;6481:214::-;6570:4;6608:2;6597:9;6593:18;6585:26;;6621:67;6685:1;6674:9;6670:17;6661:6;6621:67;:::i;:::-;6481:214;;;;:::o;6701:329::-;6760:6;6809:2;6797:9;6788:7;6784:23;6780:32;6777:119;;;6815:79;;:::i;:::-;6777:119;6935:1;6960:53;7005:7;6996:6;6985:9;6981:22;6960:53;:::i;:::-;6950:63;;6906:117;6701:329;;;;:::o;7036:474::-;7104:6;7112;7161:2;7149:9;7140:7;7136:23;7132:32;7129:119;;;7167:79;;:::i;:::-;7129:119;7287:1;7312:53;7357:7;7348:6;7337:9;7333:22;7312:53;:::i;:::-;7302:63;;7258:117;7414:2;7440:53;7485:7;7476:6;7465:9;7461:22;7440:53;:::i;:::-;7430:63;;7385:118;7036:474;;;;;:::o;7516:180::-;7564:77;7561:1;7554:88;7661:4;7658:1;7651:15;7685:4;7682:1;7675:15;7702:320;7746:6;7783:1;7777:4;7773:12;7763:22;;7830:1;7824:4;7820:12;7851:18;7841:81;;7907:4;7899:6;7895:17;7885:27;;7841:81;7969:2;7961:6;7958:14;7938:18;7935:38;7932:84;;7988:18;;:::i;:::-;7932:84;7753:269;7702:320;;;:::o;8028:182::-;8168:34;8164:1;8156:6;8152:14;8145:58;8028:182;:::o;8216:366::-;8358:3;8379:67;8443:2;8438:3;8379:67;:::i;:::-;8372:74;;8455:93;8544:3;8455:93;:::i;:::-;8573:2;8568:3;8564:12;8557:19;;8216:366;;;:::o;8588:419::-;8754:4;8792:2;8781:9;8777:18;8769:26;;8841:9;8835:4;8831:20;8827:1;8816:9;8812:17;8805:47;8869:131;8995:4;8869:131;:::i;:::-;8861:139;;8588:419;;;:::o;9013:143::-;9070:5;9101:6;9095:13;9086:22;;9117:33;9144:5;9117:33;:::i;:::-;9013:143;;;;:::o;9162:351::-;9232:6;9281:2;9269:9;9260:7;9256:23;9252:32;9249:119;;;9287:79;;:::i;:::-;9249:119;9407:1;9432:64;9488:7;9479:6;9468:9;9464:22;9432:64;:::i;:::-;9422:74;;9378:128;9162:351;;;;:::o;9519:332::-;9640:4;9678:2;9667:9;9663:18;9655:26;;9691:71;9759:1;9748:9;9744:17;9735:6;9691:71;:::i;:::-;9772:72;9840:2;9829:9;9825:18;9816:6;9772:72;:::i;:::-;9519:332;;;;;:::o;9857:225::-;9997:34;9993:1;9985:6;9981:14;9974:58;10066:8;10061:2;10053:6;10049:15;10042:33;9857:225;:::o;10088:366::-;10230:3;10251:67;10315:2;10310:3;10251:67;:::i;:::-;10244:74;;10327:93;10416:3;10327:93;:::i;:::-;10445:2;10440:3;10436:12;10429:19;;10088:366;;;:::o;10460:419::-;10626:4;10664:2;10653:9;10649:18;10641:26;;10713:9;10707:4;10703:20;10699:1;10688:9;10684:17;10677:47;10741:131;10867:4;10741:131;:::i;:::-;10733:139;;10460:419;;;:::o;10885:223::-;11025:34;11021:1;11013:6;11009:14;11002:58;11094:6;11089:2;11081:6;11077:15;11070:31;10885:223;:::o;11114:366::-;11256:3;11277:67;11341:2;11336:3;11277:67;:::i;:::-;11270:74;;11353:93;11442:3;11353:93;:::i;:::-;11471:2;11466:3;11462:12;11455:19;;11114:366;;;:::o;11486:419::-;11652:4;11690:2;11679:9;11675:18;11667:26;;11739:9;11733:4;11729:20;11725:1;11714:9;11710:17;11703:47;11767:131;11893:4;11767:131;:::i;:::-;11759:139;;11486:419;;;:::o;11911:221::-;12051:34;12047:1;12039:6;12035:14;12028:58;12120:4;12115:2;12107:6;12103:15;12096:29;11911:221;:::o;12138:366::-;12280:3;12301:67;12365:2;12360:3;12301:67;:::i;:::-;12294:74;;12377:93;12466:3;12377:93;:::i;:::-;12495:2;12490:3;12486:12;12479:19;;12138:366;;;:::o;12510:419::-;12676:4;12714:2;12703:9;12699:18;12691:26;;12763:9;12757:4;12753:20;12749:1;12738:9;12734:17;12727:47;12791:131;12917:4;12791:131;:::i;:::-;12783:139;;12510:419;;;:::o;12935:224::-;13075:34;13071:1;13063:6;13059:14;13052:58;13144:7;13139:2;13131:6;13127:15;13120:32;12935:224;:::o;13165:366::-;13307:3;13328:67;13392:2;13387:3;13328:67;:::i;:::-;13321:74;;13404:93;13493:3;13404:93;:::i;:::-;13522:2;13517:3;13513:12;13506:19;;13165:366;;;:::o;13537:419::-;13703:4;13741:2;13730:9;13726:18;13718:26;;13790:9;13784:4;13780:20;13776:1;13765:9;13761:17;13754:47;13818:131;13944:4;13818:131;:::i;:::-;13810:139;;13537:419;;;:::o;13962:222::-;14102:34;14098:1;14090:6;14086:14;14079:58;14171:5;14166:2;14158:6;14154:15;14147:30;13962:222;:::o;14190:366::-;14332:3;14353:67;14417:2;14412:3;14353:67;:::i;:::-;14346:74;;14429:93;14518:3;14429:93;:::i;:::-;14547:2;14542:3;14538:12;14531:19;;14190:366;;;:::o;14562:419::-;14728:4;14766:2;14755:9;14751:18;14743:26;;14815:9;14809:4;14805:20;14801:1;14790:9;14786:17;14779:47;14843:131;14969:4;14843:131;:::i;:::-;14835:139;;14562:419;;;:::o;14987:228::-;15127:34;15123:1;15115:6;15111:14;15104:58;15196:11;15191:2;15183:6;15179:15;15172:36;14987:228;:::o;15221:366::-;15363:3;15384:67;15448:2;15443:3;15384:67;:::i;:::-;15377:74;;15460:93;15549:3;15460:93;:::i;:::-;15578:2;15573:3;15569:12;15562:19;;15221:366;;;:::o;15593:419::-;15759:4;15797:2;15786:9;15782:18;15774:26;;15846:9;15840:4;15836:20;15832:1;15821:9;15817:17;15810:47;15874:131;16000:4;15874:131;:::i;:::-;15866:139;;15593:419;;;:::o;16018:180::-;16066:77;16063:1;16056:88;16163:4;16160:1;16153:15;16187:4;16184:1;16177:15;16204:194;16244:4;16264:20;16282:1;16264:20;:::i;:::-;16259:25;;16298:20;16316:1;16298:20;:::i;:::-;16293:25;;16342:1;16339;16335:9;16327:17;;16366:1;16360:4;16357:11;16354:37;;;16371:18;;:::i;:::-;16354:37;16204:194;;;;:::o;16404:191::-;16444:3;16463:20;16481:1;16463:20;:::i;:::-;16458:25;;16497:20;16515:1;16497:20;:::i;:::-;16492:25;;16540:1;16537;16533:9;16526:16;;16561:3;16558:1;16555:10;16552:36;;;16568:18;;:::i;:::-;16552:36;16404:191;;;;:::o;16601:177::-;16741:29;16737:1;16729:6;16725:14;16718:53;16601:177;:::o;16784:366::-;16926:3;16947:67;17011:2;17006:3;16947:67;:::i;:::-;16940:74;;17023:93;17112:3;17023:93;:::i;:::-;17141:2;17136:3;17132:12;17125:19;;16784:366;;;:::o;17156:419::-;17322:4;17360:2;17349:9;17345:18;17337:26;;17409:9;17403:4;17399:20;17395:1;17384:9;17380:17;17373:47;17437:131;17563:4;17437:131;:::i;:::-;17429:139;;17156:419;;;:::o;17581:410::-;17621:7;17644:20;17662:1;17644:20;:::i;:::-;17639:25;;17678:20;17696:1;17678:20;:::i;:::-;17673:25;;17733:1;17730;17726:9;17755:30;17773:11;17755:30;:::i;:::-;17744:41;;17934:1;17925:7;17921:15;17918:1;17915:22;17895:1;17888:9;17868:83;17845:139;;17964:18;;:::i;:::-;17845:139;17629:362;17581:410;;;;:::o;17997:180::-;18045:77;18042:1;18035:88;18142:4;18139:1;18132:15;18166:4;18163:1;18156:15;18183:185;18223:1;18240:20;18258:1;18240:20;:::i;:::-;18235:25;;18274:20;18292:1;18274:20;:::i;:::-;18269:25;;18313:1;18303:35;;18318:18;;:::i;:::-;18303:35;18360:1;18357;18353:9;18348:14;;18183:185;;;;:::o;18374:220::-;18514:34;18510:1;18502:6;18498:14;18491:58;18583:3;18578:2;18570:6;18566:15;18559:28;18374:220;:::o;18600:366::-;18742:3;18763:67;18827:2;18822:3;18763:67;:::i;:::-;18756:74;;18839:93;18928:3;18839:93;:::i;:::-;18957:2;18952:3;18948:12;18941:19;;18600:366;;;:::o;18972:419::-;19138:4;19176:2;19165:9;19161:18;19153:26;;19225:9;19219:4;19215:20;19211:1;19200:9;19196:17;19189:47;19253:131;19379:4;19253:131;:::i;:::-;19245:139;;18972:419;;;:::o;19397:180::-;19445:77;19442:1;19435:88;19542:4;19539:1;19532:15;19566:4;19563:1;19556:15;19583:180;19631:77;19628:1;19621:88;19728:4;19725:1;19718:15;19752:4;19749:1;19742:15;19769:85;19814:7;19843:5;19832:16;;19769:85;;;:::o;19860:158::-;19918:9;19951:61;19969:42;19978:32;20004:5;19978:32;:::i;:::-;19969:42;:::i;:::-;19951:61;:::i;:::-;19938:74;;19860:158;;;:::o;20024:147::-;20119:45;20158:5;20119:45;:::i;:::-;20114:3;20107:58;20024:147;;:::o;20177:114::-;20244:6;20278:5;20272:12;20262:22;;20177:114;;;:::o;20297:184::-;20396:11;20430:6;20425:3;20418:19;20470:4;20465:3;20461:14;20446:29;;20297:184;;;;:::o;20487:132::-;20554:4;20577:3;20569:11;;20607:4;20602:3;20598:14;20590:22;;20487:132;;;:::o;20625:108::-;20702:24;20720:5;20702:24;:::i;:::-;20697:3;20690:37;20625:108;;:::o;20739:179::-;20808:10;20829:46;20871:3;20863:6;20829:46;:::i;:::-;20907:4;20902:3;20898:14;20884:28;;20739:179;;;;:::o;20924:113::-;20994:4;21026;21021:3;21017:14;21009:22;;20924:113;;;:::o;21073:732::-;21192:3;21221:54;21269:5;21221:54;:::i;:::-;21291:86;21370:6;21365:3;21291:86;:::i;:::-;21284:93;;21401:56;21451:5;21401:56;:::i;:::-;21480:7;21511:1;21496:284;21521:6;21518:1;21515:13;21496:284;;;21597:6;21591:13;21624:63;21683:3;21668:13;21624:63;:::i;:::-;21617:70;;21710:60;21763:6;21710:60;:::i;:::-;21700:70;;21556:224;21543:1;21540;21536:9;21531:14;;21496:284;;;21500:14;21796:3;21789:10;;21197:608;;;21073:732;;;;:::o;21811:831::-;22074:4;22112:3;22101:9;22097:19;22089:27;;22126:71;22194:1;22183:9;22179:17;22170:6;22126:71;:::i;:::-;22207:80;22283:2;22272:9;22268:18;22259:6;22207:80;:::i;:::-;22334:9;22328:4;22324:20;22319:2;22308:9;22304:18;22297:48;22362:108;22465:4;22456:6;22362:108;:::i;:::-;22354:116;;22480:72;22548:2;22537:9;22533:18;22524:6;22480:72;:::i;:::-;22562:73;22630:3;22619:9;22615:19;22606:6;22562:73;:::i;:::-;21811:831;;;;;;;;:::o;22648:483::-;22819:4;22857:2;22846:9;22842:18;22834:26;;22870:71;22938:1;22927:9;22923:17;22914:6;22870:71;:::i;:::-;22988:9;22982:4;22978:20;22973:2;22962:9;22958:18;22951:48;23016:108;23119:4;23110:6;23016:108;:::i;:::-;23008:116;;22648:483;;;;;:::o
Swarm Source
ipfs://f9e1c907b72e4a88febd4c0d68b568ae808e6655309dca439e36391e6c6b394c
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.