ETH Price: $2,384.39 (+1.59%)

Token

Paper (A4)
 

Overview

Max Total Supply

100,000,000 A4

Holders

33

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 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:
PaperToken

Compiler Version
v0.8.20+commit.a1b79de6

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: Unlicensed

// 🌐Website: https://papercoin.vip
// ✈️Telegram: https://t.me/PaperCoinETH
// 🐦Twitter: https://twitter.com/PaperCoinETH

pragma solidity 0.8.20;

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

}

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

}

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

contract PaperToken is Context, IERC20, Ownable {
    using SafeMath for uint256;
    
    mapping (address => bool) private _isExcludedFromFee;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    string private constant _name = unicode"Paper";
    string private constant _symbol = unicode"A4";

    uint8 private constant _decimals = 18;
    uint256 private constant _tTotal = 100000000 * 10**_decimals;

    uint256 private _initialBuyTax=25;
    uint256 private _initialSellTax=30;
    uint256 private _finalBuyTax=2;
    uint256 private _finalSellTax=2;
    uint256 private _reduceBuyTaxAt=25;
    uint256 private _reduceSellTaxAt=40;
    uint256 private _buyCount;

    uint256 public _maxWalletSize = _tTotal * 2 / 100;
    uint256 private _taxSwapThreshold= _tTotal / 200;
    uint256 private _maxTaxSwap= _tTotal / 200;
    
    bool public tradingOpen;
    bool private inSwap;
    bool private swapEnabled;

    address payable private _taxWallet;
    address private uniswapV2Pair;
    IUniswapV2Router02 private uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);

    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _taxWallet = payable(_msgSender());
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _isExcludedFromFee[_taxWallet] = true;
        _isExcludedFromFee[address(uniswapV2Router)] = true;
        _approve(msg.sender, address(this), type(uint256).max);
        _approve(address(this), address(uniswapV2Router), type(uint256).max);
        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 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 _balances[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 _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(amount > 0, "Transfer amount must be greater than zero!");
        uint256 taxAmount=0;
        if (!_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
            require(tradingOpen, "Trading not active yet!");
            taxAmount = amount.mul((_buyCount>_reduceBuyTaxAt)?_finalBuyTax:_initialBuyTax).div(100);

            if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize!");
                _buyCount++;
            }

            if (to != uniswapV2Pair && ! _isExcludedFromFee[to]) {
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize!");
            }

            if(to == uniswapV2Pair && from!= address(this) ){
                taxAmount = amount.mul((_buyCount>_reduceSellTaxAt)?_finalSellTax:_initialSellTax).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to   == uniswapV2Pair && swapEnabled && contractTokenBalance>_taxSwapThreshold) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                    sendETHToFee(address(this).balance);
                }
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }


    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

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

    function startTrading() external onlyOwner() {
        require(!tradingOpen);
        swapEnabled = true;
        tradingOpen = true;
    }

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

    function removeLimits() external onlyOwner{
        _maxWalletSize=_tTotal;
    }

    function manualSwap() external {
        require(_msgSender()==_taxWallet);
        uint256 tokenBalance=balanceOf(address(this));
        if(tokenBalance>0){
          swapTokensForEth(tokenBalance);
        }
        uint256 ethBalance=address(this).balance;
        if(ethBalance>0){
          sendETHToFee(ethBalance);
        }
    }

    receive() external payable {}
}

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":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"manualSwap","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":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"startTrading","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":[],"name":"tradingOpen","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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"}]

60806040526019600455601e600555600260065560026007556019600855602860095560646012600a62000034919062000644565b62000044906305f5e1006200065b565b620000519060026200065b565b6200005d919062000675565b600b5560c8620000706012600a62000644565b62000080906305f5e1006200065b565b6200008c919062000675565b600c5560c86200009f6012600a62000644565b620000af906305f5e1006200065b565b620000bb919062000675565b600d55601080546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d179055348015620000f0575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a35060105f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000182573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001a8919062000695565b6001600160a01b031663c9c653963060105f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000208573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200022e919062000695565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000279573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200029f919062000695565b600f80546001600160a01b0319166001600160a01b0392909216919091179055620002c73390565b600e80546001600160a01b03929092166301000000026301000000600160b81b0319909216919091179055620003006012600a62000644565b62000310906305f5e1006200065b565b335f8181526002602090815260408083209490945581546001600160a01b039081168352600191829052848320805460ff199081168417909155308085528685208054831685179055600e546301000000900483168552868520805483168517905560105490921684529490922080549094161790925562000394915f1962000407565b601054620003af9030906001600160a01b03165f1962000407565b335f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003e06012600a62000644565b620003f0906305f5e1006200065b565b60405190815260200160405180910390a3620006bd565b6001600160a01b038316620004715760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f20616464604482015264726573732160d81b60648201526084015b60405180910390fd5b6001600160a01b038216620004d55760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526273732160e81b606482015260840162000468565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200058957815f19048211156200056d576200056d62000535565b808516156200057b57918102915b93841c93908002906200054e565b509250929050565b5f82620005a1575060016200063e565b81620005af57505f6200063e565b8160018114620005c85760028114620005d357620005f3565b60019150506200063e565b60ff841115620005e757620005e762000535565b50506001821b6200063e565b5060208310610133831016604e8410600b841016171562000618575081810a6200063e565b62000624838362000549565b805f19048211156200063a576200063a62000535565b0290505b92915050565b5f6200065460ff84168362000591565b9392505050565b80820281158282048414176200063e576200063e62000535565b5f826200069057634e487b7160e01b5f52601260045260245ffd5b500490565b5f60208284031215620006a6575f80fd5b81516001600160a01b038116811462000654575f80fd5b61126b80620006cb5f395ff3fe6080604052600436106100f2575f3560e01c8063715018a61161008757806395d89b411161005757806395d89b4114610288578063a9059cbb146102b2578063dd62ed3e146102d1578063ffb54a9914610315575f80fd5b8063715018a614610225578063751039fc146102395780638da5cb5b1461024d5780638f9a55c014610273575f80fd5b8063293230b8116100c2578063293230b8146101ac578063313ce567146101c257806351bc3c85146101dd57806370a08231146101f1575f80fd5b806306fdde03146100fd578063095ea7b31461013c57806318160ddd1461016b57806323b872dd1461018d575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b506040805180820190915260058152642830b832b960d91b60208201525b6040516101339190610ea8565b60405180910390f35b348015610147575f80fd5b5061015b610156366004610f0a565b61032e565b6040519015158152602001610133565b348015610176575f80fd5b5061017f610344565b604051908152602001610133565b348015610198575f80fd5b5061015b6101a7366004610f34565b610364565b3480156101b7575f80fd5b506101c06103cb565b005b3480156101cd575f80fd5b5060405160128152602001610133565b3480156101e8575f80fd5b506101c061041f565b3480156101fc575f80fd5b5061017f61020b366004610f72565b6001600160a01b03165f9081526002602052604090205490565b348015610230575f80fd5b506101c0610477565b348015610244575f80fd5b506101c06104e8565b348015610258575f80fd5b505f546040516001600160a01b039091168152602001610133565b34801561027e575f80fd5b5061017f600b5481565b348015610293575f80fd5b50604080518082019091526002815261104d60f21b6020820152610126565b3480156102bd575f80fd5b5061015b6102cc366004610f0a565b610530565b3480156102dc575f80fd5b5061017f6102eb366004610f8d565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b348015610320575f80fd5b50600e5461015b9060ff1681565b5f61033a33848461053c565b5060015b92915050565b5f6103516012600a6110b8565b61035f906305f5e1006110c6565b905090565b5f610370848484610662565b6103c184336103bc8560405180606001604052806028815260200161120e602891396001600160a01b038a165f9081526003602090815260408083203384529091529020549190610b3d565b61053c565b5060019392505050565b5f546001600160a01b031633146103fd5760405162461bcd60e51b81526004016103f4906110dd565b60405180910390fd5b600e5460ff161561040c575f80fd5b600e805462ff00ff191662010001179055565b600e54630100000090046001600160a01b0316336001600160a01b031614610445575f80fd5b305f9081526002602052604090205480156104635761046381610b75565b4780156104735761047381610cc6565b5050565b5f546001600160a01b031633146104a05760405162461bcd60e51b81526004016103f4906110dd565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105115760405162461bcd60e51b81526004016103f4906110dd565b61051d6012600a6110b8565b61052b906305f5e1006110c6565b600b55565b5f61033a338484610662565b6001600160a01b0383166105a05760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f20616464604482015264726573732160d81b60648201526084016103f4565b6001600160a01b0382166106025760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526273732160e81b60648201526084016103f4565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f81116106c45760405162461bcd60e51b815260206004820152602a60248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152697468616e207a65726f2160b01b60648201526084016103f4565b6001600160a01b0383165f9081526001602052604081205460ff1615801561070457506001600160a01b0383165f9081526001602052604090205460ff16155b15610a0057600e5460ff1661075b5760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f7420616374697665207965742100000000000000000060448201526064016103f4565b6107876064610781600854600a54116107765760045461077a565b6006545b8590610d03565b90610d88565b600f549091506001600160a01b0385811691161480156107b557506010546001600160a01b03848116911614155b80156107d957506001600160a01b0383165f9081526001602052604090205460ff16155b1561086d57600b5482610800856001600160a01b03165f9081526002602052604090205490565b61080a9190611112565b11156108585760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652100000000000060448201526064016103f4565b600a8054905f61086783611125565b91905055505b600f546001600160a01b038481169116148015906108a357506001600160a01b0383165f9081526001602052604090205460ff16155b1561092257600b54826108ca856001600160a01b03165f9081526002602052604090205490565b6108d49190611112565b11156109225760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652100000000000060448201526064016103f4565b600f546001600160a01b03848116911614801561094857506001600160a01b0384163014155b15610975576109726064610781600954600a54116109685760055461077a565b6007548590610d03565b90505b305f90815260026020526040902054600e54610100900460ff161580156109a95750600f546001600160a01b038581169116145b80156109bd5750600e5462010000900460ff165b80156109ca5750600c5481115b156109fe576109ec6109e7846109e284600d54610dc9565b610dc9565b610b75565b4780156109fc576109fc47610cc6565b505b505b8015610a7857305f90815260026020526040902054610a1f9082610ddd565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a6f9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260026020526040902054610a9a9083610e3b565b6001600160a01b0385165f90815260026020526040902055610add610abf8383610e3b565b6001600160a01b0385165f9081526002602052604090205490610ddd565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610b268585610e3b565b60405190815260200160405180910390a350505050565b5f8184841115610b605760405162461bcd60e51b81526004016103f49190610ea8565b505f610b6c848661113d565b95945050505050565b600e805461ff0019166101001790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610bb757610bb7611150565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610c0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c329190611164565b81600181518110610c4557610c45611150565b6001600160a01b03928316602091820292909201015260105460405163791ac94760e01b815291169063791ac94790610c8a9085905f9086903090429060040161117f565b5f604051808303815f87803b158015610ca1575f80fd5b505af1158015610cb3573d5f803e3d5ffd5b5050600e805461ff001916905550505050565b600e5460405163010000009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015610473573d5f803e3d5ffd5b5f825f03610d1257505f61033e565b5f610d1d83856110c6565b905082610d2a85836111ee565b14610d815760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103f4565b9392505050565b5f610d8183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610e7c565b5f818311610dd75782610d81565b50919050565b5f80610de98385611112565b905083811015610d815760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103f4565b5f610d8183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b3d565b5f8183610e9c5760405162461bcd60e51b81526004016103f49190610ea8565b505f610b6c84866111ee565b5f6020808352835180828501525f5b81811015610ed357858101830151858201604001528201610eb7565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610f07575f80fd5b50565b5f8060408385031215610f1b575f80fd5b8235610f2681610ef3565b946020939093013593505050565b5f805f60608486031215610f46575f80fd5b8335610f5181610ef3565b92506020840135610f6181610ef3565b929592945050506040919091013590565b5f60208284031215610f82575f80fd5b8135610d8181610ef3565b5f8060408385031215610f9e575f80fd5b8235610fa981610ef3565b91506020830135610fb981610ef3565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561101257815f1904821115610ff857610ff8610fc4565b8085161561100557918102915b93841c9390800290610fdd565b509250929050565b5f826110285750600161033e565b8161103457505f61033e565b816001811461104a576002811461105457611070565b600191505061033e565b60ff84111561106557611065610fc4565b50506001821b61033e565b5060208310610133831016604e8410600b8410161715611093575081810a61033e565b61109d8383610fd8565b805f19048211156110b0576110b0610fc4565b029392505050565b5f610d8160ff84168361101a565b808202811582820484141761033e5761033e610fc4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561033e5761033e610fc4565b5f6001820161113657611136610fc4565b5060010190565b8181038181111561033e5761033e610fc4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611174575f80fd5b8151610d8181610ef3565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156111cd5784516001600160a01b0316835293830193918301916001016111a8565b50506001600160a01b03969096166060850152505050608001529392505050565b5f8261120857634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ebc1c10b8b07c87bee4ab900c31a3b9b9290dded884d396b96a8207e4efcf8dd64736f6c63430008140033

Deployed Bytecode

0x6080604052600436106100f2575f3560e01c8063715018a61161008757806395d89b411161005757806395d89b4114610288578063a9059cbb146102b2578063dd62ed3e146102d1578063ffb54a9914610315575f80fd5b8063715018a614610225578063751039fc146102395780638da5cb5b1461024d5780638f9a55c014610273575f80fd5b8063293230b8116100c2578063293230b8146101ac578063313ce567146101c257806351bc3c85146101dd57806370a08231146101f1575f80fd5b806306fdde03146100fd578063095ea7b31461013c57806318160ddd1461016b57806323b872dd1461018d575f80fd5b366100f957005b5f80fd5b348015610108575f80fd5b506040805180820190915260058152642830b832b960d91b60208201525b6040516101339190610ea8565b60405180910390f35b348015610147575f80fd5b5061015b610156366004610f0a565b61032e565b6040519015158152602001610133565b348015610176575f80fd5b5061017f610344565b604051908152602001610133565b348015610198575f80fd5b5061015b6101a7366004610f34565b610364565b3480156101b7575f80fd5b506101c06103cb565b005b3480156101cd575f80fd5b5060405160128152602001610133565b3480156101e8575f80fd5b506101c061041f565b3480156101fc575f80fd5b5061017f61020b366004610f72565b6001600160a01b03165f9081526002602052604090205490565b348015610230575f80fd5b506101c0610477565b348015610244575f80fd5b506101c06104e8565b348015610258575f80fd5b505f546040516001600160a01b039091168152602001610133565b34801561027e575f80fd5b5061017f600b5481565b348015610293575f80fd5b50604080518082019091526002815261104d60f21b6020820152610126565b3480156102bd575f80fd5b5061015b6102cc366004610f0a565b610530565b3480156102dc575f80fd5b5061017f6102eb366004610f8d565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b348015610320575f80fd5b50600e5461015b9060ff1681565b5f61033a33848461053c565b5060015b92915050565b5f6103516012600a6110b8565b61035f906305f5e1006110c6565b905090565b5f610370848484610662565b6103c184336103bc8560405180606001604052806028815260200161120e602891396001600160a01b038a165f9081526003602090815260408083203384529091529020549190610b3d565b61053c565b5060019392505050565b5f546001600160a01b031633146103fd5760405162461bcd60e51b81526004016103f4906110dd565b60405180910390fd5b600e5460ff161561040c575f80fd5b600e805462ff00ff191662010001179055565b600e54630100000090046001600160a01b0316336001600160a01b031614610445575f80fd5b305f9081526002602052604090205480156104635761046381610b75565b4780156104735761047381610cc6565b5050565b5f546001600160a01b031633146104a05760405162461bcd60e51b81526004016103f4906110dd565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146105115760405162461bcd60e51b81526004016103f4906110dd565b61051d6012600a6110b8565b61052b906305f5e1006110c6565b600b55565b5f61033a338484610662565b6001600160a01b0383166105a05760405162461bcd60e51b815260206004820152602560248201527f45524332303a20617070726f76652066726f6d20746865207a65726f20616464604482015264726573732160d81b60648201526084016103f4565b6001600160a01b0382166106025760405162461bcd60e51b815260206004820152602360248201527f45524332303a20617070726f766520746f20746865207a65726f20616464726560448201526273732160e81b60648201526084016103f4565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b5f81116106c45760405162461bcd60e51b815260206004820152602a60248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152697468616e207a65726f2160b01b60648201526084016103f4565b6001600160a01b0383165f9081526001602052604081205460ff1615801561070457506001600160a01b0383165f9081526001602052604090205460ff16155b15610a0057600e5460ff1661075b5760405162461bcd60e51b815260206004820152601760248201527f54726164696e67206e6f7420616374697665207965742100000000000000000060448201526064016103f4565b6107876064610781600854600a54116107765760045461077a565b6006545b8590610d03565b90610d88565b600f549091506001600160a01b0385811691161480156107b557506010546001600160a01b03848116911614155b80156107d957506001600160a01b0383165f9081526001602052604090205460ff16155b1561086d57600b5482610800856001600160a01b03165f9081526002602052604090205490565b61080a9190611112565b11156108585760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652100000000000060448201526064016103f4565b600a8054905f61086783611125565b91905055505b600f546001600160a01b038481169116148015906108a357506001600160a01b0383165f9081526001602052604090205460ff16155b1561092257600b54826108ca856001600160a01b03165f9081526002602052604090205490565b6108d49190611112565b11156109225760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652100000000000060448201526064016103f4565b600f546001600160a01b03848116911614801561094857506001600160a01b0384163014155b15610975576109726064610781600954600a54116109685760055461077a565b6007548590610d03565b90505b305f90815260026020526040902054600e54610100900460ff161580156109a95750600f546001600160a01b038581169116145b80156109bd5750600e5462010000900460ff165b80156109ca5750600c5481115b156109fe576109ec6109e7846109e284600d54610dc9565b610dc9565b610b75565b4780156109fc576109fc47610cc6565b505b505b8015610a7857305f90815260026020526040902054610a1f9082610ddd565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610a6f9085815260200190565b60405180910390a35b6001600160a01b0384165f90815260026020526040902054610a9a9083610e3b565b6001600160a01b0385165f90815260026020526040902055610add610abf8383610e3b565b6001600160a01b0385165f9081526002602052604090205490610ddd565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610b268585610e3b565b60405190815260200160405180910390a350505050565b5f8184841115610b605760405162461bcd60e51b81526004016103f49190610ea8565b505f610b6c848661113d565b95945050505050565b600e805461ff0019166101001790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610bb757610bb7611150565b6001600160a01b03928316602091820292909201810191909152601054604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610c0e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c329190611164565b81600181518110610c4557610c45611150565b6001600160a01b03928316602091820292909201015260105460405163791ac94760e01b815291169063791ac94790610c8a9085905f9086903090429060040161117f565b5f604051808303815f87803b158015610ca1575f80fd5b505af1158015610cb3573d5f803e3d5ffd5b5050600e805461ff001916905550505050565b600e5460405163010000009091046001600160a01b0316906108fc8315029083905f818181858888f19350505050158015610473573d5f803e3d5ffd5b5f825f03610d1257505f61033e565b5f610d1d83856110c6565b905082610d2a85836111ee565b14610d815760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103f4565b9392505050565b5f610d8183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610e7c565b5f818311610dd75782610d81565b50919050565b5f80610de98385611112565b905083811015610d815760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103f4565b5f610d8183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610b3d565b5f8183610e9c5760405162461bcd60e51b81526004016103f49190610ea8565b505f610b6c84866111ee565b5f6020808352835180828501525f5b81811015610ed357858101830151858201604001528201610eb7565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610f07575f80fd5b50565b5f8060408385031215610f1b575f80fd5b8235610f2681610ef3565b946020939093013593505050565b5f805f60608486031215610f46575f80fd5b8335610f5181610ef3565b92506020840135610f6181610ef3565b929592945050506040919091013590565b5f60208284031215610f82575f80fd5b8135610d8181610ef3565b5f8060408385031215610f9e575f80fd5b8235610fa981610ef3565b91506020830135610fb981610ef3565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561101257815f1904821115610ff857610ff8610fc4565b8085161561100557918102915b93841c9390800290610fdd565b509250929050565b5f826110285750600161033e565b8161103457505f61033e565b816001811461104a576002811461105457611070565b600191505061033e565b60ff84111561106557611065610fc4565b50506001821b61033e565b5060208310610133831016604e8410600b8410161715611093575081810a61033e565b61109d8383610fd8565b805f19048211156110b0576110b0610fc4565b029392505050565b5f610d8160ff84168361101a565b808202811582820484141761033e5761033e610fc4565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b8082018082111561033e5761033e610fc4565b5f6001820161113657611136610fc4565b5060010190565b8181038181111561033e5761033e610fc4565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611174575f80fd5b8151610d8181610ef3565b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b818110156111cd5784516001600160a01b0316835293830193918301916001016111a8565b50506001600160a01b03969096166060850152505050608001529392505050565b5f8261120857634e487b7160e01b5f52601260045260245ffd5b50049056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220ebc1c10b8b07c87bee4ab900c31a3b9b9290dded884d396b96a8207e4efcf8dd64736f6c63430008140033

Deployed Bytecode Sourcemap

3618:6778:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5589:83;;;;;;;;;;-1:-1:-1;5659:5:0;;;;;;;;;;;;-1:-1:-1;;;5659:5:0;;;;5589:83;;;;;;;:::i;:::-;;;;;;;;6422:161;;;;;;;;;;-1:-1:-1;6422:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6422:161:0;1023:187:1;5866:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5866:95:0;1215:177:1;6591:313:0;;;;;;;;;;-1:-1:-1;6591:313:0;;;;;:::i;:::-;;:::i;9666:143::-;;;;;;;;;;;;;:::i;:::-;;5775:83;;;;;;;;;;-1:-1:-1;5775:83:0;;4042:2;2000:36:1;;1988:2;1973:18;5775:83:0;1858:184:1;10008:348:0;;;;;;;;;;;;;:::i;5969:119::-;;;;;;;;;;-1:-1:-1;5969:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6062:18:0;6035:7;6062:18;;;:9;:18;;;;;;;5969:119;2699:148;;;;;;;;;;;;;:::i;9917:83::-;;;;;;;;;;;;;:::i;2485:79::-;;;;;;;;;;-1:-1:-1;2523:7:0;2550:6;2485:79;;-1:-1:-1;;;;;2550:6:0;;;2445:51:1;;2433:2;2418:18;2485:79:0;2299:203:1;4393:49:0;;;;;;;;;;;;;;;;5680:87;;;;;;;;;;-1:-1:-1;5752:7:0;;;;;;;;;;;;-1:-1:-1;;;5752:7:0;;;;5680:87;;6096:167;;;;;;;;;;-1:-1:-1;6096:167:0;;;;;:::i;:::-;;:::i;6271:143::-;;;;;;;;;;-1:-1:-1;6271:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6379:18:0;;;6352:7;6379:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6271:143;4559:23;;;;;;;;;;-1:-1:-1;4559:23:0;;;;;;;;6422:161;6497:4;6514:39;319:10;6537:7;6546:6;6514:8;:39::i;:::-;-1:-1:-1;6571:4:0;6422:161;;;;;:::o;5866:95::-;5919:7;4098:13;4042:2;4098;:13;:::i;:::-;4086:25;;:9;:25;:::i;:::-;5939:14;;5866:95;:::o;6591:313::-;6689:4;6706:36;6716:6;6724:9;6735:6;6706:9;:36::i;:::-;6753:121;6762:6;319:10;6784:89;6822:6;6784:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6784:19:0;;;;;;:11;:19;;;;;;;;319:10;6784:33;;;;;;;;;;:37;:89::i;:::-;6753:8;:121::i;:::-;-1:-1:-1;6892:4:0;6591:313;;;;;:::o;9666:143::-;2612:6;;-1:-1:-1;;;;;2612:6:0;319:10;2612:22;2604:67;;;;-1:-1:-1;;;2604:67:0;;;;;;;:::i;:::-;;;;;;;;;9731:11:::1;::::0;::::1;;9730:12;9722:21;;;::::0;::::1;;9754:11;:18:::0;;-1:-1:-1;;9783:18:0;;;;;9666:143::o;10008:348::-;10072:10;;;;;-1:-1:-1;;;;;10072:10:0;319;-1:-1:-1;;;;;10058:24:0;;10050:33;;;;;;10133:4;10094:20;6062:18;;;:9;:18;;;;;;10153:14;;10150:73;;10181:30;10198:12;10181:16;:30::i;:::-;10252:21;10287:12;;10284:65;;10313:24;10326:10;10313:12;:24::i;:::-;10039:317;;10008:348::o;2699:148::-;2612:6;;-1:-1:-1;;;;;2612:6:0;319:10;2612:22;2604:67;;;;-1:-1:-1;;;2604:67:0;;;;;;;:::i;:::-;2806:1:::1;2790:6:::0;;2769:40:::1;::::0;-1:-1:-1;;;;;2790:6:0;;::::1;::::0;2769:40:::1;::::0;2806:1;;2769:40:::1;2837:1;2820:19:::0;;-1:-1:-1;;;;;;2820:19:0::1;::::0;;2699:148::o;9917:83::-;2612:6;;-1:-1:-1;;;;;2612:6:0;319:10;2612:22;2604:67;;;;-1:-1:-1;;;2604:67:0;;;;;;;:::i;:::-;4098:13:::1;4042:2;4098;:13;:::i;:::-;4086:25;::::0;:9:::1;:25;:::i;:::-;9970:14;:22:::0;9917:83::o;6096:167::-;6174:4;6191:42;319:10;6215:9;6226:6;6191:9;:42::i;6912:337::-;-1:-1:-1;;;;;7005:19:0;;6997:69;;;;-1:-1:-1;;;6997:69:0;;5151:2:1;6997:69:0;;;5133:21:1;5190:2;5170:18;;;5163:30;5229:34;5209:18;;;5202:62;-1:-1:-1;;;5280:18:1;;;5273:35;5325:19;;6997:69:0;4949:401:1;6997:69:0;-1:-1:-1;;;;;7085:21:0;;7077:69;;;;-1:-1:-1;;;7077:69:0;;5557:2:1;7077:69:0;;;5539:21:1;5596:2;5576:18;;;5569:30;5635:34;5615:18;;;5608:62;-1:-1:-1;;;5686:18:1;;;5679:33;5729:19;;7077:69:0;5355:399:1;7077:69:0;-1:-1:-1;;;;;7157:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7209:32;;1361:25:1;;;7209:32:0;;1334:18:1;7209:32:0;;;;;;;6912:337;;;:::o;7257:1875::-;7354:1;7345:6;:10;7337:65;;;;-1:-1:-1;;;7337:65:0;;5961:2:1;7337:65:0;;;5943:21:1;6000:2;5980:18;;;5973:30;6039:34;6019:18;;;6012:62;-1:-1:-1;;;6090:18:1;;;6083:40;6140:19;;7337:65:0;5759:406:1;7337:65:0;-1:-1:-1;;;;;7448:24:0;;7413:17;7448:24;;;:18;:24;;;;;;;;7447:25;:52;;;;-1:-1:-1;;;;;;7477:22:0;;;;;;:18;:22;;;;;;;;7476:23;7447:52;7443:1333;;;7524:11;;;;7516:47;;;;-1:-1:-1;;;7516:47:0;;6372:2:1;7516:47:0;;;6354:21:1;6411:2;6391:18;;;6384:30;6450:25;6430:18;;;6423:53;6493:18;;7516:47:0;6170:347:1;7516:47:0;7590:76;7662:3;7590:67;7612:15;;7602:9;;:25;7601:55;;7642:14;;7601:55;;;7629:12;;7601:55;7590:6;;:10;:67::i;:::-;:71;;:76::i;:::-;7695:13;;7578:88;;-1:-1:-1;;;;;;7687:21:0;;;7695:13;;7687:21;:55;;;;-1:-1:-1;7726:15:0;;-1:-1:-1;;;;;7712:30:0;;;7726:15;;7712:30;;7687:55;:83;;;;-1:-1:-1;;;;;;7748:22:0;;;;;;:18;:22;;;;;;;;7746:24;7687:83;7683:234;;;7826:14;;7816:6;7800:13;7810:2;-1:-1:-1;;;;;6062:18:0;6035:7;6062:18;;;:9;:18;;;;;;;5969:119;7800:13;:22;;;;:::i;:::-;:40;;7792:79;;;;-1:-1:-1;;;7792:79:0;;6854:2:1;7792:79:0;;;6836:21:1;6893:2;6873:18;;;6866:30;6932:28;6912:18;;;6905:56;6978:18;;7792:79:0;6652:350:1;7792:79:0;7890:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7683:234;7943:13;;-1:-1:-1;;;;;7937:19:0;;;7943:13;;7937:19;;;;:47;;-1:-1:-1;;;;;;7962:22:0;;;;;;:18;:22;;;;;;;;7960:24;7937:47;7933:167;;;8039:14;;8029:6;8013:13;8023:2;-1:-1:-1;;;;;6062:18:0;6035:7;6062:18;;;:9;:18;;;;;;;5969:119;8013:13;:22;;;;:::i;:::-;:40;;8005:79;;;;-1:-1:-1;;;8005:79:0;;6854:2:1;8005:79:0;;;6836:21:1;6893:2;6873:18;;;6866:30;6932:28;6912:18;;;6905:56;6978:18;;8005:79:0;6652:350:1;8005:79:0;8125:13;;-1:-1:-1;;;;;8119:19:0;;;8125:13;;8119:19;:43;;;;-1:-1:-1;;;;;;8142:20:0;;8157:4;8142:20;;8119:43;8116:174;;;8195:79;8270:3;8195:70;8217:16;;8207:9;;:26;8206:58;;8249:15;;8206:58;;;8235:13;;8195:6;;:10;:70::i;:79::-;8183:91;;8116:174;8355:4;8306:28;6062:18;;;:9;:18;;;;;;8381:6;;;;;;;8380:7;:32;;;;-1:-1:-1;8399:13:0;;-1:-1:-1;;;;;8391:21:0;;;8399:13;;8391:21;8380:32;:47;;;;-1:-1:-1;8416:11:0;;;;;;;8380:47;:89;;;;;8452:17;;8431:20;:38;8380:89;8376:389;;;8490:67;8507:49;8511:6;8518:37;8522:20;8543:11;;8518:3;:37::i;:::-;8507:3;:49::i;:::-;8490:16;:67::i;:::-;8605:21;8648:22;;8645:105;;8695:35;8708:21;8695:12;:35::i;:::-;8471:294;8376:389;7501:1275;7443:1333;8791:11;;8788:161;;8859:4;8841:24;;;;:9;:24;;;;;;:39;;8870:9;8841:28;:39::i;:::-;8834:4;8816:24;;;;:9;:24;;;;;;;:64;;;;8898:39;;-1:-1:-1;;;;;8898:39:0;;;;;;;8927:9;1361:25:1;;1349:2;1334:18;;1215:177;8898:39:0;;;;;;;;8788:161;-1:-1:-1;;;;;8975:15:0;;;;;;:9;:15;;;;;;:27;;8995:6;8975:19;:27::i;:::-;-1:-1:-1;;;;;8959:15:0;;;;;;:9;:15;;;;;:43;9027:40;9045:21;:6;9056:9;9045:10;:21::i;:::-;-1:-1:-1;;;;;9027:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9013:13:0;;;;;;;:9;:13;;;;;:54;;;;9083:41;;;9102:21;:6;9113:9;9102:10;:21::i;:::-;9083:41;;1361:25:1;;;1349:2;1334:18;9083:41:0;;;;;;;7326:1806;7257:1875;;;:::o;1377:190::-;1463:7;1499:12;1491:6;;;;1483:29;;;;-1:-1:-1;;;1483:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1523:9:0;1535:5;1539:1;1535;:5;:::i;:::-;1523:17;1377:190;-1:-1:-1;;;;;1377:190:0:o;9248:410::-;4873:6;:13;;-1:-1:-1;;4873:13:0;;;;;9350:16:::1;::::0;;9364:1:::1;9350:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9350:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9350:16:0::1;9326:40;;9395:4;9377;9382:1;9377:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9377:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9421:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9421:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9377:7;;9421:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9411:4;9416:1;9411:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9411:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9454:15:::1;::::0;:196:::1;::::0;-1:-1:-1;;;9454:196:0;;:15;::::1;::::0;:66:::1;::::0;:196:::1;::::0;9535:11;;9454:15:::1;::::0;9577:4;;9604::::1;::::0;9624:15:::1;::::0;9454:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4909:6:0;:14;;-1:-1:-1;;4909:14:0;;;-1:-1:-1;;;;9248:410:0:o;9817:92::-;9874:10;;:27;;:10;;;;-1:-1:-1;;;;;9874:10:0;;:27;;;;;;;;;;;;:10;:27;;;;;;;;;;;;;;;;;;;1575:246;1633:7;1657:1;1662;1657:6;1653:47;;-1:-1:-1;1687:1:0;1680:8;;1653:47;1710:9;1722:5;1726:1;1722;:5;:::i;:::-;1710:17;-1:-1:-1;1755:1:0;1746:5;1750:1;1710:17;1746:5;:::i;:::-;:10;1738:56;;;;-1:-1:-1;;;1738:56:0;;9209:2:1;1738:56:0;;;9191:21:1;9248:2;9228:18;;;9221:30;9287:34;9267:18;;;9260:62;-1:-1:-1;;;9338:18:1;;;9331:31;9379:19;;1738:56:0;9007:397:1;1738:56:0;1812:1;1575:246;-1:-1:-1;;;1575:246:0:o;1829:132::-;1887:7;1914:39;1918:1;1921;1914:39;;;;;;;;;;;;;;;;;:3;:39::i;9142:98::-;9199:7;9226:1;9224;:3;9223:9;;9231:1;9223:9;;;-1:-1:-1;9229:1:0;9142:98;-1:-1:-1;9142:98:0:o;1046:179::-;1104:7;;1136:5;1140:1;1136;:5;:::i;:::-;1124:17;;1165:1;1160;:6;;1152:46;;;;-1:-1:-1;;;1152:46:0;;9611:2:1;1152:46:0;;;9593:21:1;9650:2;9630:18;;;9623:30;9689:29;9669:18;;;9662:57;9736:18;;1152:46:0;9409:351:1;1233:136:0;1291:7;1318:43;1322:1;1325;1318:43;;;;;;;;;;;;;;;;;:3;:43::i;1969:189::-;2055:7;2090:12;2083:5;2075:28;;;;-1:-1:-1;;;2075:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2114:9:0;2126:5;2130:1;2126;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;6522:125::-;6587:9;;;6608:10;;;6605:36;;;6621:18;;:::i;7007:135::-;7046:3;7067:17;;;7064:43;;7087:18;;:::i;:::-;-1:-1:-1;7134:1:1;7123:13;;7007:135::o;7147:128::-;7214:9;;;7235:11;;;7232:37;;;7249:18;;:::i;7412:127::-;7473:10;7468:3;7464:20;7461:1;7454:31;7504:4;7501:1;7494:15;7528:4;7525:1;7518:15;7544:251;7614:6;7667:2;7655:9;7646:7;7642:23;7638:32;7635:52;;;7683:1;7680;7673:12;7635:52;7715:9;7709:16;7734:31;7759:5;7734:31;:::i;7800:980::-;8062:4;8110:3;8099:9;8095:19;8141:6;8130:9;8123:25;8167:2;8205:6;8200:2;8189:9;8185:18;8178:34;8248:3;8243:2;8232:9;8228:18;8221:31;8272:6;8307;8301:13;8338:6;8330;8323:22;8376:3;8365:9;8361:19;8354:26;;8415:2;8407:6;8403:15;8389:29;;8436:1;8446:195;8460:6;8457:1;8454:13;8446:195;;;8525:13;;-1:-1:-1;;;;;8521:39:1;8509:52;;8616:15;;;;8581:12;;;;8557:1;8475:9;8446:195;;;-1:-1:-1;;;;;;;8697:32:1;;;;8692:2;8677:18;;8670:60;-1:-1:-1;;;8761:3:1;8746:19;8739:35;8658:3;7800:980;-1:-1:-1;;;7800:980:1:o;8785:217::-;8825:1;8851;8841:132;;8895:10;8890:3;8886:20;8883:1;8876:31;8930:4;8927:1;8920:15;8958:4;8955:1;8948:15;8841:132;-1:-1:-1;8987:9:1;;8785:217::o

Swarm Source

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