ETH Price: $2,422.49 (+0.04%)

Token

Dogerium ($DOGERM)
 

Overview

Max Total Supply

200,000,000,000 $DOGERM

Holders

51

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
1,203,994,827.861793877299035518 $DOGERM

Value
$0.00
0x99749f51e759c272abc76fee393a3f92230db217
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:
ERC20DOGERIUM

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 500 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSED

/**
 * 
 * DOGERIUM
 * 
 * Website : http://dogerium.com/
 * Portal : https://t.me/DogeriumErcPortal
 * Twitter : https://twitter.com/DogeriumErc
 * Medium : https://medium.com/@dogeriumerc
 * 4chan : https://boards.4channel.org/biz/thread/55731590
 * 
 * 
**/

pragma solidity 0.8.19;

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() external onlyOwner {
        owner = address(0);
    }

}

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

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

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

    string public constant name = "Dogerium";
    string public constant symbol = "$DOGERM";
    uint8 public constant decimals = 18;
    
    uint256 public constant totalSupply = 200 * 10**9 * 10**decimals;

    address public walletMarketing;

    uint256 public _maxWalletToken = totalSupply / 50;

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

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

    uint256 public totalFee = 10;
    uint256 public constant feeDenominator = 100;
    
    uint256 buyMultiplier = 200;
    uint256 sellMultiplier = 200;
    uint256 transferMultiplier = 200;


    IDEXRouter public router;
    address public immutable pair;

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

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

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

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

        isWalletLimitExempt[msg.sender] = true;
        isWalletLimitExempt[address(this)] = true;
        isWalletLimitExempt[DEAD] = 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 setMaxWalletPercent_base1000(uint256 maxWallPercent_base1000) external onlyOwner {
        require(_maxWalletToken >= 10, "Cannot set max wallet below 1%");
        _maxWalletToken = (totalSupply * maxWallPercent_base1000 ) / 1000;
    }


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

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

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

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

        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, address recipient) internal returns (uint256) {
        if(amount == 0 || totalFee == 0){
            return amount;
        }

        uint256 multiplier = transferMultiplier;

        if(recipient == pair) {
            multiplier = sellMultiplier;
        } else if(sender == pair) {
            multiplier = buyMultiplier;
        }

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

        if(feeAmount > 0){
            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 clearStuckBalance(uint256 amountPercentage) external onlyOwner {
        uint256 amountETH = address(this).balance;
        uint256 amountToClear = ( amountETH * amountPercentage ) / 100;
        payable(msg.sender).transfer(amountToClear);
    }

    function clearStuckToken(address tokenAddress, uint256 tokens) external onlyOwner returns (bool success) {
        if(tokens == 0){
            tokens = ERC20(tokenAddress).balanceOf(address(this));
        }
        return ERC20(tokenAddress).transfer(msg.sender, tokens);
    }

    function swapBack() internal swapping {

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

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            swapThreshold,
            0,
            path,
            walletMarketing,
            block.timestamp
        );
    }

    function setMultipliers(uint256 _buy, uint256 _sell, uint256 _trans) external onlyOwner {
        require(_sell <= 100, "max sell tax allowed is 10%");
        require(_buy <= 100, "max buy tax allowed is 10%");
        require(_trans <= 100, "max transfer tax allowed is 5%");
        sellMultiplier = _sell;
        buyMultiplier = _buy;
        transferMultiplier = _trans;
    }

    function setSwapBackSettings(bool _enabled, uint256 _denominator) external onlyOwner {
        swapEnabled = _enabled;
        swapThreshold = totalSupply / _denominator;
    }

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"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":"_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":[{"internalType":"address","name":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"amountPercentage","type":"uint256"}],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"tokens","type":"uint256"}],"name":"clearStuckToken","outputs":[{"internalType":"bool","name":"success","type":"bool"}],"stateMutability":"nonpayable","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":"","type":"address"}],"name":"isFeeExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"isWalletLimitExempt","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":[{"internalType":"uint256","name":"maxWallPercent_base1000","type":"uint256"}],"name":"setMaxWalletPercent_base1000","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_buy","type":"uint256"},{"internalType":"uint256","name":"_sell","type":"uint256"},{"internalType":"uint256","name":"_trans","type":"uint256"}],"name":"setMultipliers","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_denominator","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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"},{"inputs":[],"name":"walletMarketing","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60c06040526032620000146012600a6200048e565b6200002590642e90edd000620004a6565b620000319190620004c0565b600255600a600781905560c8600881905560098190558155600b805460ff60a01b1916600160a01b17905561012c906200006e906012906200048e565b6200007f90642e90edd000620004a6565b6200008b9190620004c0565b600c553480156200009b57600080fd5b50600080546001600160a01b03199081163317909155600b80548216737a250d5630b4cf539739df2c5dacb4c659f2488d90811790915560018054909216737bfa8323bff733e6ba8c0ab5f8a536457ff95f4217909155604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa1580156200012e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001549190620004e3565b6001600160a01b03908116608052600b546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa158015620001a5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001cb9190620004e3565b6080516040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af11580156200021d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002439190620004e3565b6001600160a01b0390811660a052306000818152600460209081526040808320600b54861684528252808320600019905533808452600583528184208054600160ff19918216811790925581549097168552828520805488168217905590845260069092528083208054861683179055928252918120805484168317905561dead90527f1aecba4ebe7a4e0673e4891b2b092b2228e4322380b579fb494fad3da8586e228054909216179055620002fd6012600a6200048e565b6200030e90642e90edd000620004a6565b33600081815260036020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003516012600a6200048e565b6200036290642e90edd000620004a6565b60405190815260200160405180910390a36200050e565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003d0578160001904821115620003b457620003b462000379565b80851615620003c257918102915b93841c939080029062000394565b509250929050565b600082620003e95750600162000488565b81620003f85750600062000488565b81600181146200041157600281146200041c576200043c565b600191505062000488565b60ff84111562000430576200043062000379565b50506001821b62000488565b5060208310610133831016604e8410600b841016171562000461575081810a62000488565b6200046d83836200038f565b806000190482111562000484576200048462000379565b0290505b92915050565b60006200049f60ff841683620003d8565b9392505050565b808202811582820484141762000488576200048862000379565b600082620004de57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620004f657600080fd5b81516001600160a01b03811681146200049f57600080fd5b60805160a0516118b0620005506000396000818161050001528181610d520152818161104b015281816111fb015261122f0152600061111501526118b06000f3fe6080604052600436106101bb5760003560e01c80636ce46bc3116100ec57806395d89b411161008a578063c867d60b11610064578063c867d60b14610542578063dd62ed3e14610572578063df20fd49146105b8578063f887ea40146105d857600080fd5b806395d89b41146104bb578063a8aa1b31146104ee578063a9059cbb1461052257600080fd5b8063715018a6116100c6578063715018a61461045257806377b54bad1461046757806378109e5414610487578063893d20e81461049d57600080fd5b80636ce46bc3146103e45780636ddd17131461040457806370a082311461042557600080fd5b80631df4ccfc116101595780632f54bf6e116101335780632f54bf6e1461033e578063313ce5671461036d5780633f4218e014610394578063571ac8b0146103c457600080fd5b80631df4ccfc146102f357806323b872dd146103095780632b112e491461032957600080fd5b80630aae3412116101955780630aae341214610263578063180b0d7e1461029b57806318160ddd146102be5780631da1db5e146102d357600080fd5b806306fdde03146101c757806309302dc614610211578063095ea7b31461023357600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101fb60405180604001604052806008815260200167446f67657269756d60c01b81525081565b60405161020891906114c3565b60405180910390f35b34801561021d57600080fd5b5061023161022c366004611511565b6105f8565b005b34801561023f57600080fd5b5061025361024e366004611546565b6106cc565b6040519015158152602001610208565b34801561026f57600080fd5b50600154610283906001600160a01b031681565b6040516001600160a01b039091168152602001610208565b3480156102a757600080fd5b506102b0606481565b604051908152602001610208565b3480156102ca57600080fd5b506102b0610739565b3480156102df57600080fd5b506102316102ee366004611511565b610757565b3480156102ff57600080fd5b506102b060075481565b34801561031557600080fd5b50610253610324366004611570565b6107e9565b34801561033557600080fd5b506102b06108b2565b34801561034a57600080fd5b506102536103593660046115ac565b6000546001600160a01b0391821691161490565b34801561037957600080fd5b50610382601281565b60405160ff9091168152602001610208565b3480156103a057600080fd5b506102536103af3660046115ac565b60056020526000908152604090205460ff1681565b3480156103d057600080fd5b506102536103df3660046115ac565b61093a565b3480156103f057600080fd5b506102316103ff3660046115c7565b610948565b34801561041057600080fd5b50600b5461025390600160a01b900460ff1681565b34801561043157600080fd5b506102b06104403660046115ac565b60036020526000908152604090205481565b34801561045e57600080fd5b50610231610a8f565b34801561047357600080fd5b50610253610482366004611546565b610af1565b34801561049357600080fd5b506102b060025481565b3480156104a957600080fd5b506000546001600160a01b0316610283565b3480156104c757600080fd5b506101fb6040518060400160405280600781526020016624444f4745524d60c81b81525081565b3480156104fa57600080fd5b506102837f000000000000000000000000000000000000000000000000000000000000000081565b34801561052e57600080fd5b5061025361053d366004611546565b610c19565b34801561054e57600080fd5b5061025361055d3660046115ac565b60066020526000908152604090205460ff1681565b34801561057e57600080fd5b506102b061058d3660046115f3565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156105c457600080fd5b506102316105d3366004611637565b610c26565b3480156105e457600080fd5b50600b54610283906001600160a01b031681565b6000546001600160a01b031633146106405760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b600a60025410156106935760405162461bcd60e51b815260206004820152601e60248201527f43616e6e6f7420736574206d61782077616c6c65742062656c6f7720312500006044820152606401610637565b6103e8816106a36012600a61174f565b6106b290642e90edd00061175e565b6106bc919061175e565b6106c69190611775565b60025550565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107279086815260200190565b60405180910390a35060015b92915050565b6107456012600a61174f565b61075490642e90edd00061175e565b81565b6000546001600160a01b0316331461079a5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b47600060646107a9848461175e565b6107b39190611775565b604051909150339082156108fc029083906000818181858888f193505050501580156107e3573d6000803e3d6000fd5b50505050565b6001600160a01b03831660009081526004602090815260408083203384529091528120546000191461089d57604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b0387166000908152600482528381203382529091529190912054610878918490610cad565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b6108a8848484610ce7565b90505b9392505050565b60036020527f3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff5461dead60009081527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c549091906109126012600a61174f565b61092190642e90edd00061175e565b61092b9190611797565b6109359190611797565b905090565b6000610733826000196106cc565b6000546001600160a01b0316331461098b5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b60648211156109dc5760405162461bcd60e51b815260206004820152601b60248201527f6d61782073656c6c2074617820616c6c6f7765642069732031302500000000006044820152606401610637565b6064831115610a2d5760405162461bcd60e51b815260206004820152601a60248201527f6d6178206275792074617820616c6c6f776564206973203130250000000000006044820152606401610637565b6064811115610a7e5760405162461bcd60e51b815260206004820152601e60248201527f6d6178207472616e736665722074617820616c6c6f77656420697320352500006044820152606401610637565b600991909155600891909155600a55565b6000546001600160a01b03163314610ad25760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b6000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600080546001600160a01b03163314610b355760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b81600003610ba8576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610b81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba591906117aa565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610bf5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ab91906117c3565b60006108ab338484610ce7565b6000546001600160a01b03163314610c695760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b600b805460ff60a01b1916600160a01b8415150217905580610c8d6012600a61174f565b610c9c90642e90edd00061175e565b610ca69190611775565b600c555050565b60008184841115610cd15760405162461bcd60e51b815260040161063791906114c3565b506000610cde8486611797565b95945050505050565b600d5460009060ff1615610d0757610d00848484610f58565b90506108ab565b6001600160a01b03841660009081526006602052604090205460ff16158015610d4957506001600160a01b03831660009081526006602052604090205460ff16155b8015610d8757507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b15610e01576002546001600160a01b038416600090815260036020526040902054610db39084906117e0565b1115610e015760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d6974207265616368656400000000000000006044820152606401610637565b610e0961103e565b15610e1657610e166110b1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260039091529190912054610e68918490610cad565b6001600160a01b038516600090815260036020908152604080832093909355600590529081205460ff1680610eb557506001600160a01b03841660009081526005602052604090205460ff165b610ec957610ec48584866111d3565b610ecb565b825b6001600160a01b038516600090815260036020526040902054909150610ef19082611330565b6001600160a01b0380861660008181526003602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f459085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600390915291822054610fa9918490610cad565b6001600160a01b038086166000908152600360205260408082209390935590851681522054610fd89083611330565b6001600160a01b0380851660008181526003602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061102c9086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161480159061107c5750600d5460ff16155b80156110915750600b54600160a01b900460ff165b8015610935575050600c5430600090815260036020526040902054101590565b600d805460ff1916600117905560408051600280825260608201835260009260208301908036833701905050905030816000815181106110f3576110f36117f3565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110611147576111476117f3565b6001600160a01b039283166020918202929092010152600b54600c5460015460405163791ac94760e01b81529284169363791ac94793611194939260009288929116904290600401611809565b600060405180830381600087803b1580156111ae57600080fd5b505af11580156111c2573d6000803e3d6000fd5b5050600d805460ff19169055505050565b60008215806111e25750600754155b156111ee5750816108ab565b600a546001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081169084160361122d575060095461126b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03160361126b57506008545b60006112a061127b60648061175e565b61129a846112946007548a61138f90919063ffffffff16565b9061138f565b90611411565b9050801561131c57306000908152600360205260409020546112c29082611330565b30600081815260036020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113139085815260200190565b60405180910390a35b6113268582611453565b9695505050505050565b60008061133d83856117e0565b9050838110156108ab5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610637565b6000826000036113a157506000610733565b60006113ad838561175e565b9050826113ba8583611775565b146108ab5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610637565b60006108ab83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611495565b60006108ab83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610cad565b600081836114b65760405162461bcd60e51b815260040161063791906114c3565b506000610cde8486611775565b600060208083528351808285015260005b818110156114f0578581018301518582016040015282016114d4565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561152357600080fd5b5035919050565b80356001600160a01b038116811461154157600080fd5b919050565b6000806040838503121561155957600080fd5b6115628361152a565b946020939093013593505050565b60008060006060848603121561158557600080fd5b61158e8461152a565b925061159c6020850161152a565b9150604084013590509250925092565b6000602082840312156115be57600080fd5b6108ab8261152a565b6000806000606084860312156115dc57600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561160657600080fd5b61160f8361152a565b915061161d6020840161152a565b90509250929050565b801515811461163457600080fd5b50565b6000806040838503121561164a57600080fd5b823561156281611626565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116a657816000190482111561168c5761168c611655565b8085161561169957918102915b93841c9390800290611670565b509250929050565b6000826116bd57506001610733565b816116ca57506000610733565b81600181146116e057600281146116ea57611706565b6001915050610733565b60ff8411156116fb576116fb611655565b50506001821b610733565b5060208310610133831016604e8410600b8410161715611729575081810a610733565b611733838361166b565b806000190482111561174757611747611655565b029392505050565b60006108ab60ff8416836116ae565b808202811582820484141761073357610733611655565b60008261179257634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733611655565b6000602082840312156117bc57600080fd5b5051919050565b6000602082840312156117d557600080fd5b81516108ab81611626565b8082018082111561073357610733611655565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118595784516001600160a01b031683529383019391830191600101611834565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212202254d3e1913f48f091ab9b99c6c6d9570f9fece9fc0fff4362afe7929568164e64736f6c63430008130033

Deployed Bytecode

0x6080604052600436106101bb5760003560e01c80636ce46bc3116100ec57806395d89b411161008a578063c867d60b11610064578063c867d60b14610542578063dd62ed3e14610572578063df20fd49146105b8578063f887ea40146105d857600080fd5b806395d89b41146104bb578063a8aa1b31146104ee578063a9059cbb1461052257600080fd5b8063715018a6116100c6578063715018a61461045257806377b54bad1461046757806378109e5414610487578063893d20e81461049d57600080fd5b80636ce46bc3146103e45780636ddd17131461040457806370a082311461042557600080fd5b80631df4ccfc116101595780632f54bf6e116101335780632f54bf6e1461033e578063313ce5671461036d5780633f4218e014610394578063571ac8b0146103c457600080fd5b80631df4ccfc146102f357806323b872dd146103095780632b112e491461032957600080fd5b80630aae3412116101955780630aae341214610263578063180b0d7e1461029b57806318160ddd146102be5780631da1db5e146102d357600080fd5b806306fdde03146101c757806309302dc614610211578063095ea7b31461023357600080fd5b366101c257005b600080fd5b3480156101d357600080fd5b506101fb60405180604001604052806008815260200167446f67657269756d60c01b81525081565b60405161020891906114c3565b60405180910390f35b34801561021d57600080fd5b5061023161022c366004611511565b6105f8565b005b34801561023f57600080fd5b5061025361024e366004611546565b6106cc565b6040519015158152602001610208565b34801561026f57600080fd5b50600154610283906001600160a01b031681565b6040516001600160a01b039091168152602001610208565b3480156102a757600080fd5b506102b0606481565b604051908152602001610208565b3480156102ca57600080fd5b506102b0610739565b3480156102df57600080fd5b506102316102ee366004611511565b610757565b3480156102ff57600080fd5b506102b060075481565b34801561031557600080fd5b50610253610324366004611570565b6107e9565b34801561033557600080fd5b506102b06108b2565b34801561034a57600080fd5b506102536103593660046115ac565b6000546001600160a01b0391821691161490565b34801561037957600080fd5b50610382601281565b60405160ff9091168152602001610208565b3480156103a057600080fd5b506102536103af3660046115ac565b60056020526000908152604090205460ff1681565b3480156103d057600080fd5b506102536103df3660046115ac565b61093a565b3480156103f057600080fd5b506102316103ff3660046115c7565b610948565b34801561041057600080fd5b50600b5461025390600160a01b900460ff1681565b34801561043157600080fd5b506102b06104403660046115ac565b60036020526000908152604090205481565b34801561045e57600080fd5b50610231610a8f565b34801561047357600080fd5b50610253610482366004611546565b610af1565b34801561049357600080fd5b506102b060025481565b3480156104a957600080fd5b506000546001600160a01b0316610283565b3480156104c757600080fd5b506101fb6040518060400160405280600781526020016624444f4745524d60c81b81525081565b3480156104fa57600080fd5b506102837f000000000000000000000000da1aa80b8277c98da08f2650599b9eeec77a44d381565b34801561052e57600080fd5b5061025361053d366004611546565b610c19565b34801561054e57600080fd5b5061025361055d3660046115ac565b60066020526000908152604090205460ff1681565b34801561057e57600080fd5b506102b061058d3660046115f3565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205490565b3480156105c457600080fd5b506102316105d3366004611637565b610c26565b3480156105e457600080fd5b50600b54610283906001600160a01b031681565b6000546001600160a01b031633146106405760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b600a60025410156106935760405162461bcd60e51b815260206004820152601e60248201527f43616e6e6f7420736574206d61782077616c6c65742062656c6f7720312500006044820152606401610637565b6103e8816106a36012600a61174f565b6106b290642e90edd00061175e565b6106bc919061175e565b6106c69190611775565b60025550565b3360008181526004602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906107279086815260200190565b60405180910390a35060015b92915050565b6107456012600a61174f565b61075490642e90edd00061175e565b81565b6000546001600160a01b0316331461079a5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b47600060646107a9848461175e565b6107b39190611775565b604051909150339082156108fc029083906000818181858888f193505050501580156107e3573d6000803e3d6000fd5b50505050565b6001600160a01b03831660009081526004602090815260408083203384529091528120546000191461089d57604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b0387166000908152600482528381203382529091529190912054610878918490610cad565b6001600160a01b03851660009081526004602090815260408083203384529091529020555b6108a8848484610ce7565b90505b9392505050565b60036020527f3617319a054d772f909f7c479a2cebe5066e836a939412e32403c99029b92eff5461dead60009081527f262bb27bbdd95c1cdc8e16957e36e38579ea44f7f6413dd7a9c75939def06b2c549091906109126012600a61174f565b61092190642e90edd00061175e565b61092b9190611797565b6109359190611797565b905090565b6000610733826000196106cc565b6000546001600160a01b0316331461098b5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b60648211156109dc5760405162461bcd60e51b815260206004820152601b60248201527f6d61782073656c6c2074617820616c6c6f7765642069732031302500000000006044820152606401610637565b6064831115610a2d5760405162461bcd60e51b815260206004820152601a60248201527f6d6178206275792074617820616c6c6f776564206973203130250000000000006044820152606401610637565b6064811115610a7e5760405162461bcd60e51b815260206004820152601e60248201527f6d6178207472616e736665722074617820616c6c6f77656420697320352500006044820152606401610637565b600991909155600891909155600a55565b6000546001600160a01b03163314610ad25760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b6000805473ffffffffffffffffffffffffffffffffffffffff19169055565b600080546001600160a01b03163314610b355760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b81600003610ba8576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa158015610b81573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ba591906117aa565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af1158015610bf5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ab91906117c3565b60006108ab338484610ce7565b6000546001600160a01b03163314610c695760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b6044820152606401610637565b600b805460ff60a01b1916600160a01b8415150217905580610c8d6012600a61174f565b610c9c90642e90edd00061175e565b610ca69190611775565b600c555050565b60008184841115610cd15760405162461bcd60e51b815260040161063791906114c3565b506000610cde8486611797565b95945050505050565b600d5460009060ff1615610d0757610d00848484610f58565b90506108ab565b6001600160a01b03841660009081526006602052604090205460ff16158015610d4957506001600160a01b03831660009081526006602052604090205460ff16155b8015610d8757507f000000000000000000000000da1aa80b8277c98da08f2650599b9eeec77a44d36001600160a01b0316836001600160a01b031614155b15610e01576002546001600160a01b038416600090815260036020526040902054610db39084906117e0565b1115610e015760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d6974207265616368656400000000000000006044820152606401610637565b610e0961103e565b15610e1657610e166110b1565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260039091529190912054610e68918490610cad565b6001600160a01b038516600090815260036020908152604080832093909355600590529081205460ff1680610eb557506001600160a01b03841660009081526005602052604090205460ff165b610ec957610ec48584866111d3565b610ecb565b825b6001600160a01b038516600090815260036020526040902054909150610ef19082611330565b6001600160a01b0380861660008181526003602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f459085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600390915291822054610fa9918490610cad565b6001600160a01b038086166000908152600360205260408082209390935590851681522054610fd89083611330565b6001600160a01b0380851660008181526003602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9061102c9086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f000000000000000000000000da1aa80b8277c98da08f2650599b9eeec77a44d3161480159061107c5750600d5460ff16155b80156110915750600b54600160a01b900460ff165b8015610935575050600c5430600090815260036020526040902054101590565b600d805460ff1916600117905560408051600280825260608201835260009260208301908036833701905050905030816000815181106110f3576110f36117f3565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110611147576111476117f3565b6001600160a01b039283166020918202929092010152600b54600c5460015460405163791ac94760e01b81529284169363791ac94793611194939260009288929116904290600401611809565b600060405180830381600087803b1580156111ae57600080fd5b505af11580156111c2573d6000803e3d6000fd5b5050600d805460ff19169055505050565b60008215806111e25750600754155b156111ee5750816108ab565b600a546001600160a01b037f000000000000000000000000da1aa80b8277c98da08f2650599b9eeec77a44d381169084160361122d575060095461126b565b7f000000000000000000000000da1aa80b8277c98da08f2650599b9eeec77a44d36001600160a01b0316856001600160a01b03160361126b57506008545b60006112a061127b60648061175e565b61129a846112946007548a61138f90919063ffffffff16565b9061138f565b90611411565b9050801561131c57306000908152600360205260409020546112c29082611330565b30600081815260036020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906113139085815260200190565b60405180910390a35b6113268582611453565b9695505050505050565b60008061133d83856117e0565b9050838110156108ab5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610637565b6000826000036113a157506000610733565b60006113ad838561175e565b9050826113ba8583611775565b146108ab5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610637565b60006108ab83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611495565b60006108ab83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610cad565b600081836114b65760405162461bcd60e51b815260040161063791906114c3565b506000610cde8486611775565b600060208083528351808285015260005b818110156114f0578581018301518582016040015282016114d4565b506000604082860101526040601f19601f8301168501019250505092915050565b60006020828403121561152357600080fd5b5035919050565b80356001600160a01b038116811461154157600080fd5b919050565b6000806040838503121561155957600080fd5b6115628361152a565b946020939093013593505050565b60008060006060848603121561158557600080fd5b61158e8461152a565b925061159c6020850161152a565b9150604084013590509250925092565b6000602082840312156115be57600080fd5b6108ab8261152a565b6000806000606084860312156115dc57600080fd5b505081359360208301359350604090920135919050565b6000806040838503121561160657600080fd5b61160f8361152a565b915061161d6020840161152a565b90509250929050565b801515811461163457600080fd5b50565b6000806040838503121561164a57600080fd5b823561156281611626565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156116a657816000190482111561168c5761168c611655565b8085161561169957918102915b93841c9390800290611670565b509250929050565b6000826116bd57506001610733565b816116ca57506000610733565b81600181146116e057600281146116ea57611706565b6001915050610733565b60ff8411156116fb576116fb611655565b50506001821b610733565b5060208310610133831016604e8410600b8410161715611729575081810a610733565b611733838361166b565b806000190482111561174757611747611655565b029392505050565b60006108ab60ff8416836116ae565b808202811582820484141761073357610733611655565b60008261179257634e487b7160e01b600052601260045260246000fd5b500490565b8181038181111561073357610733611655565b6000602082840312156117bc57600080fd5b5051919050565b6000602082840312156117d557600080fd5b81516108ab81611626565b8082018082111561073357610733611655565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156118595784516001600160a01b031683529383019391830191600101611834565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212202254d3e1913f48f091ab9b99c6c6d9570f9fece9fc0fff4362afe7929568164e64736f6c63430008130033

Deployed Bytecode Sourcemap

3058:7146:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3315:40;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3315:40:0;;;;;;;;;;;;:::i;:::-;;;;;;;;6185:249;;;;;;;;;;-1:-1:-1;6185:249:0;;;;;:::i;:::-;;:::i;:::-;;5289:216;;;;;;;;;;-1:-1:-1;5289:216:0;;;;;:::i;:::-;;:::i;:::-;;;1377:14:1;;1370:22;1352:41;;1340:2;1325:18;5289:216:0;1212:187:1;3531:30:0;;;;;;;;;;-1:-1:-1;3531:30:0;;;;-1:-1:-1;;;;;3531:30:0;;;;;;-1:-1:-1;;;;;1568:55:1;;;1550:74;;1538:2;1523:18;3531:30:0;1404:226:1;3897:44:0;;;;;;;;;;;;3938:3;3897:44;;;;;1781:25:1;;;1769:2;1754:18;3897:44:0;1635:177:1;3458:64:0;;;;;;;;;;;;;:::i;8551:259::-;;;;;;;;;;-1:-1:-1;8551:259:0;;;;;:::i;:::-;;:::i;3862:28::-;;;;;;;;;;;;;;;;5807:370;;;;;;;;;;-1:-1:-1;5807:370:0;;;;;:::i;:::-;;:::i;10064:137::-;;;;;;;;;;;;;:::i;2378:103::-;;;;;;;;;;-1:-1:-1;2378:103:0;;;;;:::i;:::-;2433:4;2468:5;-1:-1:-1;;;;;2457:16:0;;;2468:5;;2457:16;;2378:103;3410:35;;;;;;;;;;;;3443:2;3410:35;;;;;2513:4:1;2501:17;;;2483:36;;2471:2;2456:18;3410:35:0;2341:184:1;3750:44:0;;;;;;;;;;-1:-1:-1;3750:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5513:122;;;;;;;;;;-1:-1:-1;5513:122:0;;;;;:::i;:::-;;:::i;9480:389::-;;;;;;;;;;-1:-1:-1;9480:389:0;;;;;:::i;:::-;;:::i;4135:30::-;;;;;;;;;;-1:-1:-1;4135:30:0;;;;-1:-1:-1;;;4135:30:0;;;;;;3628:45;;;;;;;;;;-1:-1:-1;3628:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;2489:85;;;;;;;;;;;;;:::i;8818:284::-;;;;;;;;;;-1:-1:-1;8818:284:0;;;;;:::i;:::-;;:::i;3570:49::-;;;;;;;;;;;;;;;;5064:78;;;;;;;;;;-1:-1:-1;5116:7:0;5134:5;-1:-1:-1;;;;;5134:5:0;5064:78;;3362:41;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3362:41:0;;;;;4097:29;;;;;;;;;;;;;;;5643:156;;;;;;;;;;-1:-1:-1;5643:156:0;;;;;:::i;:::-;;:::i;3801:52::-;;;;;;;;;;-1:-1:-1;3801:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5148:133;;;;;;;;;;-1:-1:-1;5148:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;5250:19:0;;;5232:7;5250:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;5148:133;9877:179;;;;;;;;;;-1:-1:-1;9877:179:0;;;;;:::i;:::-;;:::i;4066:24::-;;;;;;;;;;-1:-1:-1;4066:24:0;;;;-1:-1:-1;;;;;4066:24:0;;;6185:249;2433:4;2468:5;-1:-1:-1;;;;;2468:5:0;2337:10;2457:16;2321:38;;;;-1:-1:-1;;;2321:38:0;;4004:2:1;2321:38:0;;;3986:21:1;4043:1;4023:18;;;4016:29;-1:-1:-1;;;4061:18:1;;;4054:36;4107:18;;2321:38:0;;;;;;;;;6313:2:::1;6294:15;;:21;;6286:64;;;::::0;-1:-1:-1;;;6286:64:0;;4338:2:1;6286:64:0::1;::::0;::::1;4320:21:1::0;4377:2;4357:18;;;4350:30;4416:32;4396:18;;;4389:60;4466:18;;6286:64:0::1;4136:354:1::0;6286:64:0::1;6422:4;6394:23:::0;3510:12:::1;3443:2;3510;:12;:::i;:::-;3496:26;::::0;:11:::1;:26;:::i;:::-;6380:37;;;;:::i;:::-;6379:47;;;;:::i;:::-;6361:15;:65:::0;-1:-1:-1;6185:249:0:o;5289:216::-;5393:10;5364:4;5381:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;5381:32:0;;;;;;;;;;:41;;;5438:37;5364:4;;5381:32;;5438:37;;;;5416:6;1781:25:1;;1769:2;1754:18;;1635:177;5438:37:0;;;;;;;;-1:-1:-1;5493:4:0;5289:216;;;;;:::o;3458:64::-;3510:12;3443:2;3510;:12;:::i;:::-;3496:26;;:11;:26;:::i;:::-;3458:64;:::o;8551:259::-;2433:4;2468:5;-1:-1:-1;;;;;2468:5:0;2337:10;2457:16;2321:38;;;;-1:-1:-1;;;2321:38:0;;4004:2:1;2321:38:0;;;3986:21:1;4043:1;4023:18;;;4016:29;-1:-1:-1;;;4061:18:1;;;4054:36;4107:18;;2321:38:0;3802:329:1;2321:38:0;8654:21:::1;8634:17;8745:3;8712:28;8724:16:::0;8654:21;8712:28:::1;:::i;:::-;8710:38;;;;:::i;:::-;8759:43;::::0;8686:62;;-1:-1:-1;8767:10:0::1;::::0;8759:43;::::1;;;::::0;8686:62;;8759:43:::1;::::0;;;8686:62;8767:10;8759:43;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;8623:187;;8551:259:::0;:::o;5807:370::-;-1:-1:-1;;;;;5927:19:0;;5907:4;5927:19;;;:11;:19;;;;;;;;5947:10;5927:31;;;;;;;;-1:-1:-1;;5927:52:0;5924:186;;6029:69;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6029:19:0;;-1:-1:-1;6029:19:0;;;:11;:19;;;;;6049:10;6029:31;;;;;;;;;;:69;;6065:6;;6029:35;:69::i;:::-;-1:-1:-1;;;;;5995:19:0;;;;;;:11;:19;;;;;;;;6015:10;5995:31;;;;;;;:103;5924:186;6129:40;6143:6;6151:9;6162:6;6129:13;:40::i;:::-;6122:47;;5807:370;;;;;;:::o;10064:137::-;10177:9;:15;;;;3191:42;10117:7;10159:15;;;;;10117:7;;10177:15;3510:12;3443:2;3510;:12;:::i;:::-;3496:26;;:11;:26;:::i;:::-;10145:29;;;;:::i;:::-;:47;;;;:::i;:::-;10137:56;;10064:137;:::o;5513:122::-;5568:4;5592:35;5600:7;-1:-1:-1;;5592:7:0;:35::i;9480:389::-;2433:4;2468:5;-1:-1:-1;;;;;2468:5:0;2337:10;2457:16;2321:38;;;;-1:-1:-1;;;2321:38:0;;4004:2:1;2321:38:0;;;3986:21:1;4043:1;4023:18;;;4016:29;-1:-1:-1;;;4061:18:1;;;4054:36;4107:18;;2321:38:0;3802:329:1;2321:38:0;9596:3:::1;9587:5;:12;;9579:52;;;::::0;-1:-1:-1;;;9579:52:0;;6740:2:1;9579:52:0::1;::::0;::::1;6722:21:1::0;6779:2;6759:18;;;6752:30;6818:29;6798:18;;;6791:57;6865:18;;9579:52:0::1;6538:351:1::0;9579:52:0::1;9658:3;9650:4;:11;;9642:50;;;::::0;-1:-1:-1;;;9642:50:0;;7096:2:1;9642:50:0::1;::::0;::::1;7078:21:1::0;7135:2;7115:18;;;7108:30;7174:28;7154:18;;;7147:56;7220:18;;9642:50:0::1;6894:350:1::0;9642:50:0::1;9721:3;9711:6;:13;;9703:56;;;::::0;-1:-1:-1;;;9703:56:0;;7451:2:1;9703:56:0::1;::::0;::::1;7433:21:1::0;7490:2;7470:18;;;7463:30;7529:32;7509:18;;;7502:60;7579:18;;9703:56:0::1;7249:354:1::0;9703:56:0::1;9770:14;:22:::0;;;;9803:13:::1;:20:::0;;;;9834:18:::1;:27:::0;9480:389::o;2489:85::-;2433:4;2468:5;-1:-1:-1;;;;;2468:5:0;2337:10;2457:16;2321:38;;;;-1:-1:-1;;;2321:38:0;;4004:2:1;2321:38:0;;;3986:21:1;4043:1;4023:18;;;4016:29;-1:-1:-1;;;4061:18:1;;;4054:36;4107:18;;2321:38:0;3802:329:1;2321:38:0;2564:1:::1;2548:18:::0;;-1:-1:-1;;2548:18:0::1;::::0;;2489:85::o;8818:284::-;8909:12;2468:5;;-1:-1:-1;;;;;2468:5:0;2337:10;2457:16;2321:38;;;;-1:-1:-1;;;2321:38:0;;4004:2:1;2321:38:0;;;3986:21:1;4043:1;4023:18;;;4016:29;-1:-1:-1;;;4061:18:1;;;4054:36;4107:18;;2321:38:0;3802:329:1;2321:38:0;8937:6:::1;8947:1;8937:11:::0;8934:95:::1;;8973:44;::::0;-1:-1:-1;;;8973:44:0;;9011:4:::1;8973:44;::::0;::::1;1550:74:1::0;-1:-1:-1;;;;;8973:29:0;::::1;::::0;::::1;::::0;1523:18:1;;8973:44:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8964:53;;8934:95;9046:48;::::0;-1:-1:-1;;;9046:48:0;;9075:10:::1;9046:48;::::0;::::1;7971:74:1::0;8061:18;;;8054:34;;;-1:-1:-1;;;;;9046:28:0;::::1;::::0;::::1;::::0;7944:18:1;;9046:48:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;5643:156::-:0;5723:4;5747:44;5761:10;5773:9;5784:6;5747:13;:44::i;9877:179::-;2433:4;2468:5;-1:-1:-1;;;;;2468:5:0;2337:10;2457:16;2321:38;;;;-1:-1:-1;;;2321:38:0;;4004:2:1;2321:38:0;;;3986:21:1;4043:1;4023:18;;;4016:29;-1:-1:-1;;;4061:18:1;;;4054:36;4107:18;;2321:38:0;3802:329:1;2321:38:0;9973:11:::1;:22:::0;;-1:-1:-1;;;;9973:22:0::1;-1:-1:-1::0;;;9973:22:0;::::1;;;;::::0;;10036:12;3510::::1;3443:2;3510;:12;:::i;:::-;3496:26;::::0;:11:::1;:26;:::i;:::-;10022;;;;:::i;:::-;10006:13;:42:::0;-1:-1:-1;;9877:179:0:o;697:192::-;783:7;819:12;811:6;;;;803:29;;;;-1:-1:-1;;;803:29:0;;;;;;;;:::i;:::-;-1:-1:-1;843:9:0;855:5;859:1;855;:5;:::i;:::-;843:17;697:192;-1:-1:-1;;;;;697:192:0:o;6444:821::-;6556:6;;6536:4;;6556:6;;6553:63;;;6572:41;6587:6;6595:9;6606:6;6572:14;:41::i;:::-;6565:48;;;;6553:63;-1:-1:-1;;;;;6633:27:0;;;;;;:19;:27;;;;;;;;6632:28;:63;;;;-1:-1:-1;;;;;;6665:30:0;;;;;;:19;:30;;;;;;;;6664:31;6632:63;:84;;;;;6712:4;-1:-1:-1;;;;;6699:17:0;:9;-1:-1:-1;;;;;6699:17:0;;;6632:84;6628:203;;;6776:15;;-1:-1:-1;;;;;6742:20:0;;;;;;:9;:20;;;;;;:29;;6765:6;;6742:29;:::i;:::-;6741:50;;6733:86;;;;-1:-1:-1;;;6733:86:0;;8681:2:1;6733:86:0;;;8663:21:1;8720:2;8700:18;;;8693:30;8759:26;8739:18;;;8732:54;8803:18;;6733:86:0;8479:348:1;6733:86:0;6850:16;:14;:16::i;:::-;6847:35;;;6869:10;:8;:10::i;:::-;6914:53;;;;;;;;;;;-1:-1:-1;;;6914:53:0;;;;;;;;-1:-1:-1;;;;;6914:17:0;;-1:-1:-1;6914:17:0;;;:9;:17;;;;;;;;:53;;6936:6;;6914:21;:53::i;:::-;-1:-1:-1;;;;;6894:17:0;;;;;;:9;:17;;;;;;;;:73;;;;7006:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;7029:22:0;;;;;;:11;:22;;;;;;;;7006:45;7005:93;;7064:34;7072:6;7080;7088:9;7064:7;:34::i;:::-;7005:93;;;7055:6;7005:93;-1:-1:-1;;;;;7134:20:0;;;;;;:9;:20;;;;;;6980:118;;-1:-1:-1;7134:40:0;;6980:118;7134:24;:40::i;:::-;-1:-1:-1;;;;;7111:20:0;;;;;;;:9;:20;;;;;;;:63;;;;7192:43;;;;;;;;;;7220:14;1781:25:1;;1769:2;1754:18;;1635:177;7192:43:0;;;;;;;;-1:-1:-1;7253:4:0;;6444:821;-1:-1:-1;;;;6444:821:0:o;7277:330::-;7407:53;;;;;;;;;;;-1:-1:-1;;;7407:53:0;;;;;;;;-1:-1:-1;;;;;7407:17:0;;7370:4;7407:17;;;:9;:17;;;;;;;:53;;7429:6;;7407:21;:53::i;:::-;-1:-1:-1;;;;;7387:17:0;;;;;;;:9;:17;;;;;;:73;;;;7494:20;;;;;;;:32;;7519:6;7494:24;:32::i;:::-;-1:-1:-1;;;;;7471:20:0;;;;;;;:9;:20;;;;;;;:55;;;;7542:35;;;;;;;;;;7570:6;1781:25:1;;1769:2;1754:18;;1635:177;7542:35:0;;;;;;;;-1:-1:-1;7595:4:0;7277:330;;;;;:::o;8346:197::-;8395:4;8419:10;-1:-1:-1;;;;;8433:4:0;8419:18;;;;;:38;;-1:-1:-1;8451:6:0;;;;8450:7;8419:38;:62;;;;-1:-1:-1;8470:11:0;;-1:-1:-1;;;8470:11:0;;;;8419:62;:116;;;;-1:-1:-1;;8522:13:0;;8512:4;8494:24;;;;:9;:24;;;;;;:41;;;8346:197::o;9110:362::-;4260:6;:13;;-1:-1:-1;;4260:13:0;4269:4;4260:13;;;9185:16:::1;::::0;;9199:1:::1;9185:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9185:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9185:16:0::1;9161:40;;9230:4;9212;9217:1;9212:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;9212:23:0::1;;;-1:-1:-1::0;;;;;9212:23:0::1;;;::::0;::::1;9256:4;9246;9251:1;9246:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9246:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;9273:6:::1;::::0;9345:13:::1;::::0;9273:6;9408:15;9273:191:::1;::::0;-1:-1:-1;;;9273:191:0;;:6;;::::1;::::0;:57:::1;::::0;:191:::1;::::0;9345:13;9273:6:::1;::::0;9389:4;;9408:15;::::1;::::0;9438::::1;::::0;9273:191:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4278:6:0;:14;;-1:-1:-1;;4278:14:0;;;-1:-1:-1;;;9110:362:0:o;7615:723::-;7701:7;7724:11;;;:28;;-1:-1:-1;7739:8:0;;:13;7724:28;7721:72;;;-1:-1:-1;7775:6:0;7768:13;;7721:72;7826:18;;-1:-1:-1;;;;;7873:4:0;7860:17;;;;;;7857:154;;-1:-1:-1;7907:14:0;;7857:154;;;7952:4;-1:-1:-1;;;;;7942:14:0;:6;-1:-1:-1;;;;;7942:14:0;;7939:72;;-1:-1:-1;7986:13:0;;7939:72;8023:17;8043:62;8084:20;3938:3;;8084:20;:::i;:::-;8043:36;8068:10;8043:20;8054:8;;8043:6;:10;;:20;;;;:::i;:::-;:24;;:36::i;:::-;:40;;:62::i;:::-;8023:82;-1:-1:-1;8121:13:0;;8118:172;;8195:4;8177:24;;;;:9;:24;;;;;;:39;;8206:9;8177:28;:39::i;:::-;8168:4;8150:24;;;;:9;:24;;;;;;;:66;;;;8236:42;;-1:-1:-1;;;;;8236:42:0;;;;;;;8268:9;1781:25:1;;1769:2;1754:18;;1635:177;8236:42:0;;;;;;;;8118:172;8309:21;:6;8320:9;8309:10;:21::i;:::-;8302:28;7615:723;-1:-1:-1;;;;;;7615:723:0:o;368:181::-;426:7;;458:5;462:1;458;:5;:::i;:::-;446:17;;487:1;482;:6;;474:46;;;;-1:-1:-1;;;474:46:0;;10329:2:1;474:46:0;;;10311:21:1;10368:2;10348:18;;;10341:30;10407:29;10387:18;;;10380:57;10454:18;;474:46:0;10127:351:1;895:250:0;953:7;977:1;982;977:6;973:47;;-1:-1:-1;1007:1:0;1000:8;;973:47;1032:9;1044:5;1048:1;1044;:5;:::i;:::-;1032:17;-1:-1:-1;1077:1:0;1068:5;1072:1;1032:17;1068:5;:::i;:::-;:10;1060:56;;;;-1:-1:-1;;;1060:56:0;;10685:2:1;1060:56:0;;;10667:21:1;10724:2;10704:18;;;10697:30;10763:34;10743:18;;;10736:62;-1:-1:-1;;;10814:18:1;;;10807:31;10855:19;;1060:56:0;10483:397:1;1151:132:0;1209:7;1236:39;1240:1;1243;1236:39;;;;;;;;;;;;;;;;;:3;:39::i;555:136::-;613:7;640:43;644:1;647;640:43;;;;;;;;;;;;;;;;;:3;:43::i;1289:189::-;1375:7;1410:12;1403:5;1395:28;;;;-1:-1:-1;;;1395:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1434:9:0;1446:5;1450:1;1446;: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:180::-;626:6;679:2;667:9;658:7;654:23;650:32;647:52;;;695:1;692;685:12;647:52;-1:-1:-1;718:23:1;;567:180;-1:-1:-1;567:180:1:o;752:196::-;820:20;;-1:-1:-1;;;;;869:54:1;;859:65;;849:93;;938:1;935;928:12;849:93;752:196;;;:::o;953:254::-;1021:6;1029;1082:2;1070:9;1061:7;1057:23;1053:32;1050:52;;;1098:1;1095;1088:12;1050:52;1121:29;1140:9;1121:29;:::i;:::-;1111:39;1197:2;1182:18;;;;1169:32;;-1:-1:-1;;;953:254:1:o;1817:328::-;1894:6;1902;1910;1963:2;1951:9;1942:7;1938:23;1934:32;1931:52;;;1979:1;1976;1969:12;1931:52;2002:29;2021:9;2002:29;:::i;:::-;1992:39;;2050:38;2084:2;2073:9;2069:18;2050:38;:::i;:::-;2040:48;;2135:2;2124:9;2120:18;2107:32;2097:42;;1817:328;;;;;:::o;2150:186::-;2209:6;2262:2;2250:9;2241:7;2237:23;2233:32;2230:52;;;2278:1;2275;2268:12;2230:52;2301:29;2320:9;2301:29;:::i;2530:316::-;2607:6;2615;2623;2676:2;2664:9;2655:7;2651:23;2647:32;2644:52;;;2692:1;2689;2682:12;2644:52;-1:-1:-1;;2715:23:1;;;2785:2;2770:18;;2757:32;;-1:-1:-1;2836:2:1;2821:18;;;2808:32;;2530:316;-1:-1:-1;2530:316:1:o;2851:260::-;2919:6;2927;2980:2;2968:9;2959:7;2955:23;2951:32;2948:52;;;2996:1;2993;2986:12;2948:52;3019:29;3038:9;3019:29;:::i;:::-;3009:39;;3067:38;3101:2;3090:9;3086:18;3067:38;:::i;:::-;3057:48;;2851:260;;;;;:::o;3116:118::-;3202:5;3195:13;3188:21;3181:5;3178:32;3168:60;;3224:1;3221;3214:12;3168:60;3116:118;:::o;3239:309::-;3304:6;3312;3365:2;3353:9;3344:7;3340:23;3336:32;3333:52;;;3381:1;3378;3371:12;3333:52;3420:9;3407:23;3439:28;3461:5;3439:28;:::i;4495:127::-;4556:10;4551:3;4547:20;4544:1;4537:31;4587:4;4584:1;4577:15;4611:4;4608:1;4601:15;4627:422;4716:1;4759:5;4716:1;4773:270;4794:7;4784:8;4781:21;4773:270;;;4853:4;4849:1;4845:6;4841:17;4835:4;4832:27;4829:53;;;4862:18;;:::i;:::-;4912:7;4902:8;4898:22;4895:55;;;4932:16;;;;4895:55;5011:22;;;;4971:15;;;;4773:270;;;4777:3;4627:422;;;;;:::o;5054:806::-;5103:5;5133:8;5123:80;;-1:-1:-1;5174:1:1;5188:5;;5123:80;5222:4;5212:76;;-1:-1:-1;5259:1:1;5273:5;;5212:76;5304:4;5322:1;5317:59;;;;5390:1;5385:130;;;;5297:218;;5317:59;5347:1;5338:10;;5361:5;;;5385:130;5422:3;5412:8;5409:17;5406:43;;;5429:18;;:::i;:::-;-1:-1:-1;;5485:1:1;5471:16;;5500:5;;5297:218;;5599:2;5589:8;5586:16;5580:3;5574:4;5571:13;5567:36;5561:2;5551:8;5548:16;5543:2;5537:4;5534:12;5530:35;5527:77;5524:159;;;-1:-1:-1;5636:19:1;;;5668:5;;5524:159;5715:34;5740:8;5734:4;5715:34;:::i;:::-;5785:6;5781:1;5777:6;5773:19;5764:7;5761:32;5758:58;;;5796:18;;:::i;:::-;5834:20;;5054:806;-1:-1:-1;;;5054:806:1:o;5865:140::-;5923:5;5952:47;5993:4;5983:8;5979:19;5973:4;5952:47;:::i;6010:168::-;6083:9;;;6114;;6131:15;;;6125:22;;6111:37;6101:71;;6152:18;;:::i;6183:217::-;6223:1;6249;6239:132;;6293:10;6288:3;6284:20;6281:1;6274:31;6328:4;6325:1;6318:15;6356:4;6353:1;6346:15;6239:132;-1:-1:-1;6385:9:1;;6183:217::o;6405:128::-;6472:9;;;6493:11;;;6490:37;;;6507:18;;:::i;7608:184::-;7678:6;7731:2;7719:9;7710:7;7706:23;7702:32;7699:52;;;7747:1;7744;7737:12;7699:52;-1:-1:-1;7770:16:1;;7608:184;-1:-1:-1;7608:184:1:o;8099:245::-;8166:6;8219:2;8207:9;8198:7;8194:23;8190:32;8187:52;;;8235:1;8232;8225:12;8187:52;8267:9;8261:16;8286:28;8308:5;8286:28;:::i;8349:125::-;8414:9;;;8435:10;;;8432:36;;;8448:18;;:::i;8964:127::-;9025:10;9020:3;9016:20;9013:1;9006:31;9056:4;9053:1;9046:15;9080:4;9077:1;9070:15;9096:1026;9358:4;9406:3;9395:9;9391:19;9437:6;9426:9;9419:25;9463:2;9501:6;9496:2;9485:9;9481:18;9474:34;9544:3;9539:2;9528:9;9524:18;9517:31;9568:6;9603;9597:13;9634:6;9626;9619:22;9672:3;9661:9;9657:19;9650:26;;9711:2;9703:6;9699:15;9685:29;;9732:1;9742:218;9756:6;9753:1;9750:13;9742:218;;;9821:13;;-1:-1:-1;;;;;9817:62:1;9805:75;;9935:15;;;;9900:12;;;;9778:1;9771:9;9742:218;;;-1:-1:-1;;;;;;;10016:55:1;;;;10011:2;9996:18;;9989:83;-1:-1:-1;;;10103:3:1;10088:19;10081:35;9977:3;9096:1026;-1:-1:-1;;;9096:1026:1:o

Swarm Source

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