ETH Price: $2,806.67 (+1.16%)

Token

Peponzi (PONZI)
 

Overview

Max Total Supply

100,000,000,000 PONZI

Holders

30

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

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:
PONZI

Compiler Version
v0.8.11+commit.d7f03943

Optimization Enabled:
Yes with 400 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-05-09
*/

/**

https://t.me/peponzierc

https://twitter.com/Peponzierc

https://peponzi.pro/

*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.11;
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
    );
}

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);
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }

}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);

    function WETH() external pure returns (address);

    function addLiquidityETH(
        address token,
        uint256 amountTokenDesired,
        uint256 amountTokenMin,
        uint256 amountETHMin,
        address to,
        uint256 deadline
    )
        external
        payable
        returns (
            uint256 amountToken,
            uint256 amountETH,
            uint256 liquidity
        );
}

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

contract PONZI is Context, IERC20, Ownable {

    using SafeMath for uint256;
    string private constant _name = "Peponzi";
    string private constant _symbol = "PONZI";
    uint8 private constant _decimals = 9;
    uint256 private constant MAX = ~uint256(0);
    uint256 private constant _tTotal = 100000000000 * 10**9;
    mapping(address => uint256) private _rOwned;
    mapping(address => uint256) private _tOwned;
    IUniswapV2Router02 public uniswapV2Router;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFee;
    uint256 private _rTotal = (MAX - (MAX % _tTotal));
    uint256 private _taxFeeOnSell = 0;
    bool public antiMevEnabled = false;
    uint256 private _taxFee = _taxFeeOnSell;
    uint256 private _previoustaxFee = _taxFee;
    uint256 private _tFeeTotal;
    uint256 private _taxFeeOnBuy = 0;

   
    address public uniswapV2Pair;
    bool private inSwap = false;
    bool private swapEnabled = true;
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor() {

        _rOwned[_msgSender()] = _rTotal;
        IUniswapV2Router02 _uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);//
        uniswapV2Router = _uniswapV2Router;
        uniswapV2Pair = IUniswapV2Factory(_uniswapV2Router.factory())
            .createPair(address(this), _uniswapV2Router.WETH());

        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;


        emit Transfer(address(0), _msgSender(), _tTotal);
    }

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

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

    function disableAntiMev() external onlyOwner {
        antiMevEnabled = false;
    }

    function enableAntiMev() external onlyOwner {
        antiMevEnabled = true;
    }

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

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

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

    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 tokenFromReflection(uint256 rAmount)
        private
        view
        returns (uint256)
    {
        require(
            rAmount <= _rTotal,
            "Amount must be less than total reflections"
        );
        uint256 currentRate = _getRate();
        return rAmount.div(currentRate);
    }

    function removeAllFee() private {
        if (_taxFee == 0) return;


        _previoustaxFee = _taxFee;


        _taxFee = 0;
    }

    function restoreAllFee() private {

        _taxFee = _previoustaxFee;
    }

    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");
        bool takeFee = true;

        if ((_isExcludedFromFee[from] || _isExcludedFromFee[to]) || (from != uniswapV2Pair && to != uniswapV2Pair)) {
            takeFee = false;
        } else {
            if(from == uniswapV2Pair && to != address(uniswapV2Router)) {
             
                _taxFee = _taxFeeOnBuy;
            }
            if (to == uniswapV2Pair && from != address(uniswapV2Router)) {
             
                _taxFee = _taxFeeOnSell;
                 require(antiMevEnabled, "AntiMev is enabled! Fuck you Subway");
            }

        }

        _tokenTransfer(from, to, amount, takeFee);
    }

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

    function _tokenTransfer(
        address sender,
        address recipient,
        uint256 amount,
        bool takeFee
    ) private {
        if (!takeFee) removeAllFee();
        _transferStandard(sender, recipient, amount);
        if (!takeFee) restoreAllFee();
    }

   function feeAmount(uint256 taxFeeOnBuy, uint256 taxFeeOnSell) public onlyOwner {
        _taxFeeOnBuy = taxFeeOnBuy;
        _taxFeeOnSell = taxFeeOnSell;
    }

    function _transferStandard(
        address sender,
        address recipient,
        uint256 tAmount
    ) private {
        (
            uint256 rAmount,
            uint256 rTransferAmount,
            uint256 rFee,
            uint256 tTransferAmount,
            uint256 tFee,
            uint256 tTeam
        ) = _getValues(tAmount);
        _rOwned[sender] = _rOwned[sender].sub(rAmount);
        _rOwned[recipient] = _rOwned[recipient].add(rTransferAmount);
        _takeTeam(tTeam);
        _reflectFee(rFee, tFee);
        emit Transfer(sender, recipient, tTransferAmount);
    }

    function _takeTeam(uint256 tTeam) private {
        uint256 currentRate = _getRate();
        uint256 rTeam = tTeam.mul(currentRate);
        _rOwned[address(this)] = _rOwned[address(this)].add(rTeam);
    }

    function _reflectFee(uint256 rFee, uint256 tFee) private {
        _rTotal = _rTotal.sub(rFee);
        _tFeeTotal = _tFeeTotal.add(tFee);
    }

    receive() external payable {}

    function _getValues(uint256 tAmount)
        private
        view
        returns (
            uint256,
            uint256,
            uint256,
            uint256,
            uint256,
            uint256
        )
    {
        (uint256 tTransferAmount, uint256 tFee, uint256 tTeam) =
            _getTValues(tAmount, _taxFee);
        uint256 currentRate = _getRate();
        (uint256 rAmount, uint256 rTransferAmount, uint256 rFee) =
            _getRValues(tAmount, tFee, tTeam, currentRate);
        return (rAmount, rTransferAmount, rFee, tTransferAmount, tFee, tTeam);
    }

    function _getTValues(
        uint256 tAmount,
        uint256 taxFee
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 tFee = tAmount.mul(taxFee).div(100);
        uint256 tTeam = tAmount.mul(taxFee).div(100);
        uint256 tTransferAmount = tAmount.sub(tFee).sub(tTeam);
        return (tTransferAmount, tFee, tTeam);
    }

    function _getRValues(
        uint256 tAmount,
        uint256 tFee,
        uint256 tTeam,
        uint256 currentRate
    )
        private
        pure
        returns (
            uint256,
            uint256,
            uint256
        )
    {
        uint256 rAmount = tAmount.mul(currentRate);
        uint256 rFee = tFee.mul(currentRate);
        uint256 rTeam = tTeam.mul(currentRate);
        uint256 rTransferAmount = rAmount.sub(rFee).sub(rTeam);
        return (rAmount, rTransferAmount, rFee);
    }

    function _getRate() private view returns (uint256) {
        (uint256 rSupply, uint256 tSupply) = _getCurrentSupply();
        return rSupply.div(tSupply);
    }

    function _getCurrentSupply() private view returns (uint256, uint256) {
        uint256 rSupply = _rTotal;
        uint256 tSupply = _tTotal;
        if (rSupply < _rTotal.div(_tTotal)) return (_rTotal, _tTotal);
        return (rSupply, tSupply);
    }

 
}

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":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"antiMevEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"disableAntiMev","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableAntiMev","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"taxFeeOnBuy","type":"uint256"},{"internalType":"uint256","name":"taxFeeOnSell","type":"uint256"}],"name":"feeAmount","outputs":[],"stateMutability":"nonpayable","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":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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 IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526200001b68056bc75e2d63100000600019620002c7565b6200002990600019620002ea565b600755600060088190556009805460ff19169055600a819055600b819055600d55600e805461ffff60a01b1916600160a81b1790553480156200006b57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506007543360009081526002602090815260409182902092909255600480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081178255825163c45a015560e01b815292519093849363c45a01559381810193918290030181865afa15801562000126573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200014c919062000310565b6001600160a01b031663c9c6539630836001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200019a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001c0919062000310565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200020e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000234919062000310565b600e80546001600160a01b0319166001600160a01b03928316179055600080549091168152600660209081526040808320805460ff199081166001908117909255308552828520805490911690911790555168056bc75e2d6310000081523392917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35062000342565b600082620002e557634e487b7160e01b600052601260045260246000fd5b500690565b6000828210156200030b57634e487b7160e01b600052601160045260246000fd5b500390565b6000602082840312156200032357600080fd5b81516001600160a01b03811681146200033b57600080fd5b9392505050565b61128180620003526000396000f3fe60806040526004361061010d5760003560e01c80636f7a8ade1161009557806395d89b411161006457806395d89b41146102de578063a9059cbb1461030c578063c65103221461032c578063dd62ed3e1461034c578063f2fde38b1461039257600080fd5b80636f7a8ade1461027657806370a082311461028b578063715018a6146102ab5780638da5cb5b146102c057600080fd5b806318160ddd116100dc57806318160ddd146101da57806323b872dd14610200578063313ce5671461022057806349bd5a5e1461023c578063627e9d8e1461025c57600080fd5b806306cb4cb41461011957806306fdde0314610130578063095ea7b3146101725780631694505e146101a257600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5061012e6103b2565b005b34801561013c57600080fd5b506040805180820190915260078152665065706f6e7a6960c81b60208201525b6040516101699190611056565b60405180910390f35b34801561017e57600080fd5b5061019261018d3660046110c7565b61041d565b6040519015158152602001610169565b3480156101ae57600080fd5b506004546101c2906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b3480156101e657600080fd5b5068056bc75e2d631000005b604051908152602001610169565b34801561020c57600080fd5b5061019261021b3660046110f1565b610434565b34801561022c57600080fd5b5060405160098152602001610169565b34801561024857600080fd5b50600e546101c2906001600160a01b031681565b34801561026857600080fd5b506009546101929060ff1681565b34801561028257600080fd5b5061012e61049d565b34801561029757600080fd5b506101f26102a636600461112d565b610506565b3480156102b757600080fd5b5061012e610528565b3480156102cc57600080fd5b506000546001600160a01b03166101c2565b3480156102ea57600080fd5b50604080518082019091526005815264504f4e5a4960d81b602082015261015c565b34801561031857600080fd5b506101926103273660046110c7565b6105cc565b34801561033857600080fd5b5061012e610347366004611148565b6105d9565b34801561035857600080fd5b506101f261036736600461116a565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561039e57600080fd5b5061012e6103ad36600461112d565b61063e565b6000546001600160a01b031633146104115760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6009805460ff19169055565b600061042a338484610758565b5060015b92915050565b600061044184848461087c565b610493843361048e85604051806060016040528060288152602001611224602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190610b02565b610758565b5060019392505050565b6000546001600160a01b031633146104f75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b6009805460ff19166001179055565b6001600160a01b03811660009081526002602052604081205461042e90610b3c565b6000546001600160a01b031633146105825760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600061042a33848461087c565b6000546001600160a01b031633146106335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b600d91909155600855565b6000546001600160a01b031633146106985760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b6001600160a01b0381166106fd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610408565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166107ba5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610408565b6001600160a01b03821661081b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610408565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108e05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610408565b6001600160a01b0382166109425760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610408565b600081116109a45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610408565b6001600160a01b03831660009081526006602052604090205460019060ff16806109e657506001600160a01b03831660009081526006602052604090205460ff165b80610a185750600e546001600160a01b03858116911614801590610a185750600e546001600160a01b03848116911614155b15610a2557506000610af0565b600e546001600160a01b038581169116148015610a5057506004546001600160a01b03848116911614155b15610a5c57600d54600a555b600e546001600160a01b038481169116148015610a8757506004546001600160a01b03858116911614155b15610af057600854600a5560095460ff16610af05760405162461bcd60e51b815260206004820152602360248201527f416e74694d657620697320656e61626c656421204675636b20796f752053756260448201526277617960e81b6064820152608401610408565b610afc84848484610bc0565b50505050565b60008184841115610b265760405162461bcd60e51b81526004016104089190611056565b506000610b3384866111b3565b95945050505050565b6000600754821115610ba35760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610408565b6000610bad610be8565b9050610bb98382610c0b565b9392505050565b80610bcd57610bcd610c4d565b610bd8848484610c63565b80610afc57610afc600b54600a55565b6000806000610bf5610d5a565b9092509050610c048282610c0b565b9250505090565b6000610bb983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610d9c565b600a54610c5657565b600a8054600b5560009055565b600080600080600080610c7587610dca565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150610ca79087610e24565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054610cd69086610e66565b6001600160a01b038916600090815260026020526040902055610cf881610ec5565b610d028483610f0f565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610d4791815260200190565b60405180910390a3505050505050505050565b600754600090819068056bc75e2d63100000610d768282610c0b565b821015610d935750506007549268056bc75e2d6310000092509050565b90939092509050565b60008183610dbd5760405162461bcd60e51b81526004016104089190611056565b506000610b3384866111ca565b6000806000806000806000806000610de48a600a54610f33565b9250925092506000610df4610be8565b90506000806000610e078e878787610f87565b919e509c509a509598509396509194505050505091939550919395565b6000610bb983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b02565b600080610e7383856111ec565b905083811015610bb95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610408565b6000610ecf610be8565b90506000610edd8383610fd7565b30600090815260026020526040902054909150610efa9082610e66565b30600090815260026020526040902055505050565b600754610f1c9083610e24565b600755600c54610f2c9082610e66565b600c555050565b6000808080610f4d6064610f478888610fd7565b90610c0b565b90506000610f606064610f478989610fd7565b90506000610f7882610f728a86610e24565b90610e24565b95509193509150509250925092565b6000808080610f968886610fd7565b90506000610fa48887610fd7565b90506000610fb28888610fd7565b90506000610fc482610f728686610e24565b939b939a50919850919650505050505050565b600082610fe65750600061042e565b6000610ff28385611204565b905082610fff85836111ca565b14610bb95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610408565b600060208083528351808285015260005b8181101561108357858101830151858201604001528201611067565b81811115611095576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146110c257600080fd5b919050565b600080604083850312156110da57600080fd5b6110e3836110ab565b946020939093013593505050565b60008060006060848603121561110657600080fd5b61110f846110ab565b925061111d602085016110ab565b9150604084013590509250925092565b60006020828403121561113f57600080fd5b610bb9826110ab565b6000806040838503121561115b57600080fd5b50508035926020909101359150565b6000806040838503121561117d57600080fd5b611186836110ab565b9150611194602084016110ab565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000828210156111c5576111c561119d565b500390565b6000826111e757634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156111ff576111ff61119d565b500190565b600081600019048311821515161561121e5761121e61119d565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122081afccaa644366c73a0a675059c7f488ec6bd70e12139d1ce3029dee96bfe9f964736f6c634300080b0033

Deployed Bytecode

0x60806040526004361061010d5760003560e01c80636f7a8ade1161009557806395d89b411161006457806395d89b41146102de578063a9059cbb1461030c578063c65103221461032c578063dd62ed3e1461034c578063f2fde38b1461039257600080fd5b80636f7a8ade1461027657806370a082311461028b578063715018a6146102ab5780638da5cb5b146102c057600080fd5b806318160ddd116100dc57806318160ddd146101da57806323b872dd14610200578063313ce5671461022057806349bd5a5e1461023c578063627e9d8e1461025c57600080fd5b806306cb4cb41461011957806306fdde0314610130578063095ea7b3146101725780631694505e146101a257600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5061012e6103b2565b005b34801561013c57600080fd5b506040805180820190915260078152665065706f6e7a6960c81b60208201525b6040516101699190611056565b60405180910390f35b34801561017e57600080fd5b5061019261018d3660046110c7565b61041d565b6040519015158152602001610169565b3480156101ae57600080fd5b506004546101c2906001600160a01b031681565b6040516001600160a01b039091168152602001610169565b3480156101e657600080fd5b5068056bc75e2d631000005b604051908152602001610169565b34801561020c57600080fd5b5061019261021b3660046110f1565b610434565b34801561022c57600080fd5b5060405160098152602001610169565b34801561024857600080fd5b50600e546101c2906001600160a01b031681565b34801561026857600080fd5b506009546101929060ff1681565b34801561028257600080fd5b5061012e61049d565b34801561029757600080fd5b506101f26102a636600461112d565b610506565b3480156102b757600080fd5b5061012e610528565b3480156102cc57600080fd5b506000546001600160a01b03166101c2565b3480156102ea57600080fd5b50604080518082019091526005815264504f4e5a4960d81b602082015261015c565b34801561031857600080fd5b506101926103273660046110c7565b6105cc565b34801561033857600080fd5b5061012e610347366004611148565b6105d9565b34801561035857600080fd5b506101f261036736600461116a565b6001600160a01b03918216600090815260056020908152604080832093909416825291909152205490565b34801561039e57600080fd5b5061012e6103ad36600461112d565b61063e565b6000546001600160a01b031633146104115760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e657260448201526064015b60405180910390fd5b6009805460ff19169055565b600061042a338484610758565b5060015b92915050565b600061044184848461087c565b610493843361048e85604051806060016040528060288152602001611224602891396001600160a01b038a1660009081526005602090815260408083203384529091529020549190610b02565b610758565b5060019392505050565b6000546001600160a01b031633146104f75760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b6009805460ff19166001179055565b6001600160a01b03811660009081526002602052604081205461042e90610b3c565b6000546001600160a01b031633146105825760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b600061042a33848461087c565b6000546001600160a01b031633146106335760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b600d91909155600855565b6000546001600160a01b031633146106985760405162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65726044820152606401610408565b6001600160a01b0381166106fd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b6064820152608401610408565b600080546040516001600160a01b03808516939216917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e091a3600080546001600160a01b0319166001600160a01b0392909216919091179055565b6001600160a01b0383166107ba5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610408565b6001600160a01b03821661081b5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610408565b6001600160a01b0383811660008181526005602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166108e05760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610408565b6001600160a01b0382166109425760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610408565b600081116109a45760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610408565b6001600160a01b03831660009081526006602052604090205460019060ff16806109e657506001600160a01b03831660009081526006602052604090205460ff165b80610a185750600e546001600160a01b03858116911614801590610a185750600e546001600160a01b03848116911614155b15610a2557506000610af0565b600e546001600160a01b038581169116148015610a5057506004546001600160a01b03848116911614155b15610a5c57600d54600a555b600e546001600160a01b038481169116148015610a8757506004546001600160a01b03858116911614155b15610af057600854600a5560095460ff16610af05760405162461bcd60e51b815260206004820152602360248201527f416e74694d657620697320656e61626c656421204675636b20796f752053756260448201526277617960e81b6064820152608401610408565b610afc84848484610bc0565b50505050565b60008184841115610b265760405162461bcd60e51b81526004016104089190611056565b506000610b3384866111b3565b95945050505050565b6000600754821115610ba35760405162461bcd60e51b815260206004820152602a60248201527f416d6f756e74206d757374206265206c657373207468616e20746f74616c207260448201526965666c656374696f6e7360b01b6064820152608401610408565b6000610bad610be8565b9050610bb98382610c0b565b9392505050565b80610bcd57610bcd610c4d565b610bd8848484610c63565b80610afc57610afc600b54600a55565b6000806000610bf5610d5a565b9092509050610c048282610c0b565b9250505090565b6000610bb983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610d9c565b600a54610c5657565b600a8054600b5560009055565b600080600080600080610c7587610dca565b6001600160a01b038f16600090815260026020526040902054959b50939950919750955093509150610ca79087610e24565b6001600160a01b03808b1660009081526002602052604080822093909355908a1681522054610cd69086610e66565b6001600160a01b038916600090815260026020526040902055610cf881610ec5565b610d028483610f0f565b876001600160a01b0316896001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610d4791815260200190565b60405180910390a3505050505050505050565b600754600090819068056bc75e2d63100000610d768282610c0b565b821015610d935750506007549268056bc75e2d6310000092509050565b90939092509050565b60008183610dbd5760405162461bcd60e51b81526004016104089190611056565b506000610b3384866111ca565b6000806000806000806000806000610de48a600a54610f33565b9250925092506000610df4610be8565b90506000806000610e078e878787610f87565b919e509c509a509598509396509194505050505091939550919395565b6000610bb983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b02565b600080610e7383856111ec565b905083811015610bb95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610408565b6000610ecf610be8565b90506000610edd8383610fd7565b30600090815260026020526040902054909150610efa9082610e66565b30600090815260026020526040902055505050565b600754610f1c9083610e24565b600755600c54610f2c9082610e66565b600c555050565b6000808080610f4d6064610f478888610fd7565b90610c0b565b90506000610f606064610f478989610fd7565b90506000610f7882610f728a86610e24565b90610e24565b95509193509150509250925092565b6000808080610f968886610fd7565b90506000610fa48887610fd7565b90506000610fb28888610fd7565b90506000610fc482610f728686610e24565b939b939a50919850919650505050505050565b600082610fe65750600061042e565b6000610ff28385611204565b905082610fff85836111ca565b14610bb95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610408565b600060208083528351808285015260005b8181101561108357858101830151858201604001528201611067565b81811115611095576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b03811681146110c257600080fd5b919050565b600080604083850312156110da57600080fd5b6110e3836110ab565b946020939093013593505050565b60008060006060848603121561110657600080fd5b61110f846110ab565b925061111d602085016110ab565b9150604084013590509250925092565b60006020828403121561113f57600080fd5b610bb9826110ab565b6000806040838503121561115b57600080fd5b50508035926020909101359150565b6000806040838503121561117d57600080fd5b611186836110ab565b9150611194602084016110ab565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b6000828210156111c5576111c561119d565b500390565b6000826111e757634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156111ff576111ff61119d565b500190565b600081600019048311821515161561121e5761121e61119d565b50029056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a264697066735822122081afccaa644366c73a0a675059c7f488ec6bd70e12139d1ce3029dee96bfe9f964736f6c634300080b0033

Deployed Bytecode Sourcemap

4158:9379:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6004:86;;;;;;;;;;;;;:::i;:::-;;5818:83;;;;;;;;;;-1:-1:-1;5888:5:0;;;;;;;;;;;;-1:-1:-1;;;5888:5:0;;;;5818:83;;;;;;;:::i;:::-;;;;;;;;6929:193;;;;;;;;;;-1:-1:-1;6929:193:0;;;;;:::i;:::-;;:::i;:::-;;;1241:14:1;;1234:22;1216:41;;1204:2;1189:18;6929:193:0;1076:187:1;4593:41:0;;;;;;;;;;-1:-1:-1;4593:41:0;;;;-1:-1:-1;;;;;4593:41:0;;;;;;-1:-1:-1;;;;;1458:55:1;;;1440:74;;1428:2;1413:18;4593:41:0;1268:252:1;6281:95:0;;;;;;;;;;-1:-1:-1;4466:20:0;6281:95;;;1671:25:1;;;1659:2;1644:18;6281:95:0;1525:177:1;7130:446:0;;;;;;;;;;-1:-1:-1;7130:446:0;;;;;:::i;:::-;;:::i;6190:83::-;;;;;;;;;;-1:-1:-1;6190:83:0;;4374:1;2182:36:1;;2170:2;2155:18;6190:83:0;2040:184:1;5083:28:0;;;;;;;;;;-1:-1:-1;5083:28:0;;;;-1:-1:-1;;;;;5083:28:0;;;4869:34;;;;;;;;;;-1:-1:-1;4869:34:0;;;;;;;;6098:84;;;;;;;;;;;;;:::i;6384:138::-;;;;;;;;;;-1:-1:-1;6384:138:0;;;;;:::i;:::-;;:::i;1645:148::-;;;;;;;;;;;;;:::i;1431:79::-;;;;;;;;;;-1:-1:-1;1469:7:0;1496:6;-1:-1:-1;;;;;1496:6:0;1431:79;;5909:87;;;;;;;;;;-1:-1:-1;5981:7:0;;;;;;;;;;;;-1:-1:-1;;;5981:7:0;;;;5909:87;;6530:199;;;;;;;;;;-1:-1:-1;6530:199:0;;;;;:::i;:::-;;:::i;10298:163::-;;;;;;;;;;-1:-1:-1;10298:163:0;;;;;:::i;:::-;;:::i;6737:184::-;;;;;;;;;;-1:-1:-1;6737:184:0;;;;;:::i;:::-;-1:-1:-1;;;;;6886:18:0;;;6854:7;6886:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6737:184;1801:244;;;;;;;;;;-1:-1:-1;1801:244:0;;;;;:::i;:::-;;:::i;6004:86::-;1558:6;;-1:-1:-1;;;;;1558:6:0;270:10;1558:22;1550:67;;;;-1:-1:-1;;;1550:67:0;;3371:2:1;1550:67:0;;;3353:21:1;;;3390:18;;;3383:30;3449:34;3429:18;;;3422:62;3501:18;;1550:67:0;;;;;;;;;6060:14:::1;:22:::0;;-1:-1:-1;;6060:22:0::1;::::0;;6004:86::o;6929:193::-;7031:4;7053:39;270:10;7076:7;7085:6;7053:8;:39::i;:::-;-1:-1:-1;7110:4:0;6929:193;;;;;:::o;7130:446::-;7262:4;7279:36;7289:6;7297:9;7308:6;7279:9;:36::i;:::-;7326:220;7349:6;270:10;7397:138;7453:6;7397:138;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7397:19:0;;;;;;:11;:19;;;;;;;;270:10;7397:33;;;;;;;;;;:37;:138::i;:::-;7326:8;:220::i;:::-;-1:-1:-1;7564:4:0;7130:446;;;;;:::o;6098:84::-;1558:6;;-1:-1:-1;;;;;1558:6:0;270:10;1558:22;1550:67;;;;-1:-1:-1;;;1550:67:0;;3371:2:1;1550:67:0;;;3353:21:1;;;3390:18;;;3383:30;3449:34;3429:18;;;3422:62;3501:18;;1550:67:0;3169:356:1;1550:67:0;6153:14:::1;:21:::0;;-1:-1:-1;;6153:21:0::1;6170:4;6153:21;::::0;;6098:84::o;6384:138::-;-1:-1:-1;;;;;6497:16:0;;6450:7;6497:16;;;:7;:16;;;;;;6477:37;;:19;:37::i;1645:148::-;1558:6;;-1:-1:-1;;;;;1558:6:0;270:10;1558:22;1550:67;;;;-1:-1:-1;;;1550:67:0;;3371:2:1;1550:67:0;;;3353:21:1;;;3390:18;;;3383:30;3449:34;3429:18;;;3422:62;3501:18;;1550:67:0;3169:356:1;1550:67:0;1752:1:::1;1736:6:::0;;1715:40:::1;::::0;-1:-1:-1;;;;;1736:6:0;;::::1;::::0;1715:40:::1;::::0;1752:1;;1715:40:::1;1783:1;1766:19:::0;;-1:-1:-1;;;;;;1766:19:0::1;::::0;;1645:148::o;6530:199::-;6635:4;6657:42;270:10;6681:9;6692:6;6657:9;:42::i;10298:163::-;1558:6;;-1:-1:-1;;;;;1558:6:0;270:10;1558:22;1550:67;;;;-1:-1:-1;;;1550:67:0;;3371:2:1;1550:67:0;;;3353:21:1;;;3390:18;;;3383:30;3449:34;3429:18;;;3422:62;3501:18;;1550:67:0;3169:356:1;1550:67:0;10388:12:::1;:26:::0;;;;10425:13:::1;:28:::0;10298:163::o;1801:244::-;1558:6;;-1:-1:-1;;;;;1558:6:0;270:10;1558:22;1550:67;;;;-1:-1:-1;;;1550:67:0;;3371:2:1;1550:67:0;;;3353:21:1;;;3390:18;;;3383:30;3449:34;3429:18;;;3422:62;3501:18;;1550:67:0;3169:356:1;1550:67:0;-1:-1:-1;;;;;1890:22:0;::::1;1882:73;;;::::0;-1:-1:-1;;;1882:73:0;;3732:2:1;1882:73:0::1;::::0;::::1;3714:21:1::0;3771:2;3751:18;;;3744:30;3810:34;3790:18;;;3783:62;-1:-1:-1;;;3861:18:1;;;3854:36;3907:19;;1882:73:0::1;3530:402:1::0;1882:73:0::1;1992:6;::::0;;1971:38:::1;::::0;-1:-1:-1;;;;;1971:38:0;;::::1;::::0;1992:6;::::1;::::0;1971:38:::1;::::0;::::1;2020:6;:17:::0;;-1:-1:-1;;;;;;2020:17:0::1;-1:-1:-1::0;;;;;2020:17:0;;;::::1;::::0;;;::::1;::::0;;1801:244::o;8151:369::-;-1:-1:-1;;;;;8278:19:0;;8270:68;;;;-1:-1:-1;;;8270:68:0;;4139:2:1;8270:68:0;;;4121:21:1;4178:2;4158:18;;;4151:30;4217:34;4197:18;;;4190:62;-1:-1:-1;;;4268:18:1;;;4261:34;4312:19;;8270:68:0;3937:400:1;8270:68:0;-1:-1:-1;;;;;8357:21:0;;8349:68;;;;-1:-1:-1;;;8349:68:0;;4544:2:1;8349:68:0;;;4526:21:1;4583:2;4563:18;;;4556:30;4622:34;4602:18;;;4595:62;-1:-1:-1;;;4673:18:1;;;4666:32;4715:19;;8349:68:0;4342:398:1;8349:68:0;-1:-1:-1;;;;;8428:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;8480:32;;1671:25:1;;;8480:32:0;;1644:18:1;8480:32:0;;;;;;;8151:369;;;:::o;8528:982::-;-1:-1:-1;;;;;8650:18:0;;8642:68;;;;-1:-1:-1;;;8642:68:0;;4947:2:1;8642:68:0;;;4929:21:1;4986:2;4966:18;;;4959:30;5025:34;5005:18;;;4998:62;-1:-1:-1;;;5076:18:1;;;5069:35;5121:19;;8642:68:0;4745:401:1;8642:68:0;-1:-1:-1;;;;;8729:16:0;;8721:64;;;;-1:-1:-1;;;8721:64:0;;5353:2:1;8721:64:0;;;5335:21:1;5392:2;5372:18;;;5365:30;5431:34;5411:18;;;5404:62;-1:-1:-1;;;5482:18:1;;;5475:33;5525:19;;8721:64:0;5151:399:1;8721:64:0;8813:1;8804:6;:10;8796:64;;;;-1:-1:-1;;;8796:64:0;;5757:2:1;8796:64:0;;;5739:21:1;5796:2;5776:18;;;5769:30;5835:34;5815:18;;;5808:62;-1:-1:-1;;;5886:18:1;;;5879:39;5935:19;;8796:64:0;5555:405:1;8796:64:0;-1:-1:-1;;;;;8908:24:0;;8871:12;8908:24;;;:18;:24;;;;;;8886:4;;8908:24;;;:50;;-1:-1:-1;;;;;;8936:22:0;;;;;;:18;:22;;;;;;;;8908:50;8907:102;;;-1:-1:-1;8972:13:0;;-1:-1:-1;;;;;8964:21:0;;;8972:13;;8964:21;;;;:44;;-1:-1:-1;8995:13:0;;-1:-1:-1;;;;;8989:19:0;;;8995:13;;8989:19;;8964:44;8903:546;;;-1:-1:-1;9036:5:0;8903:546;;;9085:13;;-1:-1:-1;;;;;9077:21:0;;;9085:13;;9077:21;:55;;;;-1:-1:-1;9116:15:0;;-1:-1:-1;;;;;9102:30:0;;;9116:15;;9102:30;;9077:55;9074:132;;;9178:12;;9168:7;:22;9074:132;9230:13;;-1:-1:-1;;;;;9224:19:0;;;9230:13;;9224:19;:55;;;;-1:-1:-1;9263:15:0;;-1:-1:-1;;;;;9247:32:0;;;9263:15;;9247:32;;9224:55;9220:216;;;9325:13;;9315:7;:23;9366:14;;;;9358:62;;;;-1:-1:-1;;;9358:62:0;;6167:2:1;9358:62:0;;;6149:21:1;6206:2;6186:18;;;6179:30;6245:34;6225:18;;;6218:62;-1:-1:-1;;;6296:18:1;;;6289:33;6339:19;;9358:62:0;5965:399:1;9358:62:0;9461:41;9476:4;9482:2;9486:6;9494:7;9461:14;:41::i;:::-;8631:879;8528:982;;;:::o;2409:224::-;2529:7;2565:12;2557:6;;;;2549:29;;;;-1:-1:-1;;;2549:29:0;;;;;;;;:::i;:::-;-1:-1:-1;2589:9:0;2601:5;2605:1;2601;:5;:::i;:::-;2589:17;2409:224;-1:-1:-1;;;;;2409:224:0:o;7584:323::-;7679:7;7737;;7726;:18;;7704:110;;;;-1:-1:-1;;;7704:110:0;;6833:2:1;7704:110:0;;;6815:21:1;6872:2;6852:18;;;6845:30;6911:34;6891:18;;;6884:62;-1:-1:-1;;;6962:18:1;;;6955:40;7012:19;;7704:110:0;6631:406:1;7704:110:0;7825:19;7847:10;:8;:10::i;:::-;7825:32;-1:-1:-1;7875:24:0;:7;7825:32;7875:11;:24::i;:::-;7868:31;7584:323;-1:-1:-1;;;7584:323:0:o;10009:282::-;10165:7;10160:28;;10174:14;:12;:14::i;:::-;10199:44;10217:6;10225:9;10236:6;10199:17;:44::i;:::-;10259:7;10254:29;;10268:15;8120;;8110:7;:25;8064:79;13100:164;13142:7;13163:15;13180;13199:19;:17;:19::i;:::-;13162:56;;-1:-1:-1;13162:56:0;-1:-1:-1;13236:20:0;13162:56;;13236:11;:20::i;:::-;13229:27;;;;13100:164;:::o;2895:132::-;2953:7;2980:39;2984:1;2987;2980:39;;;;;;;;;;;;;;;;;:3;:39::i;7915:141::-;7962:7;;7958:25;;7915:141::o;7958:25::-;8015:7;;;7997:15;:25;-1:-1:-1;8037:11:0;;7915:141::o;10469:610::-;10616:15;10646:23;10684:12;10711:23;10749:12;10776:13;10803:19;10814:7;10803:10;:19::i;:::-;-1:-1:-1;;;;;10851:15:0;;;;;;:7;:15;;;;;;10601:221;;-1:-1:-1;10601:221:0;;-1:-1:-1;10601:221:0;;-1:-1:-1;10601:221:0;-1:-1:-1;10601:221:0;-1:-1:-1;10601:221:0;-1:-1:-1;10851:28:0;;10601:221;10851:19;:28::i;:::-;-1:-1:-1;;;;;10833:15:0;;;;;;;:7;:15;;;;;;:46;;;;10911:18;;;;;;;:39;;10934:15;10911:22;:39::i;:::-;-1:-1:-1;;;;;10890:18:0;;;;;;:7;:18;;;;;:60;10961:16;10971:5;10961:9;:16::i;:::-;10988:23;11000:4;11006;10988:11;:23::i;:::-;11044:9;-1:-1:-1;;;;;11027:44:0;11036:6;-1:-1:-1;;;;;11027:44:0;;11055:15;11027:44;;;;1671:25:1;;1659:2;1644:18;;1525:177;11027:44:0;;;;;;;;10590:489;;;;;;10469:610;;;:::o;13272:257::-;13370:7;;13323;;;;4466:20;13438;13370:7;4466:20;13438:11;:20::i;:::-;13428:7;:30;13424:61;;;-1:-1:-1;;13468:7:0;;;4466:20;;-1:-1:-1;13272:257:0;-1:-1:-1;13272:257:0:o;13424:61::-;13504:7;;13513;;-1:-1:-1;13272:257:0;-1:-1:-1;13272:257:0:o;3035:223::-;3155:7;3190:12;3183:5;3175:28;;;;-1:-1:-1;;;3175:28:0;;;;;;;;:::i;:::-;-1:-1:-1;3214:9:0;3226:5;3230:1;3226;:5;:::i;11498:604::-;11598:7;11620;11642;11664;11686;11708;11744:23;11769:12;11783:13;11813:29;11825:7;11834;;11813:11;:29::i;:::-;11743:99;;;;;;11853:19;11875:10;:8;:10::i;:::-;11853:32;;11897:15;11914:23;11939:12;11968:46;11980:7;11989:4;11995:5;12002:11;11968;:46::i;:::-;11896:118;;-1:-1:-1;11896:118:0;-1:-1:-1;11896:118:0;-1:-1:-1;12065:15:0;;-1:-1:-1;12082:4:0;;-1:-1:-1;12088:5:0;;-1:-1:-1;;;;;11498:604:0;;;;;;;:::o;2265:136::-;2323:7;2350:43;2354:1;2357;2350:43;;;;;;;;;;;;;;;;;:3;:43::i;2078:179::-;2136:7;;2168:5;2172:1;2168;:5;:::i;:::-;2156:17;;2197:1;2192;:6;;2184:46;;;;-1:-1:-1;;;2184:46:0;;7599:2:1;2184:46:0;;;7581:21:1;7638:2;7618:18;;;7611:30;7677:29;7657:18;;;7650:57;7724:18;;2184:46:0;7397:351:1;11087:211:0;11140:19;11162:10;:8;:10::i;:::-;11140:32;-1:-1:-1;11183:13:0;11199:22;:5;11140:32;11199:9;:22::i;:::-;11273:4;11257:22;;;;:7;:22;;;;;;11183:38;;-1:-1:-1;11257:33:0;;11183:38;11257:26;:33::i;:::-;11248:4;11232:22;;;;:7;:22;;;;;:58;-1:-1:-1;;;11087:211:0:o;11306:147::-;11384:7;;:17;;11396:4;11384:11;:17::i;:::-;11374:7;:27;11425:10;;:20;;11440:4;11425:14;:20::i;:::-;11412:10;:33;-1:-1:-1;;11306:147:0:o;12110:440::-;12252:7;;;;12346:28;12370:3;12346:19;:7;12358:6;12346:11;:19::i;:::-;:23;;:28::i;:::-;12331:43;-1:-1:-1;12385:13:0;12401:28;12425:3;12401:19;:7;12413:6;12401:11;:19::i;:28::-;12385:44;-1:-1:-1;12440:23:0;12466:28;12385:44;12466:17;:7;12478:4;12466:11;:17::i;:::-;:21;;:28::i;:::-;12440:54;-1:-1:-1;12530:4:0;;-1:-1:-1;12536:5:0;-1:-1:-1;;12110:440:0;;;;;:::o;12558:534::-;12752:7;;;;12849:24;:7;12861:11;12849;:24::i;:::-;12831:42;-1:-1:-1;12884:12:0;12899:21;:4;12908:11;12899:8;:21::i;:::-;12884:36;-1:-1:-1;12931:13:0;12947:22;:5;12957:11;12947:9;:22::i;:::-;12931:38;-1:-1:-1;12980:23:0;13006:28;12931:38;13006:17;:7;13018:4;13006:11;:17::i;:28::-;13053:7;;;;-1:-1:-1;13079:4:0;;-1:-1:-1;12558:534:0;;-1:-1:-1;;;;;;;12558:534:0:o;2641:246::-;2699:7;2723:6;2719:47;;-1:-1:-1;2753:1:0;2746:8;;2719:47;2776:9;2788:5;2792:1;2788;:5;:::i;:::-;2776:17;-1:-1:-1;2821:1:0;2812:5;2816:1;2776:17;2812:5;:::i;:::-;:10;2804:56;;;;-1:-1:-1;;;2804:56:0;;8128:2:1;2804:56:0;;;8110:21:1;8167:2;8147:18;;;8140:30;8206:34;8186:18;;;8179:62;-1:-1:-1;;;8257:18:1;;;8250:31;8298:19;;2804:56:0;7926:397:1;14:597;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:196::-;684:20;;-1:-1:-1;;;;;733:54:1;;723:65;;713:93;;802:1;799;792:12;713:93;616:196;;;:::o;817:254::-;885:6;893;946:2;934:9;925:7;921:23;917:32;914:52;;;962:1;959;952:12;914:52;985:29;1004:9;985:29;:::i;:::-;975:39;1061:2;1046:18;;;;1033:32;;-1:-1:-1;;;817:254:1:o;1707:328::-;1784:6;1792;1800;1853:2;1841:9;1832:7;1828:23;1824:32;1821:52;;;1869:1;1866;1859:12;1821:52;1892:29;1911:9;1892:29;:::i;:::-;1882:39;;1940:38;1974:2;1963:9;1959:18;1940:38;:::i;:::-;1930:48;;2025:2;2014:9;2010:18;1997:32;1987:42;;1707:328;;;;;:::o;2460:186::-;2519:6;2572:2;2560:9;2551:7;2547:23;2543:32;2540:52;;;2588:1;2585;2578:12;2540:52;2611:29;2630:9;2611:29;:::i;2651:248::-;2719:6;2727;2780:2;2768:9;2759:7;2755:23;2751:32;2748:52;;;2796:1;2793;2786:12;2748:52;-1:-1:-1;;2819:23:1;;;2889:2;2874:18;;;2861:32;;-1:-1:-1;2651:248:1:o;2904:260::-;2972:6;2980;3033:2;3021:9;3012:7;3008:23;3004:32;3001:52;;;3049:1;3046;3039:12;3001:52;3072:29;3091:9;3072:29;:::i;:::-;3062:39;;3120:38;3154:2;3143:9;3139:18;3120:38;:::i;:::-;3110:48;;2904:260;;;;;:::o;6369:127::-;6430:10;6425:3;6421:20;6418:1;6411:31;6461:4;6458:1;6451:15;6485:4;6482:1;6475:15;6501:125;6541:4;6569:1;6566;6563:8;6560:34;;;6574:18;;:::i;:::-;-1:-1:-1;6611:9:1;;6501:125::o;7042:217::-;7082:1;7108;7098:132;;7152:10;7147:3;7143:20;7140:1;7133:31;7187:4;7184:1;7177:15;7215:4;7212:1;7205:15;7098:132;-1:-1:-1;7244:9:1;;7042:217::o;7264:128::-;7304:3;7335:1;7331:6;7328:1;7325:13;7322:39;;;7341:18;;:::i;:::-;-1:-1:-1;7377:9:1;;7264:128::o;7753:168::-;7793:7;7859:1;7855;7851:6;7847:14;7844:1;7841:21;7836:1;7829:9;7822:17;7818:45;7815:71;;;7866:18;;:::i;:::-;-1:-1:-1;7906:9:1;;7753:168::o

Swarm Source

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