ETH Price: $2,609.72 (-0.45%)

Token

Doge Classic (DogeC)
 

Overview

Max Total Supply

100,000,000 DogeC

Holders

29

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,365,381.691472193 DogeC

Value
$0.00
0x6c2287e4ada266d24bee17ee807a94453d289193
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:
DOGECLASSIC

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSED

pragma solidity ^0.8.12;

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "SafeMath: addition overflow");

        return c;
    }
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "SafeMath: subtraction overflow");
    }
    function sub(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b <= a, errorMessage);
        uint256 c = a - b;

        return c;
    }
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }

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

        return c;
    }
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "SafeMath: division by zero");
    }
    function div(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b > 0, errorMessage);
        uint256 c = a / b;
        return c;
    }
}

interface ERC20 {
    function getOwner() external view returns (address);
    function balanceOf(address account) external view returns (uint256);
    function transfer(address recipient, uint256 amount) external returns (bool);
    function allowance(address _owner, address spender) external view returns (uint256);
    function approve(address spender, uint256 amount) external returns (bool);
    function transferFrom(address sender, address recipient, uint256 amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

abstract contract Auth {
    address internal owner;

    constructor(address _owner) {
        owner = _owner;
    }

    modifier onlyOwner() {
        require(isOwner(msg.sender), "!OWNER"); _;
    }

    function isOwner(address account) public view returns (bool) {
        return account == owner;
    }

    function renounceOwnership() public onlyOwner {
        emit OwnershipTransferred(address(0));
        owner = address(0);
    }

    event OwnershipTransferred(address owner);
}

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

interface IDEXRouter {
    function factory() external pure returns (address);
    function WETH() external pure returns (address);

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

    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
}

contract DOGECLASSIC is ERC20, Auth {
    using SafeMath for uint256;

    address immutable WETH;
    address constant DEAD = 0x000000000000000000000000000000000000dEaD;
    address constant ZERO = 0x0000000000000000000000000000000000000000;

    string public constant name = "Doge Classic";
    string public constant symbol = "DogeC";
    uint8 public constant decimals = 9;
    uint256 public constant totalSupply = 100 * 10**6 * 10**decimals;

    uint256 public _maxTxAmount = totalSupply / 100;
    uint256 public _maxWalletToken = totalSupply / 50;

    mapping (address => uint256) public balanceOf;
    mapping (address => mapping (address => uint256)) _allowances;

    mapping (address => bool) isFeeExempt;
    mapping (address => bool) isTxLimitExempt;
    mapping (address => bool) isWalletLimitExempt;

    uint256 public constant liquidityFee = 2;
    uint256 public constant marketingFee = 5;
    uint256 public constant totalFee = 7;
    uint256 public constant feeDenominator = 100;

    address public autoLiquidityReceiver;
    address public marketingFeeReceiver;

    IDEXRouter public router;
    address public pair;

    bool public swapEnabled = true;
    uint256 public swapThreshold = totalSupply / 1000;
    bool inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor () Auth(msg.sender) {
        router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        WETH = router.WETH();

        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));
        _allowances[address(this)][address(router)] = type(uint256).max;

        autoLiquidityReceiver = msg.sender;
        marketingFeeReceiver = 0x698faC32A73489D8b56fF135237354e44939C1A5;

        isFeeExempt[msg.sender] = true;
        isFeeExempt[marketingFeeReceiver] = true;

        isTxLimitExempt[msg.sender] = true;
        isTxLimitExempt[DEAD] = true;
        isTxLimitExempt[ZERO] = true;
        isTxLimitExempt[marketingFeeReceiver] = true;

        isWalletLimitExempt[msg.sender] = true;
        isWalletLimitExempt[address(this)] = true;
        isWalletLimitExempt[DEAD] = true;
        isWalletLimitExempt[marketingFeeReceiver] = true;

        balanceOf[msg.sender] = totalSupply;
        emit Transfer(address(0), msg.sender, totalSupply);
    }

    receive() external payable { }

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

    function approve(address spender, uint256 amount) public override returns (bool) {
        _allowances[msg.sender][spender] = amount;
        emit Approval(msg.sender, spender, amount);
        return true;
    }

    function approveMax(address spender) external returns (bool) {
        return approve(spender, type(uint256).max);
    }

    function transfer(address recipient, uint256 amount) external override returns (bool) {
        return _transferFrom(msg.sender, recipient, amount);
    }

    function transferFrom(address sender, address recipient, uint256 amount) external override returns (bool) {
        if(_allowances[sender][msg.sender] != type(uint256).max){
            _allowances[sender][msg.sender] = _allowances[sender][msg.sender].sub(amount, "Insufficient Allowance");
        }

        return _transferFrom(sender, recipient, amount);
    }

    function _transferFrom(address sender, address recipient, uint256 amount) internal returns (bool) {
        if(inSwap){ return _basicTransfer(sender, recipient, amount); }

        if (!isOwner(sender) && !isWalletLimitExempt[sender] && !isWalletLimitExempt[recipient] && recipient != pair) {
            require((balanceOf[recipient] + amount) <= _maxWalletToken,"max wallet limit reached");
        }

        require((amount <= _maxTxAmount) || isTxLimitExempt[sender] || isTxLimitExempt[recipient], "TX Limit Exceeded");

        if(shouldSwapBack()){ swapBack(); }

        balanceOf[sender] = balanceOf[sender].sub(amount, "Insufficient Balance");

        uint256 amountReceived = (isFeeExempt[sender] || isFeeExempt[recipient]) ? amount : takeFee(sender, amount);

        balanceOf[recipient] = balanceOf[recipient].add(amountReceived);

        emit Transfer(sender, recipient, amountReceived);
        return true;
    }
    
    function _basicTransfer(address sender, address recipient, uint256 amount) internal returns (bool) {
        balanceOf[sender] = balanceOf[sender].sub(amount, "Insufficient Balance");
        balanceOf[recipient] = balanceOf[recipient].add(amount);
        emit Transfer(sender, recipient, amount);
        return true;
    }


    function takeFee(address sender, uint256 amount) internal returns (uint256) {
        if(totalFee == 0 ){
            return amount;
        }

        uint256 feeAmount = amount.mul(totalFee).div(feeDenominator);

        balanceOf[address(this)] = balanceOf[address(this)].add(feeAmount);
        emit Transfer(sender, address(this), feeAmount);

        return amount.sub(feeAmount);
    }

    function shouldSwapBack() internal view returns (bool) {
        return msg.sender != pair
        && !inSwap
        && swapEnabled
        && balanceOf[address(this)] >= swapThreshold;
    }

    function swapBack() internal swapping {
        uint256 amountToLiquify = swapThreshold.mul(liquidityFee).div(totalFee).div(2);
        uint256 amountToSwap = swapThreshold.sub(amountToLiquify);

        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = WETH;

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            amountToSwap,
            0,
            path,
            address(this),
            block.timestamp
        );

        uint256 amountETH = address(this).balance;

        uint256 totalETHFee = totalFee.sub(liquidityFee.div(2));        
        uint256 amountETHLiquidity = amountETH.mul(liquidityFee).div(totalETHFee).div(2);
        uint256 amountETHMarketing = amountETH.mul(marketingFee).div(totalETHFee);

        payable(marketingFeeReceiver).transfer(amountETHMarketing);

        if(amountToLiquify > 0){
            router.addLiquidityETH{value: amountETHLiquidity}(
                address(this),
                amountToLiquify,
                0,
                0,
                autoLiquidityReceiver,
                block.timestamp
            );
            emit AutoLiquify(amountETHLiquidity, amountToLiquify);
        }
    }


    function getCirculatingSupply() public view returns (uint256) {
        return totalSupply.sub(balanceOf[DEAD]).sub(balanceOf[ZERO]);
    }

event AutoLiquify(uint256 amountETH, uint256 amountTokens);

}

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":false,"internalType":"uint256","name":"amountETH","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amountTokens","type":"uint256"}],"name":"AutoLiquify","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"address","name":"owner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletToken","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"holder","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":"spender","type":"address"}],"name":"approveMax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"autoLiquidityReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"feeDenominator","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getCirculatingSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"liquidityFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"marketingFeeReceiver","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

60a06040526064620000146009600a6200053e565b62000024906305f5e10062000556565b62000030919062000578565b6001556032620000436009600a6200053e565b62000053906305f5e10062000556565b6200005f919062000578565b600255600b805460ff60a01b1916600160a01b1790556103e8620000866009600a6200053e565b62000096906305f5e10062000556565b620000a2919062000578565b600c55348015620000b257600080fd5b5060008054336001600160a01b031991821617909155600a8054737a250d5630b4cf539739df2c5dacb4c659f2488d921682179055604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000123573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200014991906200059b565b6001600160a01b03908116608052600a546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa1580156200019a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001c091906200059b565b6080516040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af115801562000212573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200023891906200059b565b600b80546001600160a01b039283166001600160a01b031991821617909155306000818152600460209081526040808320600a8054881685529083528184206000199055600880548716339081179091556009805490971673698fac32a73489d8b56ff135237354e44939c1a517875580855260058452828520805460ff19908116600190811790925588548a16875284872080548216831790558287526006865284872080548216831790557f1aecba4ebe7a4e0673e4891b2b092b2228e4322380b579fb494fad3da8586e2280548216831790557f54cdd369e4e8a8515e52ca72ec816c2101831ad1f18bf44102ed171459c9b4f8805482168317905588548a16875284872080548216831790559186526007909452828520805482168517905594845281842080548616841790557fb0c2646e02af70b79e3fe9277b98373379f54150e4e26b2b5650139f7a75a65d8054861684179055855490961683529091208054909216179055620003af916200053e565b620003bf906305f5e10062000556565b33600081815260036020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620004026009600a6200053e565b62000412906305f5e10062000556565b60405190815260200160405180910390a3620005c6565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200048057816000190482111562000464576200046462000429565b808516156200047257918102915b93841c939080029062000444565b509250929050565b600082620004995750600162000538565b81620004a85750600062000538565b8160018114620004c15760028114620004cc57620004ec565b600191505062000538565b60ff841115620004e057620004e062000429565b50506001821b62000538565b5060208310610133831016604e8410600b841016171562000511575081810a62000538565b6200051d83836200043f565b806000190482111562000534576200053462000429565b0290505b92915050565b60006200054f60ff84168362000488565b9392505050565b600081600019048311821515161562000573576200057362000429565b500290565b6000826200059657634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620005ae57600080fd5b81516001600160a01b03811681146200054f57600080fd5b608051611462620005e26000396000610ce001526114626000f3fe6080604052600436106101855760003560e01c806370a08231116100d157806398118cb41161008a578063ca33e64c11610064578063ca33e64c14610477578063dd62ed3e14610497578063e96fada2146104dd578063f887ea40146104fd57600080fd5b806398118cb414610422578063a8aa1b3114610437578063a9059cbb1461045757600080fd5b806370a082311461034f578063715018a61461037c57806378109e54146103935780637d1db4a5146103a9578063893d20e8146103bf57806395d89b41146103f157600080fd5b806323b872dd1161013e578063313ce56711610118578063313ce567146102d2578063571ac8b0146102f95780636b67c4df146103195780636ddd17131461032e57600080fd5b806323b872dd1461026e5780632b112e491461028e5780632f54bf6e146102a357600080fd5b80630445b6671461019157806306fdde03146101ba578063095ea7b3146101ff578063180b0d7e1461022f57806318160ddd146102445780631df4ccfc1461025957600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a7600c5481565b6040519081526020015b60405180910390f35b3480156101c657600080fd5b506101f26040518060400160405280600c81526020016b446f676520436c617373696360a01b81525081565b6040516101b191906110d9565b34801561020b57600080fd5b5061021f61021a36600461114a565b61051d565b60405190151581526020016101b1565b34801561023b57600080fd5b506101a7606481565b34801561025057600080fd5b506101a761058a565b34801561026557600080fd5b506101a7600781565b34801561027a57600080fd5b5061021f610289366004611174565b6105a7565b34801561029a57600080fd5b506101a7610669565b3480156102af57600080fd5b5061021f6102be3660046111b0565b6000546001600160a01b0391821691161490565b3480156102de57600080fd5b506102e7600981565b60405160ff90911681526020016101b1565b34801561030557600080fd5b5061021f6103143660046111b0565b6106e9565b34801561032557600080fd5b506101a7600581565b34801561033a57600080fd5b50600b5461021f90600160a01b900460ff1681565b34801561035b57600080fd5b506101a761036a3660046111b0565b60036020526000908152604090205481565b34801561038857600080fd5b506103916106f7565b005b34801561039f57600080fd5b506101a760025481565b3480156103b557600080fd5b506101a760015481565b3480156103cb57600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101b1565b3480156103fd57600080fd5b506101f260405180604001604052806005815260200164446f67654360d81b81525081565b34801561042e57600080fd5b506101a7600281565b34801561044357600080fd5b50600b546103d9906001600160a01b031681565b34801561046357600080fd5b5061021f61047236600461114a565b610785565b34801561048357600080fd5b506008546103d9906001600160a01b031681565b3480156104a357600080fd5b506101a76104b23660046111cb565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156104e957600080fd5b506009546103d9906001600160a01b031681565b34801561050957600080fd5b50600a546103d9906001600160a01b031681565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906105789086815260200190565b60405180910390a35060015b92915050565b6105966009600a6112f8565b6105a4906305f5e100611307565b81565b6001600160a01b038316600090815260046020908152604080832033845290915281205460001914610654576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b038716600090815260048252838120338252909152919091205461062f918490610792565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b61065f8484846107cc565b90505b9392505050565b60036020527f3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff5461dead60009081527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c5490916106e4916106de906106d06009600a6112f8565b6106de906305f5e100611307565b90610abe565b905090565b60006105848260001961051d565b6000546001600160a01b0316331461073f5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b604051600081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1600080546001600160a01b0319169055565b60006106623384846107cc565b600081848411156107b65760405162461bcd60e51b815260040161073691906110d9565b5060006107c38486611326565b95945050505050565b600d5460009060ff16156107ec576107e5848484610b00565b9050610662565b6000546001600160a01b0385811691161415801561082357506001600160a01b03841660009081526007602052604090205460ff16155b801561084857506001600160a01b03831660009081526007602052604090205460ff16155b80156108625750600b546001600160a01b03848116911614155b156108dc576002546001600160a01b03841660009081526003602052604090205461088e90849061133d565b11156108dc5760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d6974207265616368656400000000000000006044820152606401610736565b6001548211158061090557506001600160a01b03841660009081526006602052604090205460ff165b8061092857506001600160a01b03831660009081526006602052604090205460ff165b6109685760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610736565b610970610be6565b1561097d5761097d610c3c565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600390915291909120546109cf918490610792565b6001600160a01b038516600090815260036020908152604080832093909355600590529081205460ff1680610a1c57506001600160a01b03841660009081526005602052604090205460ff165b610a2f57610a2a8584610ef5565b610a31565b825b6001600160a01b038516600090815260036020526040902054909150610a579082610f90565b6001600160a01b0380861660008181526003602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610aab9085815260200190565b60405180910390a3506001949350505050565b600061066283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610792565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600390915291822054610b51918490610792565b6001600160a01b038086166000908152600360205260408082209390935590851681522054610b809083610f90565b6001600160a01b0380851660008181526003602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bd49086815260200190565b60405180910390a35060019392505050565b600b546000906001600160a01b03163314801590610c075750600d5460ff16155b8015610c1c5750600b54600160a01b900460ff165b80156106e4575050600c5430600090815260036020526040902054101590565b600d805460ff19166001179055600c54600090610c6b90600290610c6590600790829084610fef565b9061106e565b90506000610c8482600c54610abe90919063ffffffff16565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610cbe57610cbe611355565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610d1257610d12611355565b6001600160a01b039283166020918202929092010152600a5460405163791ac94760e01b815291169063791ac94790610d5890859060009086903090429060040161136b565b600060405180830381600087803b158015610d7257600080fd5b505af1158015610d86573d6000803e3d6000fd5b5047925060009150610da69050610d9e60028061106e565b600790610abe565b90506000610dbb6002610c6584818784610fef565b90506000610dce83610c65866005610fef565b6009546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610e09573d6000803e3d6000fd5b508615610ee257600a5460085460405163f305d71960e01b8152306004820152602481018a905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990849060c40160606040518083038185885af1158015610e80573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ea591906113dc565b505060408051848152602081018a90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b5050600d805460ff191690555050505050565b600080610f086064610c65856007610fef565b30600090815260036020526040902054909150610f259082610f90565b30600081815260036020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f769085815260200190565b60405180910390a3610f888382610abe565b949350505050565b600080610f9d838561133d565b9050838110156106625760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610736565b600082610ffe57506000610584565b600061100a8385611307565b905082611017858361140a565b146106625760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610736565b600061066283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836110cc5760405162461bcd60e51b815260040161073691906110d9565b5060006107c3848661140a565b600060208083528351808285015260005b81811015611106578581018301518582016040015282016110ea565b81811115611118576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461114557600080fd5b919050565b6000806040838503121561115d57600080fd5b6111668361112e565b946020939093013593505050565b60008060006060848603121561118957600080fd5b6111928461112e565b92506111a06020850161112e565b9150604084013590509250925092565b6000602082840312156111c257600080fd5b6106628261112e565b600080604083850312156111de57600080fd5b6111e78361112e565b91506111f56020840161112e565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561124f578160001904821115611235576112356111fe565b8085161561124257918102915b93841c9390800290611219565b509250929050565b60008261126657506001610584565b8161127357506000610584565b81600181146112895760028114611293576112af565b6001915050610584565b60ff8411156112a4576112a46111fe565b50506001821b610584565b5060208310610133831016604e8410600b84101617156112d2575081810a610584565b6112dc8383611214565b80600019048211156112f0576112f06111fe565b029392505050565b600061066260ff841683611257565b6000816000190483118215151615611321576113216111fe565b500290565b600082821015611338576113386111fe565b500390565b60008219821115611350576113506111fe565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156113bb5784516001600160a01b031683529383019391830191600101611396565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156113f157600080fd5b8351925060208401519150604084015190509250925092565b60008261142757634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212208ee9c3ad37bb3818d0a490183e09bef095de03d1f5ca4caa3c82cd746aaa58c664736f6c634300080c0033

Deployed Bytecode

0x6080604052600436106101855760003560e01c806370a08231116100d157806398118cb41161008a578063ca33e64c11610064578063ca33e64c14610477578063dd62ed3e14610497578063e96fada2146104dd578063f887ea40146104fd57600080fd5b806398118cb414610422578063a8aa1b3114610437578063a9059cbb1461045757600080fd5b806370a082311461034f578063715018a61461037c57806378109e54146103935780637d1db4a5146103a9578063893d20e8146103bf57806395d89b41146103f157600080fd5b806323b872dd1161013e578063313ce56711610118578063313ce567146102d2578063571ac8b0146102f95780636b67c4df146103195780636ddd17131461032e57600080fd5b806323b872dd1461026e5780632b112e491461028e5780632f54bf6e146102a357600080fd5b80630445b6671461019157806306fdde03146101ba578063095ea7b3146101ff578063180b0d7e1461022f57806318160ddd146102445780631df4ccfc1461025957600080fd5b3661018c57005b600080fd5b34801561019d57600080fd5b506101a7600c5481565b6040519081526020015b60405180910390f35b3480156101c657600080fd5b506101f26040518060400160405280600c81526020016b446f676520436c617373696360a01b81525081565b6040516101b191906110d9565b34801561020b57600080fd5b5061021f61021a36600461114a565b61051d565b60405190151581526020016101b1565b34801561023b57600080fd5b506101a7606481565b34801561025057600080fd5b506101a761058a565b34801561026557600080fd5b506101a7600781565b34801561027a57600080fd5b5061021f610289366004611174565b6105a7565b34801561029a57600080fd5b506101a7610669565b3480156102af57600080fd5b5061021f6102be3660046111b0565b6000546001600160a01b0391821691161490565b3480156102de57600080fd5b506102e7600981565b60405160ff90911681526020016101b1565b34801561030557600080fd5b5061021f6103143660046111b0565b6106e9565b34801561032557600080fd5b506101a7600581565b34801561033a57600080fd5b50600b5461021f90600160a01b900460ff1681565b34801561035b57600080fd5b506101a761036a3660046111b0565b60036020526000908152604090205481565b34801561038857600080fd5b506103916106f7565b005b34801561039f57600080fd5b506101a760025481565b3480156103b557600080fd5b506101a760015481565b3480156103cb57600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101b1565b3480156103fd57600080fd5b506101f260405180604001604052806005815260200164446f67654360d81b81525081565b34801561042e57600080fd5b506101a7600281565b34801561044357600080fd5b50600b546103d9906001600160a01b031681565b34801561046357600080fd5b5061021f61047236600461114a565b610785565b34801561048357600080fd5b506008546103d9906001600160a01b031681565b3480156104a357600080fd5b506101a76104b23660046111cb565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156104e957600080fd5b506009546103d9906001600160a01b031681565b34801561050957600080fd5b50600a546103d9906001600160a01b031681565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906105789086815260200190565b60405180910390a35060015b92915050565b6105966009600a6112f8565b6105a4906305f5e100611307565b81565b6001600160a01b038316600090815260046020908152604080832033845290915281205460001914610654576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b038716600090815260048252838120338252909152919091205461062f918490610792565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b61065f8484846107cc565b90505b9392505050565b60036020527f3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff5461dead60009081527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c5490916106e4916106de906106d06009600a6112f8565b6106de906305f5e100611307565b90610abe565b905090565b60006105848260001961051d565b6000546001600160a01b0316331461073f5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b604051600081527f04dba622d284ed0014ee4b9a6a68386be1a4c08a4913ae272de89199cc6861639060200160405180910390a1600080546001600160a01b0319169055565b60006106623384846107cc565b600081848411156107b65760405162461bcd60e51b815260040161073691906110d9565b5060006107c38486611326565b95945050505050565b600d5460009060ff16156107ec576107e5848484610b00565b9050610662565b6000546001600160a01b0385811691161415801561082357506001600160a01b03841660009081526007602052604090205460ff16155b801561084857506001600160a01b03831660009081526007602052604090205460ff16155b80156108625750600b546001600160a01b03848116911614155b156108dc576002546001600160a01b03841660009081526003602052604090205461088e90849061133d565b11156108dc5760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d6974207265616368656400000000000000006044820152606401610736565b6001548211158061090557506001600160a01b03841660009081526006602052604090205460ff165b8061092857506001600160a01b03831660009081526006602052604090205460ff165b6109685760405162461bcd60e51b8152602060048201526011602482015270151608131a5b5a5d08115e18d959591959607a1b6044820152606401610736565b610970610be6565b1561097d5761097d610c3c565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0387166000908152600390915291909120546109cf918490610792565b6001600160a01b038516600090815260036020908152604080832093909355600590529081205460ff1680610a1c57506001600160a01b03841660009081526005602052604090205460ff165b610a2f57610a2a8584610ef5565b610a31565b825b6001600160a01b038516600090815260036020526040902054909150610a579082610f90565b6001600160a01b0380861660008181526003602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610aab9085815260200190565b60405180910390a3506001949350505050565b600061066283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610792565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600390915291822054610b51918490610792565b6001600160a01b038086166000908152600360205260408082209390935590851681522054610b809083610f90565b6001600160a01b0380851660008181526003602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610bd49086815260200190565b60405180910390a35060019392505050565b600b546000906001600160a01b03163314801590610c075750600d5460ff16155b8015610c1c5750600b54600160a01b900460ff165b80156106e4575050600c5430600090815260036020526040902054101590565b600d805460ff19166001179055600c54600090610c6b90600290610c6590600790829084610fef565b9061106e565b90506000610c8482600c54610abe90919063ffffffff16565b60408051600280825260608201835292935060009290916020830190803683370190505090503081600081518110610cbe57610cbe611355565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610d1257610d12611355565b6001600160a01b039283166020918202929092010152600a5460405163791ac94760e01b815291169063791ac94790610d5890859060009086903090429060040161136b565b600060405180830381600087803b158015610d7257600080fd5b505af1158015610d86573d6000803e3d6000fd5b5047925060009150610da69050610d9e60028061106e565b600790610abe565b90506000610dbb6002610c6584818784610fef565b90506000610dce83610c65866005610fef565b6009546040519192506001600160a01b03169082156108fc029083906000818181858888f19350505050158015610e09573d6000803e3d6000fd5b508615610ee257600a5460085460405163f305d71960e01b8152306004820152602481018a905260006044820181905260648201526001600160a01b0391821660848201524260a482015291169063f305d71990849060c40160606040518083038185885af1158015610e80573d6000803e3d6000fd5b50505050506040513d601f19601f82011682018060405250810190610ea591906113dc565b505060408051848152602081018a90527f424db2872186fa7e7afa7a5e902ed3b49a2ef19c2f5431e672462495dd6b450692500160405180910390a15b5050600d805460ff191690555050505050565b600080610f086064610c65856007610fef565b30600090815260036020526040902054909150610f259082610f90565b30600081815260036020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f769085815260200190565b60405180910390a3610f888382610abe565b949350505050565b600080610f9d838561133d565b9050838110156106625760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610736565b600082610ffe57506000610584565b600061100a8385611307565b905082611017858361140a565b146106625760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610736565b600061066283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250600081836110cc5760405162461bcd60e51b815260040161073691906110d9565b5060006107c3848661140a565b600060208083528351808285015260005b81811015611106578581018301518582016040015282016110ea565b81811115611118576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461114557600080fd5b919050565b6000806040838503121561115d57600080fd5b6111668361112e565b946020939093013593505050565b60008060006060848603121561118957600080fd5b6111928461112e565b92506111a06020850161112e565b9150604084013590509250925092565b6000602082840312156111c257600080fd5b6106628261112e565b600080604083850312156111de57600080fd5b6111e78361112e565b91506111f56020840161112e565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561124f578160001904821115611235576112356111fe565b8085161561124257918102915b93841c9390800290611219565b509250929050565b60008261126657506001610584565b8161127357506000610584565b81600181146112895760028114611293576112af565b6001915050610584565b60ff8411156112a4576112a46111fe565b50506001821b610584565b5060208310610133831016604e8410600b84101617156112d2575081810a610584565b6112dc8383611214565b80600019048211156112f0576112f06111fe565b029392505050565b600061066260ff841683611257565b6000816000190483118215151615611321576113216111fe565b500290565b600082821015611338576113386111fe565b500390565b60008219821115611350576113506111fe565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156113bb5784516001600160a01b031683529383019391830191600101611396565b50506001600160a01b03969096166060850152505050608001529392505050565b6000806000606084860312156113f157600080fd5b8351925060208401519150604084015190509250925092565b60008261142757634e487b7160e01b600052601260045260246000fd5b50049056fea26469706673582212208ee9c3ad37bb3818d0a490183e09bef095de03d1f5ca4caa3c82cd746aaa58c664736f6c634300080c0033

Deployed Bytecode Sourcemap

3155:6939:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4374:49;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;4374:49:0;;;;;;;;3410:44;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3410:44:0;;;;;;;;;;;;:::i;5795:216::-;;;;;;;;;;-1:-1:-1;5795:216:0;;;;;:::i;:::-;;:::i;:::-;;;1400:14:1;;1393:22;1375:41;;1363:2;1348:18;5795:216:0;1235:187:1;4138:44:0;;;;;;;;;;;;4179:3;4138:44;;3548:64;;;;;;;;;;;;;:::i;4095:36::-;;;;;;;;;;;;4130:1;4095:36;;6313:370;;;;;;;;;;-1:-1:-1;6313:370:0;;;;;:::i;:::-;;:::i;9885:141::-;;;;;;;;;;;;;:::i;2104:103::-;;;;;;;;;;-1:-1:-1;2104:103:0;;;;;:::i;:::-;2159:4;2194:5;-1:-1:-1;;;;;2183:16:0;;;2194:5;;2183:16;;2104:103;3507:34;;;;;;;;;;;;3540:1;3507:34;;;;;2123:4:1;2111:17;;;2093:36;;2081:2;2066:18;3507:34:0;1951:184:1;6019:122:0;;;;;;;;;;-1:-1:-1;6019:122:0;;;;;:::i;:::-;;:::i;4048:40::-;;;;;;;;;;;;4087:1;4048:40;;4337:30;;;;;;;;;;-1:-1:-1;4337:30:0;;;;-1:-1:-1;;;4337:30:0;;;;;;3733:45;;;;;;;;;;-1:-1:-1;3733:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;2215:131;;;;;;;;;;;;;:::i;:::-;;3675:49;;;;;;;;;;;;;;;;3621:47;;;;;;;;;;;;;;;;5570:78;;;;;;;;;;-1:-1:-1;5622:7:0;5640:5;-1:-1:-1;;;;;5640:5:0;5570:78;;;-1:-1:-1;;;;;2304:32:1;;;2286:51;;2274:2;2259:18;5570:78:0;2140:203:1;3461:39:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3461:39:0;;;;;4001:40;;;;;;;;;;;;4040:1;4001:40;;4309:19;;;;;;;;;;-1:-1:-1;4309:19:0;;;;-1:-1:-1;;;;;4309:19:0;;;6149:156;;;;;;;;;;-1:-1:-1;6149:156:0;;;;;:::i;:::-;;:::i;4191:36::-;;;;;;;;;;-1:-1:-1;4191:36:0;;;;-1:-1:-1;;;;;4191:36:0;;;5654:133;;;;;;;;;;-1:-1:-1;5654:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;5756:19:0;;;5738:7;5756:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;5654:133;4234:35;;;;;;;;;;-1:-1:-1;4234:35:0;;;;-1:-1:-1;;;;;4234:35:0;;;4278:24;;;;;;;;;;-1:-1:-1;4278:24:0;;;;-1:-1:-1;;;;;4278:24:0;;;5795:216;5899:10;5870:4;5887:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;5887:32:0;;;;;;;;;;:41;;;5944:37;5870:4;;5887:32;;5944:37;;;;5922:6;160:25:1;;148:2;133:18;;14:177;5944:37:0;;;;;;;;-1:-1:-1;5999:4:0;5795:216;;;;;:::o;3548:64::-;3600:12;3540:1;3600:2;:12;:::i;:::-;3586:26;;:11;:26;:::i;:::-;3548:64;:::o;6313:370::-;-1:-1:-1;;;;;6433:19:0;;6413:4;6433:19;;;:11;:19;;;;;;;;6453:10;6433:31;;;;;;;;-1:-1:-1;;6433:52:0;6430:186;;6535:69;;;;;;;;;;;-1:-1:-1;;;6535:69:0;;;;;;;;-1:-1:-1;;;;;6535:19:0;;-1:-1:-1;6535:19:0;;;:11;:19;;;;;6555:10;6535:31;;;;;;;;;;:69;;6571:6;;6535:35;:69::i;:::-;-1:-1:-1;;;;;6501:19:0;;;;;;:11;:19;;;;;;;;6521:10;6501:31;;;;;;;:103;6430:186;6635:40;6649:6;6657:9;6668:6;6635:13;:40::i;:::-;6628:47;;6313:370;;;;;;:::o;9885:141::-;10002:9;:15;;;;3286:42;9938:7;9981:15;;;;;9938:7;;9965:53;;:32;;3600:12;3540:1;3600:2;:12;:::i;:::-;3586:26;;:11;:26;:::i;:::-;9965:15;;:32::i;:53::-;9958:60;;9885:141;:::o;6019:122::-;6074:4;6098:35;6106:7;-1:-1:-1;;6098:7:0;:35::i;2215:131::-;2159:4;2194:5;-1:-1:-1;;;;;2194:5:0;2063:10;2183:16;2047:38;;;;-1:-1:-1;;;2047:38:0;;4729:2:1;2047:38:0;;;4711:21:1;4768:1;4748:18;;;4741:29;-1:-1:-1;;;4786:18:1;;;4779:36;4832:18;;2047:38:0;;;;;;;;;2277:32:::1;::::0;2306:1:::1;2286:51:1::0;;2277:32:0::1;::::0;2274:2:1;2259:18;2277:32:0::1;;;;;;;2336:1;2320:18:::0;;-1:-1:-1;;;;;;2320:18:0::1;::::0;;2215:131::o;6149:156::-;6229:4;6253:44;6267:10;6279:9;6290:6;6253:13;:44::i;423:192::-;509:7;545:12;537:6;;;;529:29;;;;-1:-1:-1;;;529:29:0;;;;;;;;:::i;:::-;-1:-1:-1;569:9:0;581:5;585:1;581;:5;:::i;:::-;569:17;423:192;-1:-1:-1;;;;;423:192:0:o;6691:950::-;6803:6;;6783:4;;6803:6;;6800:63;;;6819:41;6834:6;6842:9;6853:6;6819:14;:41::i;:::-;6812:48;;;;6800:63;2159:4;2194:5;-1:-1:-1;;;;;2183:16:0;;;2194:5;;2183:16;6879;:48;;;;-1:-1:-1;;;;;;6900:27:0;;;;;;:19;:27;;;;;;;;6899:28;6879:48;:83;;;;-1:-1:-1;;;;;;6932:30:0;;;;;;:19;:30;;;;;;;;6931:31;6879:83;:104;;;;-1:-1:-1;6979:4:0;;-1:-1:-1;;;;;6966:17:0;;;6979:4;;6966:17;;6879:104;6875:223;;;7043:15;;-1:-1:-1;;;;;7009:20:0;;;;;;:9;:20;;;;;;:29;;7032:6;;7009:29;:::i;:::-;7008:50;;7000:86;;;;-1:-1:-1;;;7000:86:0;;5326:2:1;7000:86:0;;;5308:21:1;5365:2;5345:18;;;5338:30;5404:26;5384:18;;;5377:54;5448:18;;7000:86:0;5124:348:1;7000:86:0;7129:12;;7119:6;:22;;7118:51;;;-1:-1:-1;;;;;;7146:23:0;;;;;;:15;:23;;;;;;;;7118:51;:81;;;-1:-1:-1;;;;;;7173:26:0;;;;;;:15;:26;;;;;;;;7118:81;7110:111;;;;-1:-1:-1;;;7110:111:0;;5679:2:1;7110:111:0;;;5661:21:1;5718:2;5698:18;;;5691:30;-1:-1:-1;;;5737:18:1;;;5730:47;5794:18;;7110:111:0;5477:341:1;7110:111:0;7237:16;:14;:16::i;:::-;7234:35;;;7256:10;:8;:10::i;:::-;7301:53;;;;;;;;;;;-1:-1:-1;;;7301:53:0;;;;;;;;-1:-1:-1;;;;;7301:17:0;;-1:-1:-1;7301:17:0;;;:9;:17;;;;;;;;:53;;7323:6;;7301:21;:53::i;:::-;-1:-1:-1;;;;;7281:17:0;;;;;;:9;:17;;;;;;;;:73;;;;7393:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;7416:22:0;;;;;;:11;:22;;;;;;;;7393:45;7392:82;;7451:23;7459:6;7467;7451:7;:23::i;:::-;7392:82;;;7442:6;7392:82;-1:-1:-1;;;;;7510:20:0;;;;;;:9;:20;;;;;;7367:107;;-1:-1:-1;7510:40:0;;7367:107;7510:24;:40::i;:::-;-1:-1:-1;;;;;7487:20:0;;;;;;;:9;:20;;;;;;;:63;;;;7568:43;;;;;;;;;;7596:14;160:25:1;;148:2;133:18;;14:177;7568:43:0;;;;;;;;-1:-1:-1;7629:4:0;;6691:950;-1:-1:-1;;;;6691:950:0:o;281:136::-;339:7;366:43;370:1;373;366:43;;;;;;;;;;;;;;;;;:3;:43::i;7653:330::-;7783:53;;;;;;;;;;;-1:-1:-1;;;7783:53:0;;;;;;;;-1:-1:-1;;;;;7783:17:0;;7746:4;7783:17;;;:9;:17;;;;;;;:53;;7805:6;;7783:21;:53::i;:::-;-1:-1:-1;;;;;7763:17:0;;;;;;;:9;:17;;;;;;:73;;;;7870:20;;;;;;;:32;;7895:6;7870:24;:32::i;:::-;-1:-1:-1;;;;;7847:20:0;;;;;;;:9;:20;;;;;;;:55;;;;7918:35;;;;;;;;;;7946:6;160:25:1;;148:2;133:18;;14:177;7918:35:0;;;;;;;;-1:-1:-1;7971:4:0;7653:330;;;;;:::o;8404:197::-;8491:4;;8453;;-1:-1:-1;;;;;8491:4:0;8477:10;:18;;;;:38;;-1:-1:-1;8509:6:0;;;;8508:7;8477:38;:62;;;;-1:-1:-1;8528:11:0;;-1:-1:-1;;;8528:11:0;;;;8477:62;:116;;;;-1:-1:-1;;8580:13:0;;8570:4;8552:24;;;;:9;:24;;;;;;:41;;;8404:197::o;8609:1266::-;4470:6;:13;;-1:-1:-1;;4470:13:0;4479:4;4470:13;;;8684::::1;::::0;4470:6;;8684:52:::1;::::0;8734:1:::1;::::0;8684:45:::1;::::0;4130:1:::1;::::0;8684:45;;8734:1;8684:17:::1;:31::i;:::-;:35:::0;::::1;:45::i;:52::-;8658:78;;8747:20;8770:34;8788:15;8770:13;;:17;;:34;;;;:::i;:::-;8841:16;::::0;;8855:1:::1;8841:16:::0;;;;;::::1;::::0;;8747:57;;-1:-1:-1;8817:21:0::1;::::0;8841:16;;::::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8841:16:0::1;8817:40;;8886:4;8868;8873:1;8868:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;8868:23:0::1;;;-1:-1:-1::0;;;;;8868:23:0::1;;;::::0;::::1;8912:4;8902;8907:1;8902:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8902:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;8929:6:::1;::::0;:188:::1;::::0;-1:-1:-1;;;8929:188:0;;:6;::::1;::::0;:57:::1;::::0;:188:::1;::::0;9001:12;;8929:6:::1;::::0;9044:4;;9071::::1;::::0;9091:15:::1;::::0;8929:188:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;9150:21:0::1;::::0;-1:-1:-1;9130:17:0::1;::::0;-1:-1:-1;9206:33:0::1;::::0;-1:-1:-1;9219:19:0::1;9236:1;::::0;9219:16:::1;:19::i;:::-;4130:1;::::0;9206:12:::1;:33::i;:::-;9184:55:::0;-1:-1:-1;9258:26:0::1;9287:51;9336:1;9287:44;9184:55:::0;9287:44;:9;9336:1;9287:13:::1;:27::i;:51::-;9258:80:::0;-1:-1:-1;9349:26:0::1;9378:44;9410:11:::0;9378:27:::1;:9:::0;4087:1:::1;9378:13;:27::i;:44::-;9443:20;::::0;9435:58:::1;::::0;9349:73;;-1:-1:-1;;;;;;9443:20:0::1;::::0;9435:58;::::1;;;::::0;9349:73;;9443:20:::1;9435:58:::0;9443:20;9435:58;9349:73;9443:20;9435:58;::::1;;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;9509:19:0;;9506:362:::1;;9544:6;::::0;9718:21:::1;::::0;9544:244:::1;::::0;-1:-1:-1;;;9544:244:0;;9620:4:::1;9544:244;::::0;::::1;7413:34:1::0;7463:18;;;7456:34;;;9544:6:0::1;7506:18:1::0;;;7499:34;;;7549:18;;;7542:34;-1:-1:-1;;;;;9718:21:0;;::::1;7592:19:1::0;;;7585:44;9758:15:0::1;7645:19:1::0;;;7638:35;9544:6:0;::::1;::::0;:22:::1;::::0;9574:18;;7347:19:1;;9544:244:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;9808:48:0::1;::::0;;8169:25:1;;;8225:2;8210:18;;8203:34;;;9808:48:0::1;::::0;-1:-1:-1;8142:18:1;9808:48:0::1;;;;;;;9506:362;-1:-1:-1::0;;4488:6:0;:14;;-1:-1:-1;;4488:14:0;;;-1:-1:-1;;;;;8609:1266:0:o;7993:403::-;8060:7;8150:17;8170:40;4179:3;8170:20;:6;4130:1;8170:10;:20::i;:40::-;8268:4;8250:24;;;;:9;:24;;;;;;8150:60;;-1:-1:-1;8250:39:0;;8150:60;8250:28;:39::i;:::-;8241:4;8223:24;;;;:9;:24;;;;;;;:66;;;;8305:42;;-1:-1:-1;;;;;8305:42:0;;;;;;;8337:9;160:25:1;;148:2;133:18;;14:177;8305:42:0;;;;;;;;8367:21;:6;8378:9;8367:10;:21::i;:::-;8360:28;7993:403;-1:-1:-1;;;;7993:403:0:o;94:181::-;152:7;;184:5;188:1;184;:5;:::i;:::-;172:17;;213:1;208;:6;;200:46;;;;-1:-1:-1;;;200:46:0;;8450:2:1;200:46:0;;;8432:21:1;8489:2;8469:18;;;8462:30;8528:29;8508:18;;;8501:57;8575:18;;200:46:0;8248:351:1;621:250:0;679:7;703:6;699:47;;-1:-1:-1;733:1:0;726:8;;699:47;758:9;770:5;774:1;770;:5;:::i;:::-;758:17;-1:-1:-1;803:1:0;794:5;798:1;758:17;794:5;:::i;:::-;:10;786:56;;;;-1:-1:-1;;;786:56:0;;9028:2:1;786:56:0;;;9010:21:1;9067:2;9047:18;;;9040:30;9106:34;9086:18;;;9079:62;-1:-1:-1;;;9157:18:1;;;9150:31;9198:19;;786:56:0;8826:397:1;877:132:0;935:7;962:39;966:1;969;962:39;;;;;;;;;;;;;;;;;1101:7;1136:12;1129:5;1121:28;;;;-1:-1:-1;;;1121:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1160:9:0;1172:5;1176:1;1172;:5;:::i;196:597:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;634:6;631:1;628:13;625:91;;;704:1;699:2;690:6;679:9;675:22;671:31;664:42;625:91;-1:-1:-1;777:2:1;756:15;-1:-1:-1;;752:29:1;737:45;;;;784:2;733:54;;196:597;-1:-1:-1;;;196:597:1:o;798:173::-;866:20;;-1:-1:-1;;;;;915:31:1;;905:42;;895:70;;961:1;958;951:12;895:70;798:173;;;:::o;976:254::-;1044:6;1052;1105:2;1093:9;1084:7;1080:23;1076:32;1073:52;;;1121:1;1118;1111:12;1073:52;1144:29;1163:9;1144:29;:::i;:::-;1134:39;1220:2;1205:18;;;;1192:32;;-1:-1:-1;;;976:254:1:o;1427:328::-;1504:6;1512;1520;1573:2;1561:9;1552:7;1548:23;1544:32;1541:52;;;1589:1;1586;1579:12;1541:52;1612:29;1631:9;1612:29;:::i;:::-;1602:39;;1660:38;1694:2;1683:9;1679:18;1660:38;:::i;:::-;1650:48;;1745:2;1734:9;1730:18;1717:32;1707:42;;1427:328;;;;;:::o;1760:186::-;1819:6;1872:2;1860:9;1851:7;1847:23;1843:32;1840:52;;;1888:1;1885;1878:12;1840:52;1911:29;1930:9;1911:29;:::i;2348:260::-;2416:6;2424;2477:2;2465:9;2456:7;2452:23;2448:32;2445:52;;;2493:1;2490;2483:12;2445:52;2516:29;2535:9;2516:29;:::i;:::-;2506:39;;2564:38;2598:2;2587:9;2583:18;2564:38;:::i;:::-;2554:48;;2348:260;;;;;:::o;2839:127::-;2900:10;2895:3;2891:20;2888:1;2881:31;2931:4;2928:1;2921:15;2955:4;2952:1;2945:15;2971:422;3060:1;3103:5;3060:1;3117:270;3138:7;3128:8;3125:21;3117:270;;;3197:4;3193:1;3189:6;3185:17;3179:4;3176:27;3173:53;;;3206:18;;:::i;:::-;3256:7;3246:8;3242:22;3239:55;;;3276:16;;;;3239:55;3355:22;;;;3315:15;;;;3117:270;;;3121:3;2971:422;;;;;:::o;3398:806::-;3447:5;3477:8;3467:80;;-1:-1:-1;3518:1:1;3532:5;;3467:80;3566:4;3556:76;;-1:-1:-1;3603:1:1;3617:5;;3556:76;3648:4;3666:1;3661:59;;;;3734:1;3729:130;;;;3641:218;;3661:59;3691:1;3682:10;;3705:5;;;3729:130;3766:3;3756:8;3753:17;3750:43;;;3773:18;;:::i;:::-;-1:-1:-1;;3829:1:1;3815:16;;3844:5;;3641:218;;3943:2;3933:8;3930:16;3924:3;3918:4;3915:13;3911:36;3905:2;3895:8;3892:16;3887:2;3881:4;3878:12;3874:35;3871:77;3868:159;;;-1:-1:-1;3980:19:1;;;4012:5;;3868:159;4059:34;4084:8;4078:4;4059:34;:::i;:::-;4129:6;4125:1;4121:6;4117:19;4108:7;4105:32;4102:58;;;4140:18;;:::i;:::-;4178:20;;3398:806;-1:-1:-1;;;3398:806:1:o;4209:140::-;4267:5;4296:47;4337:4;4327:8;4323:19;4317:4;4296:47;:::i;4354:168::-;4394:7;4460:1;4456;4452:6;4448:14;4445:1;4442:21;4437:1;4430:9;4423:17;4419:45;4416:71;;;4467:18;;:::i;:::-;-1:-1:-1;4507:9:1;;4354:168::o;4861:125::-;4901:4;4929:1;4926;4923:8;4920:34;;;4934:18;;:::i;:::-;-1:-1:-1;4971:9:1;;4861:125::o;4991:128::-;5031:3;5062:1;5058:6;5055:1;5052:13;5049:39;;;5068:18;;:::i;:::-;-1:-1:-1;5104:9:1;;4991:128::o;5955:127::-;6016:10;6011:3;6007:20;6004:1;5997:31;6047:4;6044:1;6037:15;6071:4;6068:1;6061:15;6087:980;6349:4;6397:3;6386:9;6382:19;6428:6;6417:9;6410:25;6454:2;6492:6;6487:2;6476:9;6472:18;6465:34;6535:3;6530:2;6519:9;6515:18;6508:31;6559:6;6594;6588:13;6625:6;6617;6610:22;6663:3;6652:9;6648:19;6641:26;;6702:2;6694:6;6690:15;6676:29;;6723:1;6733:195;6747:6;6744:1;6741:13;6733:195;;;6812:13;;-1:-1:-1;;;;;6808:39:1;6796:52;;6903:15;;;;6868:12;;;;6844:1;6762:9;6733:195;;;-1:-1:-1;;;;;;;6984:32:1;;;;6979:2;6964:18;;6957:60;-1:-1:-1;;;7048:3:1;7033:19;7026:35;6945:3;6087:980;-1:-1:-1;;;6087:980:1:o;7684:306::-;7772:6;7780;7788;7841:2;7829:9;7820:7;7816:23;7812:32;7809:52;;;7857:1;7854;7847:12;7809:52;7886:9;7880:16;7870:26;;7936:2;7925:9;7921:18;7915:25;7905:35;;7980:2;7969:9;7965:18;7959:25;7949:35;;7684:306;;;;;:::o;8604:217::-;8644:1;8670;8660:132;;8714:10;8709:3;8705:20;8702:1;8695:31;8749:4;8746:1;8739:15;8777:4;8774:1;8767:15;8660:132;-1:-1:-1;8806:9:1;;8604:217::o

Swarm Source

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