ETH Price: $2,288.73 (+3.41%)

Token

CoinDuctor (CDR)
 

Overview

Max Total Supply

100,000,000 CDR

Holders

54

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
9,633,725.684145193 CDR

Value
$0.00
0x60476ecdb74ea03fd06d283bf59f1cbdb0f5daca
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:
CoinDuctor

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-12-28
*/

//SPDX-License-Identifier: Unlicensed

/**
Web: https://coinductor.org/
TG:  https://t.me/coinductorportal
X:   https://twitter.com/coinductorCOM
TG Bot: https://t.me/coinductorgems
**/

pragma solidity ^0.8.23;

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 CoinDuctor is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => uint256) private _balances;
    uint256 private constant _tTotal = 100e6 * 10 ** 9;
    uint256 private _swapTokensAtAmount = _tTotal / 1000;
    uint256 public  _maxWalletHolding = _tTotal * 2 / 100;
    uint256 private _maxTaxSwap = _tTotal / 100;
    uint8 private constant _decimals = 9;
    uint256 public _totalBuyFees=15;
    uint256 public _totalSellFees=20;
    bool private inSwap = false;
    bool private swapEnabled = true;
    address private _uniswapV2Pair;

    address payable _taxWallet;
    bool public tradingStarted;
    IUniswapV2Router02 uniswapV2Router;
    mapping (address => bool) private isExcludedFromFee;

    string private constant _name = unicode"CoinDuctor";
    string private constant _symbol = unicode"CDR";
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }

    constructor () {
        _taxWallet = payable(_msgSender());
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        isExcludedFromFee[address(this)] = true;
        _balances[msg.sender] = _tTotal;
        isExcludedFromFee[0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D] = 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 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 {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        uint256 taxAmount=0;
        if (!isExcludedFromFee[from] && !isExcludedFromFee[to] && from != owner()) {
            require(tradingStarted, "Trade is not open");

            taxAmount = amount.mul(_totalBuyFees).div(100);

            if (from == _uniswapV2Pair && !isExcludedFromFee[to]) {
                require(balanceOf(to) + amount <= _maxWalletHolding, "Max wallet reached!!");
            }

            if (to != _uniswapV2Pair && !isExcludedFromFee[to]) {
                require(balanceOf(to) + amount <= _maxWalletHolding, "Max wallet reached!!");
            }

            if(to == _uniswapV2Pair && !isExcludedFromFee[to]){
                taxAmount = amount * _totalSellFees / 100;
            }

            uint256 contractBalance = balanceOf(address(this));
            if (!inSwap && to == _uniswapV2Pair && swapEnabled && contractBalance>_swapTokensAtAmount) {
                swapTokensForEth(min(amount,min(contractBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                     _taxWallet.transfer(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();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function excludeFromFees(address account, bool status) external onlyOwner {
        isExcludedFromFee[account] = status;
    }

    function enableTrading() external onlyOwner {
        tradingStarted = true;
    }

    function setSwapEnabled(bool status) external onlyOwner {
        swapEnabled = status;
    }

    function setSwapTokensAtAmount(uint amount) external onlyOwner {
        _swapTokensAtAmount = amount;
    }

    function setMaxWallet(uint amount) external onlyOwner {
        require(amount >= _tTotal / 550, "Max wallet size can't be lower than 0.2%");
        _maxWalletHolding = amount;
    }

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

    function setFees(uint buyFees, uint sellFees) external onlyOwner {
        _totalBuyFees = buyFees;
        _totalSellFees = sellFees;
        require(buyFees <= 25 && sellFees <= 25);
    }

    receive() external payable {}
}

Contract Security Audit

Contract ABI

API
[{"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":"_maxWalletHolding","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalBuyFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_totalSellFees","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":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"excludeFromFees","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":[{"internalType":"uint256","name":"buyFees","type":"uint256"},{"internalType":"uint256","name":"sellFees","type":"uint256"}],"name":"setFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"}],"name":"setSwapEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setSwapTokensAtAmount","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":"tradingStarted","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"}]

60806040526200001a6103e867016345785d8a000062000354565b60035560646200003467016345785d8a0000600262000374565b62000040919062000354565b60045562000058606467016345785d8a000062000354565b600555600f60065560146007556008805461ffff191661010017905534801562000080575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600980546001600160a01b03199081163317909155600a8054737a250d5630b4cf539739df2c5dacb4c659f2488d9216821790556040805163c45a015560e01b8152905163c45a0155916004808201926020929091908290030181865afa1580156200012f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200015591906200039e565b6001600160a01b031663c9c6539630600a5f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001b5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190620001db91906200039e565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000226573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200024c91906200039e565b600880546001600160a01b0392909216620100000262010000600160b01b0319909216919091179055305f908152600b60208181526040808420805460ff1990811660019081179092553386526002845291852067016345785d8a00009055737a250d5630b4cf539739df2c5dacb4c659f2488d9094529190527fd1def2fe8304e5e69b6f2907349cddd4c272de4ef47368d65b87ae00d7f1014780549091169091179055620002f93390565b6001600160a01b03165f6001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef67016345785d8a00006040516200034691815260200190565b60405180910390a3620003cd565b5f826200036f57634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176200039857634e487b7160e01b5f52601160045260245ffd5b92915050565b5f60208284031215620003af575f80fd5b81516001600160a01b0381168114620003c6575f80fd5b9392505050565b6112df80620003db5f395ff3fe608060405260043610610134575f3560e01c80638a8c523c116100a8578063afa4f3b21161006d578063afa4f3b214610365578063c024666814610384578063dd62ed3e146103a3578063e01af92c146103e7578063f499133514610406578063f507de771461041b575f80fd5b80638a8c523c146102cc5780638da5cb5b146102e05780638f83745f1461030657806395d89b411461031b578063a9059cbb14610346575f80fd5b8063313ce567116100f9578063313ce567146102165780635b4f472a146102315780635d0044ca1461025157806370a0823114610270578063715018a6146102a4578063751039fc146102b8575f80fd5b806306fdde031461013f578063095ea7b3146101835780630b78f9c0146101b257806318160ddd146101d357806323b872dd146101f7575f80fd5b3661013b57005b5f80fd5b34801561014a575f80fd5b5060408051808201909152600a81526921b7b4b7223ab1ba37b960b11b60208201525b60405161017a9190610f88565b60405180910390f35b34801561018e575f80fd5b506101a261019d366004610feb565b610430565b604051901515815260200161017a565b3480156101bd575f80fd5b506101d16101cc366004611015565b610446565b005b3480156101de575f80fd5b5067016345785d8a00005b60405190815260200161017a565b348015610202575f80fd5b506101a2610211366004611035565b6104a0565b348015610221575f80fd5b506040516009815260200161017a565b34801561023c575f80fd5b506009546101a290600160a01b900460ff1681565b34801561025c575f80fd5b506101d161026b366004611073565b610507565b34801561027b575f80fd5b506101e961028a36600461108a565b6001600160a01b03165f9081526002602052604090205490565b3480156102af575f80fd5b506101d16105a9565b3480156102c3575f80fd5b506101d161061a565b3480156102d7575f80fd5b506101d1610651565b3480156102eb575f80fd5b505f546040516001600160a01b03909116815260200161017a565b348015610311575f80fd5b506101e960065481565b348015610326575f80fd5b5060408051808201909152600381526221a22960e91b602082015261016d565b348015610351575f80fd5b506101a2610360366004610feb565b61068f565b348015610370575f80fd5b506101d161037f366004611073565b61069b565b34801561038f575f80fd5b506101d161039e3660046110b9565b6106c9565b3480156103ae575f80fd5b506101e96103bd3660046110ec565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156103f2575f80fd5b506101d1610401366004611123565b61071c565b348015610411575f80fd5b506101e960045481565b348015610426575f80fd5b506101e960075481565b5f61043c33848461075f565b5060015b92915050565b5f546001600160a01b031633146104785760405162461bcd60e51b815260040161046f9061113c565b60405180910390fd5b6006829055600781905560198211801590610494575060198111155b61049c575f80fd5b5050565b5f6104ac8484846107bf565b6104fd84336104f885604051806060016040528060288152602001611282602891396001600160a01b038a165f9081526001602090815260408083203384529091529020549190610c44565b61075f565b5060019392505050565b5f546001600160a01b031633146105305760405162461bcd60e51b815260040161046f9061113c565b61054461022667016345785d8a0000611185565b8110156105a45760405162461bcd60e51b815260206004820152602860248201527f4d61782077616c6c65742073697a652063616e2774206265206c6f776572207460448201526768616e20302e322560c01b606482015260840161046f565b600455565b5f546001600160a01b031633146105d25760405162461bcd60e51b815260040161046f9061113c565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106435760405162461bcd60e51b815260040161046f9061113c565b67016345785d8a0000600455565b5f546001600160a01b0316331461067a5760405162461bcd60e51b815260040161046f9061113c565b6009805460ff60a01b1916600160a01b179055565b5f61043c3384846107bf565b5f546001600160a01b031633146106c45760405162461bcd60e51b815260040161046f9061113c565b600355565b5f546001600160a01b031633146106f25760405162461bcd60e51b815260040161046f9061113c565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146107455760405162461bcd60e51b815260040161046f9061113c565b600880549115156101000261ff0019909216919091179055565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383165f908152600b602052604081205460ff161580156107ff57506001600160a01b0383165f908152600b602052604090205460ff16155b801561081857505f546001600160a01b03858116911614155b15610b0757600954600160a01b900460ff1661086a5760405162461bcd60e51b81526020600482015260116024820152702a3930b2329034b9903737ba1037b832b760791b604482015260640161046f565b61088a606461088460065485610c7c90919063ffffffff16565b90610d01565b6008549091506001600160a01b0385811662010000909204161480156108c857506001600160a01b0383165f908152600b602052604090205460ff16155b1561093e57600454826108ef856001600160a01b03165f9081526002602052604090205490565b6108f991906111a4565b111561093e5760405162461bcd60e51b81526020600482015260146024820152734d61782077616c6c65742072656163686564212160601b604482015260640161046f565b6008546001600160a01b0384811662010000909204161480159061097a57506001600160a01b0383165f908152600b602052604090205460ff16155b156109f057600454826109a1856001600160a01b03165f9081526002602052604090205490565b6109ab91906111a4565b11156109f05760405162461bcd60e51b81526020600482015260146024820152734d61782077616c6c65742072656163686564212160601b604482015260640161046f565b6008546001600160a01b038481166201000090920416148015610a2b57506001600160a01b0383165f908152600b602052604090205460ff16155b15610a4d57606460075483610a4091906111b7565b610a4a9190611185565b90505b305f9081526002602052604090205460085460ff16158015610a8257506008546001600160a01b038581166201000090920416145b8015610a955750600854610100900460ff165b8015610aa2575060035481115b15610b0557610ac4610abf84610aba84600554610d42565b610d42565b610d56565b478015610b03576009546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610b01573d5f803e3d5ffd5b505b505b505b8015610b7f57305f90815260026020526040902054610b269082610ebd565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b769085815260200190565b60405180910390a35b6001600160a01b0384165f90815260026020526040902054610ba19083610f1b565b6001600160a01b0385165f90815260026020526040902055610be4610bc68383610f1b565b6001600160a01b0385165f9081526002602052604090205490610ebd565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c2d8585610f1b565b60405190815260200160405180910390a350505050565b5f8184841115610c675760405162461bcd60e51b815260040161046f9190610f88565b505f610c7384866111ce565b95945050505050565b5f825f03610c8b57505f610440565b5f610c9683856111b7565b905082610ca38583611185565b14610cfa5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161046f565b9392505050565b5f610cfa83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f5c565b5f818311610d505782610cfa565b50919050565b6008805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610d9657610d966111e1565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ded573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e1191906111f5565b81600181518110610e2457610e246111e1565b6001600160a01b039283166020918202929092010152600a54610e4a913091168461075f565b600a5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610e829085905f90869030904290600401611210565b5f604051808303815f87803b158015610e99575f80fd5b505af1158015610eab573d5f803e3d5ffd5b50506008805460ff1916905550505050565b5f80610ec983856111a4565b905083811015610cfa5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161046f565b5f610cfa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c44565b5f8183610f7c5760405162461bcd60e51b815260040161046f9190610f88565b505f610c738486611185565b5f602080835283518060208501525f5b81811015610fb457858101830151858201604001528201610f98565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610fe8575f80fd5b50565b5f8060408385031215610ffc575f80fd5b823561100781610fd4565b946020939093013593505050565b5f8060408385031215611026575f80fd5b50508035926020909101359150565b5f805f60608486031215611047575f80fd5b833561105281610fd4565b9250602084013561106281610fd4565b929592945050506040919091013590565b5f60208284031215611083575f80fd5b5035919050565b5f6020828403121561109a575f80fd5b8135610cfa81610fd4565b803580151581146110b4575f80fd5b919050565b5f80604083850312156110ca575f80fd5b82356110d581610fd4565b91506110e3602084016110a5565b90509250929050565b5f80604083850312156110fd575f80fd5b823561110881610fd4565b9150602083013561111881610fd4565b809150509250929050565b5f60208284031215611133575f80fd5b610cfa826110a5565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b5f8261119f57634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561044057610440611171565b808202811582820484141761044057610440611171565b8181038181111561044057610440611171565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611205575f80fd5b8151610cfa81610fd4565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156112605784516001600160a01b03168352938301939183019160010161123b565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220871aa4168849d3c0766bdad3c158daf9a2c413004205f04a30d51d465fd1c1b064736f6c63430008170033

Deployed Bytecode

0x608060405260043610610134575f3560e01c80638a8c523c116100a8578063afa4f3b21161006d578063afa4f3b214610365578063c024666814610384578063dd62ed3e146103a3578063e01af92c146103e7578063f499133514610406578063f507de771461041b575f80fd5b80638a8c523c146102cc5780638da5cb5b146102e05780638f83745f1461030657806395d89b411461031b578063a9059cbb14610346575f80fd5b8063313ce567116100f9578063313ce567146102165780635b4f472a146102315780635d0044ca1461025157806370a0823114610270578063715018a6146102a4578063751039fc146102b8575f80fd5b806306fdde031461013f578063095ea7b3146101835780630b78f9c0146101b257806318160ddd146101d357806323b872dd146101f7575f80fd5b3661013b57005b5f80fd5b34801561014a575f80fd5b5060408051808201909152600a81526921b7b4b7223ab1ba37b960b11b60208201525b60405161017a9190610f88565b60405180910390f35b34801561018e575f80fd5b506101a261019d366004610feb565b610430565b604051901515815260200161017a565b3480156101bd575f80fd5b506101d16101cc366004611015565b610446565b005b3480156101de575f80fd5b5067016345785d8a00005b60405190815260200161017a565b348015610202575f80fd5b506101a2610211366004611035565b6104a0565b348015610221575f80fd5b506040516009815260200161017a565b34801561023c575f80fd5b506009546101a290600160a01b900460ff1681565b34801561025c575f80fd5b506101d161026b366004611073565b610507565b34801561027b575f80fd5b506101e961028a36600461108a565b6001600160a01b03165f9081526002602052604090205490565b3480156102af575f80fd5b506101d16105a9565b3480156102c3575f80fd5b506101d161061a565b3480156102d7575f80fd5b506101d1610651565b3480156102eb575f80fd5b505f546040516001600160a01b03909116815260200161017a565b348015610311575f80fd5b506101e960065481565b348015610326575f80fd5b5060408051808201909152600381526221a22960e91b602082015261016d565b348015610351575f80fd5b506101a2610360366004610feb565b61068f565b348015610370575f80fd5b506101d161037f366004611073565b61069b565b34801561038f575f80fd5b506101d161039e3660046110b9565b6106c9565b3480156103ae575f80fd5b506101e96103bd3660046110ec565b6001600160a01b039182165f90815260016020908152604080832093909416825291909152205490565b3480156103f2575f80fd5b506101d1610401366004611123565b61071c565b348015610411575f80fd5b506101e960045481565b348015610426575f80fd5b506101e960075481565b5f61043c33848461075f565b5060015b92915050565b5f546001600160a01b031633146104785760405162461bcd60e51b815260040161046f9061113c565b60405180910390fd5b6006829055600781905560198211801590610494575060198111155b61049c575f80fd5b5050565b5f6104ac8484846107bf565b6104fd84336104f885604051806060016040528060288152602001611282602891396001600160a01b038a165f9081526001602090815260408083203384529091529020549190610c44565b61075f565b5060019392505050565b5f546001600160a01b031633146105305760405162461bcd60e51b815260040161046f9061113c565b61054461022667016345785d8a0000611185565b8110156105a45760405162461bcd60e51b815260206004820152602860248201527f4d61782077616c6c65742073697a652063616e2774206265206c6f776572207460448201526768616e20302e322560c01b606482015260840161046f565b600455565b5f546001600160a01b031633146105d25760405162461bcd60e51b815260040161046f9061113c565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106435760405162461bcd60e51b815260040161046f9061113c565b67016345785d8a0000600455565b5f546001600160a01b0316331461067a5760405162461bcd60e51b815260040161046f9061113c565b6009805460ff60a01b1916600160a01b179055565b5f61043c3384846107bf565b5f546001600160a01b031633146106c45760405162461bcd60e51b815260040161046f9061113c565b600355565b5f546001600160a01b031633146106f25760405162461bcd60e51b815260040161046f9061113c565b6001600160a01b03919091165f908152600b60205260409020805460ff1916911515919091179055565b5f546001600160a01b031633146107455760405162461bcd60e51b815260040161046f9061113c565b600880549115156101000261ff0019909216919091179055565b6001600160a01b038381165f8181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383165f908152600b602052604081205460ff161580156107ff57506001600160a01b0383165f908152600b602052604090205460ff16155b801561081857505f546001600160a01b03858116911614155b15610b0757600954600160a01b900460ff1661086a5760405162461bcd60e51b81526020600482015260116024820152702a3930b2329034b9903737ba1037b832b760791b604482015260640161046f565b61088a606461088460065485610c7c90919063ffffffff16565b90610d01565b6008549091506001600160a01b0385811662010000909204161480156108c857506001600160a01b0383165f908152600b602052604090205460ff16155b1561093e57600454826108ef856001600160a01b03165f9081526002602052604090205490565b6108f991906111a4565b111561093e5760405162461bcd60e51b81526020600482015260146024820152734d61782077616c6c65742072656163686564212160601b604482015260640161046f565b6008546001600160a01b0384811662010000909204161480159061097a57506001600160a01b0383165f908152600b602052604090205460ff16155b156109f057600454826109a1856001600160a01b03165f9081526002602052604090205490565b6109ab91906111a4565b11156109f05760405162461bcd60e51b81526020600482015260146024820152734d61782077616c6c65742072656163686564212160601b604482015260640161046f565b6008546001600160a01b038481166201000090920416148015610a2b57506001600160a01b0383165f908152600b602052604090205460ff16155b15610a4d57606460075483610a4091906111b7565b610a4a9190611185565b90505b305f9081526002602052604090205460085460ff16158015610a8257506008546001600160a01b038581166201000090920416145b8015610a955750600854610100900460ff165b8015610aa2575060035481115b15610b0557610ac4610abf84610aba84600554610d42565b610d42565b610d56565b478015610b03576009546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610b01573d5f803e3d5ffd5b505b505b505b8015610b7f57305f90815260026020526040902054610b269082610ebd565b305f81815260026020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610b769085815260200190565b60405180910390a35b6001600160a01b0384165f90815260026020526040902054610ba19083610f1b565b6001600160a01b0385165f90815260026020526040902055610be4610bc68383610f1b565b6001600160a01b0385165f9081526002602052604090205490610ebd565b6001600160a01b038085165f8181526002602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610c2d8585610f1b565b60405190815260200160405180910390a350505050565b5f8184841115610c675760405162461bcd60e51b815260040161046f9190610f88565b505f610c7384866111ce565b95945050505050565b5f825f03610c8b57505f610440565b5f610c9683856111b7565b905082610ca38583611185565b14610cfa5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161046f565b9392505050565b5f610cfa83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f5c565b5f818311610d505782610cfa565b50919050565b6008805460ff191660011790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610d9657610d966111e1565b6001600160a01b03928316602091820292909201810191909152600a54604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ded573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e1191906111f5565b81600181518110610e2457610e246111e1565b6001600160a01b039283166020918202929092010152600a54610e4a913091168461075f565b600a5460405163791ac94760e01b81526001600160a01b039091169063791ac94790610e829085905f90869030904290600401611210565b5f604051808303815f87803b158015610e99575f80fd5b505af1158015610eab573d5f803e3d5ffd5b50506008805460ff1916905550505050565b5f80610ec983856111a4565b905083811015610cfa5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161046f565b5f610cfa83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610c44565b5f8183610f7c5760405162461bcd60e51b815260040161046f9190610f88565b505f610c738486611185565b5f602080835283518060208501525f5b81811015610fb457858101830151858201604001528201610f98565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610fe8575f80fd5b50565b5f8060408385031215610ffc575f80fd5b823561100781610fd4565b946020939093013593505050565b5f8060408385031215611026575f80fd5b50508035926020909101359150565b5f805f60608486031215611047575f80fd5b833561105281610fd4565b9250602084013561106281610fd4565b929592945050506040919091013590565b5f60208284031215611083575f80fd5b5035919050565b5f6020828403121561109a575f80fd5b8135610cfa81610fd4565b803580151581146110b4575f80fd5b919050565b5f80604083850312156110ca575f80fd5b82356110d581610fd4565b91506110e3602084016110a5565b90509250929050565b5f80604083850312156110fd575f80fd5b823561110881610fd4565b9150602083013561111881610fd4565b809150509250929050565b5f60208284031215611133575f80fd5b610cfa826110a5565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b5f8261119f57634e487b7160e01b5f52601260045260245ffd5b500490565b8082018082111561044057610440611171565b808202811582820484141761044057610440611171565b8181038181111561044057610440611171565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215611205575f80fd5b8151610cfa81610fd4565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b818110156112605784516001600160a01b03168352938301939183019160010161123b565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220871aa4168849d3c0766bdad3c158daf9a2c413004205f04a30d51d465fd1c1b064736f6c63430008170033

Deployed Bytecode Sourcemap

3635:6301:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5204:83;;;;;;;;;;-1:-1:-1;5274:5:0;;;;;;;;;;;;-1:-1:-1;;;5274:5:0;;;;5204:83;;;;;;;:::i;:::-;;;;;;;;6037:161;;;;;;;;;;-1:-1:-1;6037:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6037:161:0;1023:187:1;9702:194:0;;;;;;;;;;-1:-1:-1;9702:194:0;;;;;:::i;:::-;;:::i;:::-;;5481:95;;;;;;;;;;-1:-1:-1;3887:15:0;5481:95;;;1614:25:1;;;1602:2;1587:18;5481:95:0;1468:177:1;6206:313:0;;;;;;;;;;-1:-1:-1;6206:313:0;;;;;:::i;:::-;;:::i;5390:83::-;;;;;;;;;;-1:-1:-1;5390:83:0;;4113:1;2253:36:1;;2241:2;2226:18;5390:83:0;2111:184:1;4342:26:0;;;;;;;;;;-1:-1:-1;4342:26:0;;;;-1:-1:-1;;;4342:26:0;;;;;;9412:186;;;;;;;;;;-1:-1:-1;9412:186:0;;;;;:::i;:::-;;:::i;5584:119::-;;;;;;;;;;-1:-1:-1;5584:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5677:18:0;5650:7;5677:18;;;:9;:18;;;;;;;5584:119;2716:148;;;;;;;;;;;;;:::i;9606:88::-;;;;;;;;;;;;;:::i;9099:84::-;;;;;;;;;;;;;:::i;2502:79::-;;;;;;;;;;-1:-1:-1;2540:7:0;2567:6;2502:79;;-1:-1:-1;;;;;2567:6:0;;;2883:51:1;;2871:2;2856:18;2502:79:0;2737:203:1;4121:31:0;;;;;;;;;;;;;;;;5295:87;;;;;;;;;;-1:-1:-1;5367:7:0;;;;;;;;;;;;-1:-1:-1;;;5367:7:0;;;;5295:87;;5711:167;;;;;;;;;;-1:-1:-1;5711:167:0;;;;;:::i;:::-;;:::i;9294:110::-;;;;;;;;;;-1:-1:-1;9294:110:0;;;;;:::i;:::-;;:::i;8963:128::-;;;;;;;;;;-1:-1:-1;8963:128:0;;;;;:::i;:::-;;:::i;5886:143::-;;;;;;;;;;-1:-1:-1;5886:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;5994:18:0;;;5967:7;5994:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;5886:143;9191:95;;;;;;;;;;-1:-1:-1;9191:95:0;;;;;:::i;:::-;;:::i;3968:53::-;;;;;;;;;;;;;;;;4159:32;;;;;;;;;;;;;;;;6037:161;6112:4;6129:39;337:10;6152:7;6161:6;6129:8;:39::i;:::-;-1:-1:-1;6186:4:0;6037:161;;;;;:::o;9702:194::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;;;;;;;;;9778:13:::1;:23:::0;;;9812:14:::1;:25:::0;;;9867:2:::1;9856:13:::0;::::1;::::0;::::1;::::0;:31:::1;;;9885:2;9873:8;:14;;9856:31;9848:40;;;::::0;::::1;;9702:194:::0;;:::o;6206:313::-;6304:4;6321:36;6331:6;6339:9;6350:6;6321:9;:36::i;:::-;6368:121;6377:6;337:10;6399:89;6437:6;6399:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6399:19:0;;;;;;:11;:19;;;;;;;;337:10;6399:33;;;;;;;;;;:37;:89::i;:::-;6368:8;:121::i;:::-;-1:-1:-1;6507:4:0;6206:313;;;;;:::o;9412:186::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;9495:13:::1;9505:3;3887:15;9495:13;:::i;:::-;9485:6;:23;;9477:76;;;::::0;-1:-1:-1;;;9477:76:0;;4925:2:1;9477:76:0::1;::::0;::::1;4907:21:1::0;4964:2;4944:18;;;4937:30;5003:34;4983:18;;;4976:62;-1:-1:-1;;;5054:18:1;;;5047:38;5102:19;;9477:76:0::1;4723:404:1::0;9477:76:0::1;9564:17;:26:::0;9412:186::o;2716:148::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;2823:1:::1;2807:6:::0;;2786:40:::1;::::0;-1:-1:-1;;;;;2807:6:0;;::::1;::::0;2786:40:::1;::::0;2823:1;;2786:40:::1;2854:1;2837:19:::0;;-1:-1:-1;;;;;;2837:19:0::1;::::0;;2716:148::o;9606:88::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;3887:15:::1;9659:17;:27:::0;9606:88::o;9099:84::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;9154:14:::1;:21:::0;;-1:-1:-1;;;;9154:21:0::1;-1:-1:-1::0;;;9154:21:0::1;::::0;;9099:84::o;5711:167::-;5789:4;5806:42;337:10;5830:9;5841:6;5806:9;:42::i;9294:110::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;9368:19:::1;:28:::0;9294:110::o;8963:128::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9048:26:0;;;::::1;;::::0;;;:17:::1;:26;::::0;;;;:35;;-1:-1:-1;;9048:35:0::1;::::0;::::1;;::::0;;;::::1;::::0;;8963:128::o;9191:95::-;2629:6;;-1:-1:-1;;;;;2629:6:0;337:10;2629:22;2621:67;;;;-1:-1:-1;;;2621:67:0;;;;;;;:::i;:::-;9258:11:::1;:20:::0;;;::::1;;;;-1:-1:-1::0;;9258:20:0;;::::1;::::0;;;::::1;::::0;;9191:95::o;6527:177::-;-1:-1:-1;;;;;6612:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6664:32;;1614:25:1;;;6664:32:0;;1587:18:1;6664:32:0;;;;;;;6527:177;;;:::o;6712:1646::-;-1:-1:-1;;;;;6827:23:0;;6792:17;6827:23;;;:17;:23;;;;;;;;6826:24;:50;;;;-1:-1:-1;;;;;;6855:21:0;;;;;;:17;:21;;;;;;;;6854:22;6826:50;:69;;;;-1:-1:-1;2540:7:0;2567:6;-1:-1:-1;;;;;6880:15:0;;;2567:6;;6880:15;;6826:69;6822:1180;;;6920:14;;-1:-1:-1;;;6920:14:0;;;;6912:44;;;;-1:-1:-1;;;6912:44:0;;5334:2:1;6912:44:0;;;5316:21:1;5373:2;5353:18;;;5346:30;-1:-1:-1;;;5392:18:1;;;5385:47;5449:18;;6912:44:0;5132:341:1;6912:44:0;6985:34;7015:3;6985:25;6996:13;;6985:6;:10;;:25;;;;:::i;:::-;:29;;:34::i;:::-;7048:14;;6973:46;;-1:-1:-1;;;;;;7040:22:0;;;7048:14;;;;;7040:22;:48;;;;-1:-1:-1;;;;;;7067:21:0;;;;;;:17;:21;;;;;;;;7066:22;7040:48;7036:165;;;7143:17;;7133:6;7117:13;7127:2;-1:-1:-1;;;;;5677:18:0;5650:7;5677:18;;;:9;:18;;;;;;;5584:119;7117:13;:22;;;;:::i;:::-;:43;;7109:76;;;;-1:-1:-1;;;7109:76:0;;5810:2:1;7109:76:0;;;5792:21:1;5849:2;5829:18;;;5822:30;-1:-1:-1;;;5868:18:1;;;5861:50;5928:18;;7109:76:0;5608:344:1;7109:76:0;7227:14;;-1:-1:-1;;;;;7221:20:0;;;7227:14;;;;;7221:20;;;;:46;;-1:-1:-1;;;;;;7246:21:0;;;;;;:17;:21;;;;;;;;7245:22;7221:46;7217:163;;;7322:17;;7312:6;7296:13;7306:2;-1:-1:-1;;;;;5677:18:0;5650:7;5677:18;;;:9;:18;;;;;;;5584:119;7296:13;:22;;;;:::i;:::-;:43;;7288:76;;;;-1:-1:-1;;;7288:76:0;;5810:2:1;7288:76:0;;;5792:21:1;5849:2;5829:18;;;5822:30;-1:-1:-1;;;5868:18:1;;;5861:50;5928:18;;7288:76:0;5608:344:1;7288:76:0;7405:14;;-1:-1:-1;;;;;7399:20:0;;;7405:14;;;;;7399:20;:46;;;;-1:-1:-1;;;;;;7424:21:0;;;;;;:17;:21;;;;;;;;7423:22;7399:46;7396:126;;;7503:3;7486:14;;7477:6;:23;;;;:::i;:::-;:29;;;;:::i;:::-;7465:41;;7396:126;7582:4;7538:23;5677:18;;;:9;:18;;;;;;7608:6;;;;7607:7;:31;;;;-1:-1:-1;7624:14:0;;-1:-1:-1;;;;;7618:20:0;;;7624:14;;;;;7618:20;7607:31;:46;;;;-1:-1:-1;7642:11:0;;;;;;;7607:46;:85;;;;;7673:19;;7657:15;:35;7607:85;7603:388;;;7713:62;7730:44;7734:6;7741:32;7745:15;7761:11;;7741:3;:32::i;:::-;7730:3;:44::i;:::-;7713:16;:62::i;:::-;7823:21;7866:22;;7863:113;;7914:10;;:42;;-1:-1:-1;;;;;7914:10:0;;;;7934:21;7914:42;;;;;:10;:42;:10;:42;7934:21;7914:10;:42;;;;;;;;;;;;;;;;;;;;;7863:113;7694:297;7603:388;6897:1105;6822:1180;8017:11;;8014:161;;8085:4;8067:24;;;;:9;:24;;;;;;:39;;8096:9;8067:28;:39::i;:::-;8060:4;8042:24;;;;:9;:24;;;;;;;:64;;;;8124:39;;-1:-1:-1;;;;;8124:39:0;;;;;;;8153:9;1614:25:1;;1602:2;1587:18;;1468:177;8124:39:0;;;;;;;;8014:161;-1:-1:-1;;;;;8201:15:0;;;;;;:9;:15;;;;;;:27;;8221:6;8201:19;:27::i;:::-;-1:-1:-1;;;;;8185:15:0;;;;;;:9;:15;;;;;:43;8253:40;8271:21;:6;8282:9;8271:10;:21::i;:::-;-1:-1:-1;;;;;8253:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;8239:13:0;;;;;;;:9;:13;;;;;:54;;;;8309:41;;;8328:21;:6;8339:9;8328:10;:21::i;:::-;8309:41;;1614:25:1;;;1602:2;1587:18;8309:41:0;;;;;;;6781:1577;6712:1646;;;:::o;1394:190::-;1480:7;1516:12;1508:6;;;;1500:29;;;;-1:-1:-1;;;1500:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1540:9:0;1552:5;1556:1;1552;:5;:::i;:::-;1540:17;1394:190;-1:-1:-1;;;;;1394:190:0:o;1592:246::-;1650:7;1674:1;1679;1674:6;1670:47;;-1:-1:-1;1704:1:0;1697:8;;1670:47;1727:9;1739:5;1743:1;1739;:5;:::i;:::-;1727:17;-1:-1:-1;1772:1:0;1763:5;1767:1;1727:17;1763:5;:::i;:::-;:10;1755:56;;;;-1:-1:-1;;;1755:56:0;;6465:2:1;1755:56:0;;;6447:21:1;6504:2;6484:18;;;6477:30;6543:34;6523:18;;;6516:62;-1:-1:-1;;;6594:18:1;;;6587:31;6635:19;;1755:56:0;6263:397:1;1755:56:0;1829:1;1592:246;-1:-1:-1;;;1592:246:0:o;1846:132::-;1904:7;1931:39;1935:1;1938;1931:39;;;;;;;;;;;;;;;;;:3;:39::i;8366:98::-;8423:7;8450:1;8448;:3;8447:9;;8455:1;8447:9;;;-1:-1:-1;8453:1:0;8366:98;-1:-1:-1;8366:98:0:o;8472:483::-;4619:6;:13;;-1:-1:-1;;4619:13:0;4628:4;4619:13;;;8574:16:::1;::::0;;8588:1:::1;8574:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8574:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8574:16:0::1;8550:40;;8619:4;8601;8606:1;8601:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8601:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8645:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;8645:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8601:7;;8645:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8635:4;8640:1;8635:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8635:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;8710:15:::1;::::0;8678:62:::1;::::0;8695:4:::1;::::0;8710:15:::1;8728:11:::0;8678:8:::1;:62::i;:::-;8751:15;::::0;:196:::1;::::0;-1:-1:-1;;;8751:196:0;;-1:-1:-1;;;;;8751:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;8832:11;;8751:15:::1;::::0;8874:4;;8901::::1;::::0;8921:15:::1;::::0;8751:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4655:6:0;:14;;-1:-1:-1;;4655:14:0;;;-1:-1:-1;;;;8472:483:0:o;1063:179::-;1121:7;;1153:5;1157:1;1153;:5;:::i;:::-;1141:17;;1182:1;1177;:6;;1169:46;;;;-1:-1:-1;;;1169:46:0;;8372:2:1;1169:46:0;;;8354:21:1;8411:2;8391:18;;;8384:30;8450:29;8430:18;;;8423:57;8497:18;;1169:46:0;8170:351:1;1250:136:0;1308:7;1335:43;1339:1;1342;1335:43;;;;;;;;;;;;;;;;;:3;:43::i;1986:189::-;2072:7;2107:12;2100:5;2092:28;;;;-1:-1:-1;;;2092:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2131:9:0;2143:5;2147:1;2143;: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;1215:248::-;1283:6;1291;1344:2;1332:9;1323:7;1319:23;1315:32;1312:52;;;1360:1;1357;1350:12;1312:52;-1:-1:-1;;1383:23:1;;;1453:2;1438:18;;;1425:32;;-1:-1:-1;1215:248:1:o;1650:456::-;1727:6;1735;1743;1796:2;1784:9;1775:7;1771:23;1767:32;1764:52;;;1812:1;1809;1802:12;1764:52;1851:9;1838:23;1870:31;1895:5;1870:31;:::i;:::-;1920:5;-1:-1:-1;1977:2:1;1962:18;;1949:32;1990:33;1949:32;1990:33;:::i;:::-;1650:456;;2042:7;;-1:-1:-1;;;2096:2:1;2081:18;;;;2068:32;;1650:456::o;2300:180::-;2359:6;2412:2;2400:9;2391:7;2387:23;2383:32;2380:52;;;2428:1;2425;2418:12;2380:52;-1:-1:-1;2451:23:1;;2300:180;-1:-1:-1;2300:180:1:o;2485:247::-;2544:6;2597:2;2585:9;2576:7;2572:23;2568:32;2565:52;;;2613:1;2610;2603:12;2565:52;2652:9;2639:23;2671:31;2696:5;2671:31;:::i;2945:160::-;3010:20;;3066:13;;3059:21;3049:32;;3039:60;;3095:1;3092;3085:12;3039:60;2945:160;;;:::o;3110:315::-;3175:6;3183;3236:2;3224:9;3215:7;3211:23;3207:32;3204:52;;;3252:1;3249;3242:12;3204:52;3291:9;3278:23;3310:31;3335:5;3310:31;:::i;:::-;3360:5;-1:-1:-1;3384:35:1;3415:2;3400:18;;3384:35;:::i;:::-;3374:45;;3110:315;;;;;:::o;3430:388::-;3498:6;3506;3559:2;3547:9;3538:7;3534:23;3530:32;3527:52;;;3575:1;3572;3565:12;3527:52;3614:9;3601:23;3633:31;3658:5;3633:31;:::i;:::-;3683:5;-1:-1:-1;3740:2:1;3725:18;;3712:32;3753:33;3712:32;3753:33;:::i;:::-;3805:7;3795:17;;;3430:388;;;;;:::o;3823:180::-;3879:6;3932:2;3920:9;3911:7;3907:23;3903:32;3900:52;;;3948:1;3945;3938:12;3900:52;3971:26;3987:9;3971:26;:::i;4008:356::-;4210:2;4192:21;;;4229:18;;;4222:30;4288:34;4283:2;4268:18;;4261:62;4355:2;4340:18;;4008:356::o;4369:127::-;4430:10;4425:3;4421:20;4418:1;4411:31;4461:4;4458:1;4451:15;4485:4;4482:1;4475:15;4501:217;4541:1;4567;4557:132;;4611:10;4606:3;4602:20;4599:1;4592:31;4646:4;4643:1;4636:15;4674:4;4671:1;4664:15;4557:132;-1:-1:-1;4703:9:1;;4501:217::o;5478:125::-;5543:9;;;5564:10;;;5561:36;;;5577:18;;:::i;5957:168::-;6030:9;;;6061;;6078:15;;;6072:22;;6058:37;6048:71;;6099:18;;:::i;6130:128::-;6197:9;;;6218:11;;;6215:37;;;6232:18;;:::i;6797:127::-;6858:10;6853:3;6849:20;6846:1;6839:31;6889:4;6886:1;6879:15;6913:4;6910:1;6903:15;6929:251;6999:6;7052:2;7040:9;7031:7;7027:23;7023:32;7020:52;;;7068:1;7065;7058:12;7020:52;7100:9;7094:16;7119:31;7144:5;7119:31;:::i;7185:980::-;7447:4;7495:3;7484:9;7480:19;7526:6;7515:9;7508:25;7552:2;7590:6;7585:2;7574:9;7570:18;7563:34;7633:3;7628:2;7617:9;7613:18;7606:31;7657:6;7692;7686:13;7723:6;7715;7708:22;7761:3;7750:9;7746:19;7739:26;;7800:2;7792:6;7788:15;7774:29;;7821:1;7831:195;7845:6;7842:1;7839:13;7831:195;;;7910:13;;-1:-1:-1;;;;;7906:39:1;7894:52;;8001:15;;;;7966:12;;;;7942:1;7860:9;7831:195;;;-1:-1:-1;;;;;;;8082:32:1;;;;8077:2;8062:18;;8055:60;-1:-1:-1;;;8146:3:1;8131:19;8124:35;8043:3;7185:980;-1:-1:-1;;;7185:980:1:o

Swarm Source

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