ETH Price: $2,519.90 (+2.68%)

Token

Moon Bound ($MB)
 

Overview

Max Total Supply

10,000,000 $MB

Holders

46

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 12 Decimals)

Balance
269,948.711757860235 $MB

Value
$0.00
0x9b954886b1047041ed8f4b1a5bc3694fdec2949d
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:
ERC20MOONBOUND

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSED

/*

Twitter : https://twitter.com/moonbounderc
Telegram : https://t.me/MoonBoundCommunity

*/

pragma solidity 0.8.17;

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 ERC20MOONBOUND is ERC20, Auth {
    using SafeMath for uint256;

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

    string public constant name = "Moon Bound";
    string public constant symbol = "$MB";
    uint8 public constant decimals = 12;
    
    uint256 public constant totalSupply = 10 * 10**6 * 10**decimals;

    uint256 public _maxWalletToken = totalSupply / 100;

    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 = 0;


    IDEXRouter public router;
    address public immutable pair;

    bool public swapEnabled = true;
    uint256 swapThreshold = totalSupply / 100;
    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;

        isFeeExempt[msg.sender] = 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 {
        _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,
            address(this),
            block.timestamp
        );
    }

    function setMultipliers(uint256 _buy, uint256 _sell) external onlyOwner {
        sellMultiplier = _sell;
        buyMultiplier = _buy;
    }

    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"}],"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"},{"stateMutability":"payable","type":"receive"}]

60c0604052606462000014600c600a62000450565b62000023906298968062000468565b6200002f919062000482565b600155600a600681905560c860078190556008556000600955805460ff60a01b1916600160a01b1781556064906200006a90600c9062000450565b62000079906298968062000468565b62000085919062000482565b600b553480156200009557600080fd5b5060008054336001600160a01b031991821617909155600a8054737a250d5630b4cf539739df2c5dacb4c659f2488d921682179055604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000106573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200012c9190620004a5565b6001600160a01b03908116608052600a546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa1580156200017d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a39190620004a5565b6080516040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af1158015620001f5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021b9190620004a5565b6001600160a01b0390811660a052306000818152600360209081526040808320600a8054909616845282528083206000199055338352600482528083208054600160ff199182168117909255600590935281842080548416821790559383528220805482168417905561dead9091527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba80549091169091179055620002c390600c9062000450565b620002d2906298968062000468565b33600081815260026020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef62000315600c600a62000450565b62000324906298968062000468565b60405190815260200160405180910390a3620004d0565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003925781600019048211156200037657620003766200033b565b808516156200038457918102915b93841c939080029062000356565b509250929050565b600082620003ab575060016200044a565b81620003ba575060006200044a565b8160018114620003d35760028114620003de57620003fe565b60019150506200044a565b60ff841115620003f257620003f26200033b565b50506001821b6200044a565b5060208310610133831016604e8410600b841016171562000423575081810a6200044a565b6200042f838362000351565b80600019048211156200044657620004466200033b565b0290505b92915050565b60006200046160ff8416836200039a565b9392505050565b80820281158282048414176200044a576200044a6200033b565b600082620004a057634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620004b857600080fd5b81516001600160a01b03811681146200046157600080fd5b60805160a05161168662000512600039600081816104bf01528181610b1501528181610e0e01528181610fbb0152610fef01526000610ed801526116866000f3fe6080604052600436106101a05760003560e01c80636ddd1713116100ec57806395d89b411161008a578063c867d60b11610064578063c867d60b14610501578063dd62ed3e14610531578063df20fd4914610577578063f887ea401461059757600080fd5b806395d89b411461047e578063a8aa1b31146104ad578063a9059cbb146104e157600080fd5b8063715018a6116100c6578063715018a61461040157806377b54bad1461041657806378109e5414610436578063893d20e81461044c57600080fd5b80636ddd1713146103935780636f50f507146103b457806370a08231146103d457600080fd5b80631df4ccfc116101595780632f54bf6e116101335780632f54bf6e146102ed578063313ce5671461031c5780633f4218e014610343578063571ac8b01461037357600080fd5b80631df4ccfc146102a257806323b872dd146102b85780632b112e49146102d857600080fd5b806306fdde03146101ac57806309302dc6146101f8578063095ea7b31461021a578063180b0d7e1461024a57806318160ddd1461026d5780631da1db5e1461028257600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101e26040518060400160405280600a815260200169135bdbdb88109bdd5b9960b21b81525081565b6040516101ef9190611283565b60405180910390f35b34801561020457600080fd5b506102186102133660046112d1565b6105b7565b005b34801561022657600080fd5b5061023a610235366004611306565b610621565b60405190151581526020016101ef565b34801561025657600080fd5b5061025f606481565b6040519081526020016101ef565b34801561027957600080fd5b5061025f61068e565b34801561028e57600080fd5b5061021861029d3660046112d1565b6106aa565b3480156102ae57600080fd5b5061025f60065481565b3480156102c457600080fd5b5061023a6102d3366004611330565b610723565b3480156102e457600080fd5b5061025f6107e5565b3480156102f957600080fd5b5061023a61030836600461136c565b6000546001600160a01b0391821691161490565b34801561032857600080fd5b50610331600c81565b60405160ff90911681526020016101ef565b34801561034f57600080fd5b5061023a61035e36600461136c565b60046020526000908152604090205460ff1681565b34801561037f57600080fd5b5061023a61038e36600461136c565b61086b565b34801561039f57600080fd5b50600a5461023a90600160a01b900460ff1681565b3480156103c057600080fd5b506102186103cf366004611387565b610879565b3480156103e057600080fd5b5061025f6103ef36600461136c565b60026020526000908152604090205481565b34801561040d57600080fd5b506102186108ab565b34801561042257600080fd5b5061023a610431366004611306565b6108e7565b34801561044257600080fd5b5061025f60015481565b34801561045857600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101ef565b34801561048a57600080fd5b506101e2604051806040016040528060038152602001621226a160e91b81525081565b3480156104b957600080fd5b506104667f000000000000000000000000000000000000000000000000000000000000000081565b3480156104ed57600080fd5b5061023a6104fc366004611306565b6109f6565b34801561050d57600080fd5b5061023a61051c36600461136c565b60056020526000908152604090205460ff1681565b34801561053d57600080fd5b5061025f61054c3660046113a9565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561058357600080fd5b506102186105923660046113ed565b610a03565b3480156105a357600080fd5b50600a54610466906001600160a01b031681565b6000546001600160a01b031633146105ea5760405162461bcd60e51b81526004016105e19061140b565b60405180910390fd5b6103e8816105fa600c600a611525565b6106079062989680611534565b6106119190611534565b61061b919061154b565b60015550565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061067c9086815260200190565b60405180910390a35060015b92915050565b61069a600c600a611525565b6106a79062989680611534565b81565b6000546001600160a01b031633146106d45760405162461bcd60e51b81526004016105e19061140b565b47600060646106e38484611534565b6106ed919061154b565b604051909150339082156108fc029083906000818181858888f1935050505015801561071d573d6000803e3d6000fd5b50505050565b6001600160a01b0383166000908152600360209081526040808320338452909152812054600019146107d0576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526003825283812033825290915291909120546107ab918490610a70565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b6107db848484610aaa565b90505b9392505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc54909190610845600c600a611525565b6108529062989680611534565b61085c919061156d565b610866919061156d565b905090565b600061068882600019610621565b6000546001600160a01b031633146108a35760405162461bcd60e51b81526004016105e19061140b565b600855600755565b6000546001600160a01b031633146108d55760405162461bcd60e51b81526004016105e19061140b565b600080546001600160a01b0319169055565b600080546001600160a01b031633146109125760405162461bcd60e51b81526004016105e19061140b565b81600003610985576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa15801561095e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109829190611580565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af11580156109d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107de9190611599565b60006107de338484610aaa565b6000546001600160a01b03163314610a2d5760405162461bcd60e51b81526004016105e19061140b565b600a805460ff60a01b1916600160a01b841515021781558190610a5290600c90611525565b610a5f9062989680611534565b610a69919061154b565b600b555050565b60008184841115610a945760405162461bcd60e51b81526004016105e19190611283565b506000610aa1848661156d565b95945050505050565b600c5460009060ff1615610aca57610ac3848484610d1b565b90506107de565b6001600160a01b03841660009081526005602052604090205460ff16158015610b0c57506001600160a01b03831660009081526005602052604090205460ff16155b8015610b4a57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b15610bc4576001546001600160a01b038416600090815260026020526040902054610b769084906115b6565b1115610bc45760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d69742072656163686564000000000000000060448201526064016105e1565b610bcc610e01565b15610bd957610bd9610e74565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054610c2b918490610a70565b6001600160a01b038516600090815260026020908152604080832093909355600490529081205460ff1680610c7857506001600160a01b03841660009081526004602052604090205460ff165b610c8c57610c87858486610f93565b610c8e565b825b6001600160a01b038516600090815260026020526040902054909150610cb490826110f0565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d089085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600290915291822054610d6c918490610a70565b6001600160a01b038086166000908152600260205260408082209390935590851681522054610d9b90836110f0565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610def9086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801590610e3f5750600c5460ff16155b8015610e545750600a54600160a01b900460ff165b8015610866575050600b5430600090815260026020526040902054101590565b600c805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610eb657610eb66115c9565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610f0a57610f0a6115c9565b6001600160a01b039283166020918202929092010152600a54600b5460405163791ac94760e01b8152919092169163791ac94791610f5491906000908690309042906004016115df565b600060405180830381600087803b158015610f6e57600080fd5b505af1158015610f82573d6000803e3d6000fd5b5050600c805460ff19169055505050565b6000821580610fa25750600654155b15610fae5750816107de565b6009546001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000811690841603610fed575060085461102b565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03160361102b57506007545b600061106061103b606480611534565b61105a846110546006548a61114f90919063ffffffff16565b9061114f565b906111d1565b905080156110dc573060009081526002602052604090205461108290826110f0565b30600081815260026020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110d39085815260200190565b60405180910390a35b6110e68582611213565b9695505050505050565b6000806110fd83856115b6565b9050838110156107de5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105e1565b60008260000361116157506000610688565b600061116d8385611534565b90508261117a858361154b565b146107de5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105e1565b60006107de83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611255565b60006107de83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a70565b600081836112765760405162461bcd60e51b81526004016105e19190611283565b506000610aa1848661154b565b600060208083528351808285015260005b818110156112b057858101830151858201604001528201611294565b506000604082860101526040601f19601f8301168501019250505092915050565b6000602082840312156112e357600080fd5b5035919050565b80356001600160a01b038116811461130157600080fd5b919050565b6000806040838503121561131957600080fd5b611322836112ea565b946020939093013593505050565b60008060006060848603121561134557600080fd5b61134e846112ea565b925061135c602085016112ea565b9150604084013590509250925092565b60006020828403121561137e57600080fd5b6107de826112ea565b6000806040838503121561139a57600080fd5b50508035926020909101359150565b600080604083850312156113bc57600080fd5b6113c5836112ea565b91506113d3602084016112ea565b90509250929050565b80151581146113ea57600080fd5b50565b6000806040838503121561140057600080fd5b8235611322816113dc565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561147c5781600019048211156114625761146261142b565b8085161561146f57918102915b93841c9390800290611446565b509250929050565b60008261149357506001610688565b816114a057506000610688565b81600181146114b657600281146114c0576114dc565b6001915050610688565b60ff8411156114d1576114d161142b565b50506001821b610688565b5060208310610133831016604e8410600b84101617156114ff575081810a610688565b6115098383611441565b806000190482111561151d5761151d61142b565b029392505050565b60006107de60ff841683611484565b80820281158282048414176106885761068861142b565b60008261156857634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106885761068861142b565b60006020828403121561159257600080fd5b5051919050565b6000602082840312156115ab57600080fd5b81516107de816113dc565b808201808211156106885761068861142b565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561162f5784516001600160a01b03168352938301939183019160010161160a565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220716a5c70a401cb897aa5c059db44535e1fd6ef182a96d6850b4d25e643a29f3364736f6c63430008110033

Deployed Bytecode

0x6080604052600436106101a05760003560e01c80636ddd1713116100ec57806395d89b411161008a578063c867d60b11610064578063c867d60b14610501578063dd62ed3e14610531578063df20fd4914610577578063f887ea401461059757600080fd5b806395d89b411461047e578063a8aa1b31146104ad578063a9059cbb146104e157600080fd5b8063715018a6116100c6578063715018a61461040157806377b54bad1461041657806378109e5414610436578063893d20e81461044c57600080fd5b80636ddd1713146103935780636f50f507146103b457806370a08231146103d457600080fd5b80631df4ccfc116101595780632f54bf6e116101335780632f54bf6e146102ed578063313ce5671461031c5780633f4218e014610343578063571ac8b01461037357600080fd5b80631df4ccfc146102a257806323b872dd146102b85780632b112e49146102d857600080fd5b806306fdde03146101ac57806309302dc6146101f8578063095ea7b31461021a578063180b0d7e1461024a57806318160ddd1461026d5780631da1db5e1461028257600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101e26040518060400160405280600a815260200169135bdbdb88109bdd5b9960b21b81525081565b6040516101ef9190611283565b60405180910390f35b34801561020457600080fd5b506102186102133660046112d1565b6105b7565b005b34801561022657600080fd5b5061023a610235366004611306565b610621565b60405190151581526020016101ef565b34801561025657600080fd5b5061025f606481565b6040519081526020016101ef565b34801561027957600080fd5b5061025f61068e565b34801561028e57600080fd5b5061021861029d3660046112d1565b6106aa565b3480156102ae57600080fd5b5061025f60065481565b3480156102c457600080fd5b5061023a6102d3366004611330565b610723565b3480156102e457600080fd5b5061025f6107e5565b3480156102f957600080fd5b5061023a61030836600461136c565b6000546001600160a01b0391821691161490565b34801561032857600080fd5b50610331600c81565b60405160ff90911681526020016101ef565b34801561034f57600080fd5b5061023a61035e36600461136c565b60046020526000908152604090205460ff1681565b34801561037f57600080fd5b5061023a61038e36600461136c565b61086b565b34801561039f57600080fd5b50600a5461023a90600160a01b900460ff1681565b3480156103c057600080fd5b506102186103cf366004611387565b610879565b3480156103e057600080fd5b5061025f6103ef36600461136c565b60026020526000908152604090205481565b34801561040d57600080fd5b506102186108ab565b34801561042257600080fd5b5061023a610431366004611306565b6108e7565b34801561044257600080fd5b5061025f60015481565b34801561045857600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101ef565b34801561048a57600080fd5b506101e2604051806040016040528060038152602001621226a160e91b81525081565b3480156104b957600080fd5b506104667f0000000000000000000000000e7ff5880dfd747a0813d908772da9a441b4149081565b3480156104ed57600080fd5b5061023a6104fc366004611306565b6109f6565b34801561050d57600080fd5b5061023a61051c36600461136c565b60056020526000908152604090205460ff1681565b34801561053d57600080fd5b5061025f61054c3660046113a9565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561058357600080fd5b506102186105923660046113ed565b610a03565b3480156105a357600080fd5b50600a54610466906001600160a01b031681565b6000546001600160a01b031633146105ea5760405162461bcd60e51b81526004016105e19061140b565b60405180910390fd5b6103e8816105fa600c600a611525565b6106079062989680611534565b6106119190611534565b61061b919061154b565b60015550565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061067c9086815260200190565b60405180910390a35060015b92915050565b61069a600c600a611525565b6106a79062989680611534565b81565b6000546001600160a01b031633146106d45760405162461bcd60e51b81526004016105e19061140b565b47600060646106e38484611534565b6106ed919061154b565b604051909150339082156108fc029083906000818181858888f1935050505015801561071d573d6000803e3d6000fd5b50505050565b6001600160a01b0383166000908152600360209081526040808320338452909152812054600019146107d0576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526003825283812033825290915291909120546107ab918490610a70565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b6107db848484610aaa565b90505b9392505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc54909190610845600c600a611525565b6108529062989680611534565b61085c919061156d565b610866919061156d565b905090565b600061068882600019610621565b6000546001600160a01b031633146108a35760405162461bcd60e51b81526004016105e19061140b565b600855600755565b6000546001600160a01b031633146108d55760405162461bcd60e51b81526004016105e19061140b565b600080546001600160a01b0319169055565b600080546001600160a01b031633146109125760405162461bcd60e51b81526004016105e19061140b565b81600003610985576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa15801561095e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109829190611580565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af11580156109d2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107de9190611599565b60006107de338484610aaa565b6000546001600160a01b03163314610a2d5760405162461bcd60e51b81526004016105e19061140b565b600a805460ff60a01b1916600160a01b841515021781558190610a5290600c90611525565b610a5f9062989680611534565b610a69919061154b565b600b555050565b60008184841115610a945760405162461bcd60e51b81526004016105e19190611283565b506000610aa1848661156d565b95945050505050565b600c5460009060ff1615610aca57610ac3848484610d1b565b90506107de565b6001600160a01b03841660009081526005602052604090205460ff16158015610b0c57506001600160a01b03831660009081526005602052604090205460ff16155b8015610b4a57507f0000000000000000000000000e7ff5880dfd747a0813d908772da9a441b414906001600160a01b0316836001600160a01b031614155b15610bc4576001546001600160a01b038416600090815260026020526040902054610b769084906115b6565b1115610bc45760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d69742072656163686564000000000000000060448201526064016105e1565b610bcc610e01565b15610bd957610bd9610e74565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054610c2b918490610a70565b6001600160a01b038516600090815260026020908152604080832093909355600490529081205460ff1680610c7857506001600160a01b03841660009081526004602052604090205460ff165b610c8c57610c87858486610f93565b610c8e565b825b6001600160a01b038516600090815260026020526040902054909150610cb490826110f0565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d089085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600290915291822054610d6c918490610a70565b6001600160a01b038086166000908152600260205260408082209390935590851681522054610d9b90836110f0565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610def9086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f0000000000000000000000000e7ff5880dfd747a0813d908772da9a441b414901614801590610e3f5750600c5460ff16155b8015610e545750600a54600160a01b900460ff165b8015610866575050600b5430600090815260026020526040902054101590565b600c805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610eb657610eb66115c9565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610f0a57610f0a6115c9565b6001600160a01b039283166020918202929092010152600a54600b5460405163791ac94760e01b8152919092169163791ac94791610f5491906000908690309042906004016115df565b600060405180830381600087803b158015610f6e57600080fd5b505af1158015610f82573d6000803e3d6000fd5b5050600c805460ff19169055505050565b6000821580610fa25750600654155b15610fae5750816107de565b6009546001600160a01b037f0000000000000000000000000e7ff5880dfd747a0813d908772da9a441b41490811690841603610fed575060085461102b565b7f0000000000000000000000000e7ff5880dfd747a0813d908772da9a441b414906001600160a01b0316856001600160a01b03160361102b57506007545b600061106061103b606480611534565b61105a846110546006548a61114f90919063ffffffff16565b9061114f565b906111d1565b905080156110dc573060009081526002602052604090205461108290826110f0565b30600081815260026020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110d39085815260200190565b60405180910390a35b6110e68582611213565b9695505050505050565b6000806110fd83856115b6565b9050838110156107de5760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105e1565b60008260000361116157506000610688565b600061116d8385611534565b90508261117a858361154b565b146107de5760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105e1565b60006107de83836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611255565b60006107de83836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a70565b600081836112765760405162461bcd60e51b81526004016105e19190611283565b506000610aa1848661154b565b600060208083528351808285015260005b818110156112b057858101830151858201604001528201611294565b506000604082860101526040601f19601f8301168501019250505092915050565b6000602082840312156112e357600080fd5b5035919050565b80356001600160a01b038116811461130157600080fd5b919050565b6000806040838503121561131957600080fd5b611322836112ea565b946020939093013593505050565b60008060006060848603121561134557600080fd5b61134e846112ea565b925061135c602085016112ea565b9150604084013590509250925092565b60006020828403121561137e57600080fd5b6107de826112ea565b6000806040838503121561139a57600080fd5b50508035926020909101359150565b600080604083850312156113bc57600080fd5b6113c5836112ea565b91506113d3602084016112ea565b90509250929050565b80151581146113ea57600080fd5b50565b6000806040838503121561140057600080fd5b8235611322816113dc565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561147c5781600019048211156114625761146261142b565b8085161561146f57918102915b93841c9390800290611446565b509250929050565b60008261149357506001610688565b816114a057506000610688565b81600181146114b657600281146114c0576114dc565b6001915050610688565b60ff8411156114d1576114d161142b565b50506001821b610688565b5060208310610133831016604e8410600b84101617156114ff575081810a610688565b6115098383611441565b806000190482111561151d5761151d61142b565b029392505050565b60006107de60ff841683611484565b80820281158282048414176106885761068861142b565b60008261156857634e487b7160e01b600052601260045260246000fd5b500490565b818103818111156106885761068861142b565b60006020828403121561159257600080fd5b5051919050565b6000602082840312156115ab57600080fd5b81516107de816113dc565b808201808211156106885761068861142b565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561162f5784516001600160a01b03168352938301939183019160010161160a565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220716a5c70a401cb897aa5c059db44535e1fd6ef182a96d6850b4d25e643a29f3364736f6c63430008110033

Deployed Bytecode Sourcemap

2885:6665:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3143:42;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3143:42:0;;;;;;;;;;;;:::i;:::-;;;;;;;;5853:174;;;;;;;;;;-1:-1:-1;5853:174:0;;;;;:::i;:::-;;:::i;:::-;;4957:216;;;;;;;;;;-1:-1:-1;4957:216:0;;;;;:::i;:::-;;:::i;:::-;;;1354:14:1;;1347:22;1329:41;;1317:2;1302:18;4957:216:0;1189:187:1;3684:44:0;;;;;;;;;;;;3725:3;3684:44;;;;;1527:25:1;;;1515:2;1500:18;3684:44:0;1381:177:1;3284:63:0;;;;;;;;;;;;;:::i;8144:259::-;;;;;;;;;;-1:-1:-1;8144:259:0;;;;;:::i;:::-;;:::i;3649:28::-;;;;;;;;;;;;;;;;5475:370;;;;;;;;;;-1:-1:-1;5475:370:0;;;;;:::i;:::-;;:::i;9410:137::-;;;;;;;;;;;;;:::i;2205:103::-;;;;;;;;;;-1:-1:-1;2205:103:0;;;;;:::i;:::-;2260:4;2295:5;-1:-1:-1;;;;;2284:16:0;;;2295:5;;2284:16;;2205:103;3236:35;;;;;;;;;;;;3269:2;3236:35;;;;;2259:4:1;2247:17;;;2229:36;;2217:2;2202:18;3236:35:0;2087:184:1;3537:44:0;;;;;;;;;;-1:-1:-1;3537:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5181:122;;;;;;;;;;-1:-1:-1;5181:122:0;;;;;:::i;:::-;;:::i;3920:30::-;;;;;;;;;;-1:-1:-1;3920:30:0;;;;-1:-1:-1;;;3920:30:0;;;;;;9071:144;;;;;;;;;;-1:-1:-1;9071:144:0;;;;;:::i;:::-;;:::i;3415:45::-;;;;;;;;;;-1:-1:-1;3415:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;2316:85;;;;;;;;;;;;;:::i;8411:284::-;;;;;;;;;;-1:-1:-1;8411:284:0;;;;;:::i;:::-;;:::i;3356:50::-;;;;;;;;;;;;;;;;4732:78;;;;;;;;;;-1:-1:-1;4784:7:0;4802:5;-1:-1:-1;;;;;4802:5:0;4732:78;;;-1:-1:-1;;;;;2693:32:1;;;2675:51;;2663:2;2648:18;4732:78:0;2529:203:1;3192:37:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3192:37:0;;;;;3882:29;;;;;;;;;;;;;;;5311:156;;;;;;;;;;-1:-1:-1;5311:156:0;;;;;:::i;:::-;;:::i;3588:52::-;;;;;;;;;;-1:-1:-1;3588:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4816:133;;;;;;;;;;-1:-1:-1;4816:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;4918:19:0;;;4900:7;4918:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;4816:133;9223:179;;;;;;;;;;-1:-1:-1;9223:179:0;;;;;:::i;:::-;;:::i;3851:24::-;;;;;;;;;;-1:-1:-1;3851:24:0;;;;-1:-1:-1;;;;;3851:24:0;;;5853:174;2260:4;2295:5;-1:-1:-1;;;;;2295:5:0;2164:10;2284:16;2148:38;;;;-1:-1:-1;;;2148:38:0;;;;;;;:::i;:::-;;;;;;;;;6015:4:::1;5987:23:::0;3335:12:::1;3269:2;3335;:12;:::i;:::-;3322:25;::::0;:10:::1;:25;:::i;:::-;5973:37;;;;:::i;:::-;5972:47;;;;:::i;:::-;5954:15;:65:::0;-1:-1:-1;5853:174:0:o;4957:216::-;5061:10;5032:4;5049:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;5049:32:0;;;;;;;;;;:41;;;5106:37;5032:4;;5049:32;;5106:37;;;;5084:6;1527:25:1;;1515:2;1500:18;;1381:177;5106:37:0;;;;;;;;-1:-1:-1;5161:4:0;4957:216;;;;;:::o;3284:63::-;3335:12;3269:2;3335;:12;:::i;:::-;3322:25;;:10;:25;:::i;:::-;3284:63;:::o;8144:259::-;2260:4;2295:5;-1:-1:-1;;;;;2295:5:0;2164:10;2284:16;2148:38;;;;-1:-1:-1;;;2148:38:0;;;;;;;:::i;:::-;8247:21:::1;8227:17;8338:3;8305:28;8317:16:::0;8247:21;8305:28:::1;:::i;:::-;8303:38;;;;:::i;:::-;8352:43;::::0;8279:62;;-1:-1:-1;8360:10:0::1;::::0;8352:43;::::1;;;::::0;8279:62;;8352:43:::1;::::0;;;8279:62;8360:10;8352:43;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;8216:187;;8144:259:::0;:::o;5475:370::-;-1:-1:-1;;;;;5595:19:0;;5575:4;5595:19;;;:11;:19;;;;;;;;5615:10;5595:31;;;;;;;;-1:-1:-1;;5595:52:0;5592:186;;5697:69;;;;;;;;;;;-1:-1:-1;;;5697:69:0;;;;;;;;-1:-1:-1;;;;;5697:19:0;;-1:-1:-1;5697:19:0;;;:11;:19;;;;;5717:10;5697:31;;;;;;;;;;:69;;5733:6;;5697:35;:69::i;:::-;-1:-1:-1;;;;;5663:19:0;;;;;;:11;:19;;;;;;;;5683:10;5663:31;;;;;;;:103;5592:186;5797:40;5811:6;5819:9;5830:6;5797:13;:40::i;:::-;5790:47;;5475:370;;;;;;:::o;9410:137::-;9523:9;:15;;;;3019:42;9463:7;9505:15;;;;;9463:7;;9523:15;3335:12;3269:2;3335;:12;:::i;:::-;3322:25;;:10;:25;:::i;:::-;9491:29;;;;:::i;:::-;:47;;;;:::i;:::-;9483:56;;9410:137;:::o;5181:122::-;5236:4;5260:35;5268:7;-1:-1:-1;;5260:7:0;:35::i;9071:144::-;2260:4;2295:5;-1:-1:-1;;;;;2295:5:0;2164:10;2284:16;2148:38;;;;-1:-1:-1;;;2148:38:0;;;;;;;:::i;:::-;9154:14:::1;:22:::0;9187:13:::1;:20:::0;9071:144::o;2316:85::-;2260:4;2295:5;-1:-1:-1;;;;;2295:5:0;2164:10;2284:16;2148:38;;;;-1:-1:-1;;;2148:38:0;;;;;;;:::i;:::-;2391:1:::1;2375:18:::0;;-1:-1:-1;;;;;;2375:18:0::1;::::0;;2316:85::o;8411:284::-;8502:12;2295:5;;-1:-1:-1;;;;;2295:5:0;2164:10;2284:16;2148:38;;;;-1:-1:-1;;;2148:38:0;;;;;;;:::i;:::-;8530:6:::1;8540:1;8530:11:::0;8527:95:::1;;8566:44;::::0;-1:-1:-1;;;8566:44:0;;8604:4:::1;8566:44;::::0;::::1;2675:51:1::0;-1:-1:-1;;;;;8566:29:0;::::1;::::0;::::1;::::0;2648:18:1;;8566:44:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8557:53;;8527:95;8639:48;::::0;-1:-1:-1;;;8639:48:0;;8668:10:::1;8639:48;::::0;::::1;6405:51:1::0;6472:18;;;6465:34;;;-1:-1:-1;;;;;8639:28:0;::::1;::::0;::::1;::::0;6378:18:1;;8639:48:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;5311:156::-:0;5391:4;5415:44;5429:10;5441:9;5452:6;5415:13;:44::i;9223:179::-;2260:4;2295:5;-1:-1:-1;;;;;2295:5:0;2164:10;2284:16;2148:38;;;;-1:-1:-1;;;2148:38:0;;;;;;;:::i;:::-;9319:11:::1;:22:::0;;-1:-1:-1;;;;9319:22:0::1;-1:-1:-1::0;;;9319:22:0;::::1;;;;::::0;;9382:12;;3335::::1;::::0;3269:2:::1;::::0;3335:12:::1;:::i;:::-;3322:25;::::0;:10:::1;:25;:::i;:::-;9368:26;;;;:::i;:::-;9352:13;:42:::0;-1:-1:-1;;9223:179:0:o;524:192::-;610:7;646:12;638:6;;;;630:29;;;;-1:-1:-1;;;630:29:0;;;;;;;;:::i;:::-;-1:-1:-1;670:9:0;682:5;686:1;682;:5;:::i;:::-;670:17;524:192;-1:-1:-1;;;;;524:192:0:o;6037:821::-;6149:6;;6129:4;;6149:6;;6146:63;;;6165:41;6180:6;6188:9;6199:6;6165:14;:41::i;:::-;6158:48;;;;6146:63;-1:-1:-1;;;;;6226:27:0;;;;;;:19;:27;;;;;;;;6225:28;:63;;;;-1:-1:-1;;;;;;6258:30:0;;;;;;:19;:30;;;;;;;;6257:31;6225:63;:84;;;;;6305:4;-1:-1:-1;;;;;6292:17:0;:9;-1:-1:-1;;;;;6292:17:0;;;6225:84;6221:203;;;6369:15;;-1:-1:-1;;;;;6335:20:0;;;;;;:9;:20;;;;;;:29;;6358:6;;6335:29;:::i;:::-;6334:50;;6326:86;;;;-1:-1:-1;;;6326:86:0;;7092:2:1;6326:86:0;;;7074:21:1;7131:2;7111:18;;;7104:30;7170:26;7150:18;;;7143:54;7214:18;;6326:86:0;6890:348:1;6326:86:0;6443:16;:14;:16::i;:::-;6440:35;;;6462:10;:8;:10::i;:::-;6507:53;;;;;;;;;;;-1:-1:-1;;;6507:53:0;;;;;;;;-1:-1:-1;;;;;6507:17:0;;-1:-1:-1;6507:17:0;;;:9;:17;;;;;;;;:53;;6529:6;;6507:21;:53::i;:::-;-1:-1:-1;;;;;6487:17:0;;;;;;:9;:17;;;;;;;;:73;;;;6599:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;6622:22:0;;;;;;:11;:22;;;;;;;;6599:45;6598:93;;6657:34;6665:6;6673;6681:9;6657:7;:34::i;:::-;6598:93;;;6648:6;6598:93;-1:-1:-1;;;;;6727:20:0;;;;;;:9;:20;;;;;;6573:118;;-1:-1:-1;6727:40:0;;6573:118;6727:24;:40::i;:::-;-1:-1:-1;;;;;6704:20:0;;;;;;;:9;:20;;;;;;;:63;;;;6785:43;;;;;;;;;;6813:14;1527:25:1;;1515:2;1500:18;;1381:177;6785:43:0;;;;;;;;-1:-1:-1;6846:4:0;;6037:821;-1:-1:-1;;;;6037:821:0:o;6870:330::-;7000:53;;;;;;;;;;;-1:-1:-1;;;7000:53:0;;;;;;;;-1:-1:-1;;;;;7000:17:0;;6963:4;7000:17;;;:9;:17;;;;;;;:53;;7022:6;;7000:21;:53::i;:::-;-1:-1:-1;;;;;6980:17:0;;;;;;;:9;:17;;;;;;:73;;;;7087:20;;;;;;;:32;;7112:6;7087:24;:32::i;:::-;-1:-1:-1;;;;;7064:20:0;;;;;;;:9;:20;;;;;;;:55;;;;7135:35;;;;;;;;;;7163:6;1527:25:1;;1515:2;1500:18;;1381:177;7135:35:0;;;;;;;;-1:-1:-1;7188:4:0;6870:330;;;;;:::o;7939:197::-;7988:4;8012:10;-1:-1:-1;;;;;8026:4:0;8012:18;;;;;:38;;-1:-1:-1;8044:6:0;;;;8043:7;8012:38;:62;;;;-1:-1:-1;8063:11:0;;-1:-1:-1;;;8063:11:0;;;;8012:62;:116;;;;-1:-1:-1;;8115:13:0;;8105:4;8087:24;;;;:9;:24;;;;;;:41;;;7939:197::o;8703:360::-;4045:6;:13;;-1:-1:-1;;4045:13:0;4054:4;4045:13;;;8778:16:::1;::::0;;8792:1:::1;8778:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8778:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8778:16:0::1;8754:40;;8823:4;8805;8810:1;8805:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;8805:23:0::1;;;-1:-1:-1::0;;;;;8805:23:0::1;;;::::0;::::1;8849:4;8839;8844:1;8839:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8839:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;8866:6:::1;::::0;8938:13:::1;::::0;8866:189:::1;::::0;-1:-1:-1;;;8866:189:0;;:6;;;::::1;::::0;:57:::1;::::0;:189:::1;::::0;8938:13;8866:6:::1;::::0;8982:4;;9009::::1;::::0;9029:15:::1;::::0;8866:189:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4063:6:0;:14;;-1:-1:-1;;4063:14:0;;;-1:-1:-1;;;8703:360:0:o;7208:723::-;7294:7;7317:11;;;:28;;-1:-1:-1;7332:8:0;;:13;7317:28;7314:72;;;-1:-1:-1;7368:6:0;7361:13;;7314:72;7419:18;;-1:-1:-1;;;;;7466:4:0;7453:17;;;;;;7450:154;;-1:-1:-1;7500:14:0;;7450:154;;;7545:4;-1:-1:-1;;;;;7535:14:0;:6;-1:-1:-1;;;;;7535:14:0;;7532:72;;-1:-1:-1;7579:13:0;;7532:72;7616:17;7636:62;7677:20;3725:3;;7677:20;:::i;:::-;7636:36;7661:10;7636:20;7647:8;;7636:6;:10;;:20;;;;:::i;:::-;:24;;:36::i;:::-;:40;;:62::i;:::-;7616:82;-1:-1:-1;7714:13:0;;7711:172;;7788:4;7770:24;;;;:9;:24;;;;;;:39;;7799:9;7770:28;:39::i;:::-;7761:4;7743:24;;;;:9;:24;;;;;;;:66;;;;7829:42;;-1:-1:-1;;;;;7829:42:0;;;;;;;7861:9;1527:25:1;;1515:2;1500:18;;1381:177;7829:42:0;;;;;;;;7711:172;7902:21;:6;7913:9;7902:10;:21::i;:::-;7895:28;7208:723;-1:-1:-1;;;;;;7208:723:0:o;195:181::-;253:7;;285:5;289:1;285;:5;:::i;:::-;273:17;;314:1;309;:6;;301:46;;;;-1:-1:-1;;;301:46:0;;8694:2:1;301:46:0;;;8676:21:1;8733:2;8713:18;;;8706:30;8772:29;8752:18;;;8745:57;8819:18;;301:46:0;8492:351:1;722:250:0;780:7;804:1;809;804:6;800:47;;-1:-1:-1;834:1:0;827:8;;800:47;859:9;871:5;875:1;871;:5;:::i;:::-;859:17;-1:-1:-1;904:1:0;895:5;899:1;859:17;895:5;:::i;:::-;:10;887:56;;;;-1:-1:-1;;;887:56:0;;9050:2:1;887:56:0;;;9032:21:1;9089:2;9069:18;;;9062:30;9128:34;9108:18;;;9101:62;-1:-1:-1;;;9179:18:1;;;9172:31;9220:19;;887:56:0;8848:397:1;978:132:0;1036:7;1063:39;1067:1;1070;1063:39;;;;;;;;;;;;;;;;;:3;:39::i;382:136::-;440:7;467:43;471:1;474;467:43;;;;;;;;;;;;;;;;;:3;:43::i;1116:189::-;1202:7;1237:12;1230:5;1222:28;;;;-1:-1:-1;;;1222:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1261:9:0;1273:5;1277:1;1273;: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:173::-;820:20;;-1:-1:-1;;;;;869:31:1;;859:42;;849:70;;915:1;912;905:12;849:70;752:173;;;:::o;930:254::-;998:6;1006;1059:2;1047:9;1038:7;1034:23;1030:32;1027:52;;;1075:1;1072;1065:12;1027:52;1098:29;1117:9;1098:29;:::i;:::-;1088:39;1174:2;1159:18;;;;1146:32;;-1:-1:-1;;;930:254:1:o;1563:328::-;1640:6;1648;1656;1709:2;1697:9;1688:7;1684:23;1680:32;1677:52;;;1725:1;1722;1715:12;1677:52;1748:29;1767:9;1748:29;:::i;:::-;1738:39;;1796:38;1830:2;1819:9;1815:18;1796:38;:::i;:::-;1786:48;;1881:2;1870:9;1866:18;1853:32;1843:42;;1563:328;;;;;:::o;1896:186::-;1955:6;2008:2;1996:9;1987:7;1983:23;1979:32;1976:52;;;2024:1;2021;2014:12;1976:52;2047:29;2066:9;2047:29;:::i;2276:248::-;2344:6;2352;2405:2;2393:9;2384:7;2380:23;2376:32;2373:52;;;2421:1;2418;2411:12;2373:52;-1:-1:-1;;2444:23:1;;;2514:2;2499:18;;;2486:32;;-1:-1:-1;2276:248:1:o;2737:260::-;2805:6;2813;2866:2;2854:9;2845:7;2841:23;2837:32;2834:52;;;2882:1;2879;2872:12;2834:52;2905:29;2924:9;2905:29;:::i;:::-;2895:39;;2953:38;2987:2;2976:9;2972:18;2953:38;:::i;:::-;2943:48;;2737:260;;;;;:::o;3002:118::-;3088:5;3081:13;3074:21;3067:5;3064:32;3054:60;;3110:1;3107;3100:12;3054:60;3002:118;:::o;3125:309::-;3190:6;3198;3251:2;3239:9;3230:7;3226:23;3222:32;3219:52;;;3267:1;3264;3257:12;3219:52;3306:9;3293:23;3325:28;3347:5;3325:28;:::i;3665:329::-;3867:2;3849:21;;;3906:1;3886:18;;;3879:29;-1:-1:-1;;;3939:2:1;3924:18;;3917:36;3985:2;3970:18;;3665:329::o;3999:127::-;4060:10;4055:3;4051:20;4048:1;4041:31;4091:4;4088:1;4081:15;4115:4;4112:1;4105:15;4131:422;4220:1;4263:5;4220:1;4277:270;4298:7;4288:8;4285:21;4277:270;;;4357:4;4353:1;4349:6;4345:17;4339:4;4336:27;4333:53;;;4366:18;;:::i;:::-;4416:7;4406:8;4402:22;4399:55;;;4436:16;;;;4399:55;4515:22;;;;4475:15;;;;4277:270;;;4281:3;4131:422;;;;;:::o;4558:806::-;4607:5;4637:8;4627:80;;-1:-1:-1;4678:1:1;4692:5;;4627:80;4726:4;4716:76;;-1:-1:-1;4763:1:1;4777:5;;4716:76;4808:4;4826:1;4821:59;;;;4894:1;4889:130;;;;4801:218;;4821:59;4851:1;4842:10;;4865:5;;;4889:130;4926:3;4916:8;4913:17;4910:43;;;4933:18;;:::i;:::-;-1:-1:-1;;4989:1:1;4975:16;;5004:5;;4801:218;;5103:2;5093:8;5090:16;5084:3;5078:4;5075:13;5071:36;5065:2;5055:8;5052:16;5047:2;5041:4;5038:12;5034:35;5031:77;5028:159;;;-1:-1:-1;5140:19:1;;;5172:5;;5028:159;5219:34;5244:8;5238:4;5219:34;:::i;:::-;5289:6;5285:1;5281:6;5277:19;5268:7;5265:32;5262:58;;;5300:18;;:::i;:::-;5338:20;;4558:806;-1:-1:-1;;;4558:806:1:o;5369:140::-;5427:5;5456:47;5497:4;5487:8;5483:19;5477:4;5456:47;:::i;5514:168::-;5587:9;;;5618;;5635:15;;;5629:22;;5615:37;5605:71;;5656:18;;:::i;5687:217::-;5727:1;5753;5743:132;;5797:10;5792:3;5788:20;5785:1;5778:31;5832:4;5829:1;5822:15;5860:4;5857:1;5850:15;5743:132;-1:-1:-1;5889:9:1;;5687:217::o;5909:128::-;5976:9;;;5997:11;;;5994:37;;;6011:18;;:::i;6042:184::-;6112:6;6165:2;6153:9;6144:7;6140:23;6136:32;6133:52;;;6181:1;6178;6171:12;6133:52;-1:-1:-1;6204:16:1;;6042:184;-1:-1:-1;6042:184:1:o;6510:245::-;6577:6;6630:2;6618:9;6609:7;6605:23;6601:32;6598:52;;;6646:1;6643;6636:12;6598:52;6678:9;6672:16;6697:28;6719:5;6697:28;:::i;6760:125::-;6825:9;;;6846:10;;;6843:36;;;6859:18;;:::i;7375:127::-;7436:10;7431:3;7427:20;7424:1;7417:31;7467:4;7464:1;7457:15;7491:4;7488:1;7481:15;7507:980;7769:4;7817:3;7806:9;7802:19;7848:6;7837:9;7830:25;7874:2;7912:6;7907:2;7896:9;7892:18;7885:34;7955:3;7950:2;7939:9;7935:18;7928:31;7979:6;8014;8008:13;8045:6;8037;8030:22;8083:3;8072:9;8068:19;8061:26;;8122:2;8114:6;8110:15;8096:29;;8143:1;8153:195;8167:6;8164:1;8161:13;8153:195;;;8232:13;;-1:-1:-1;;;;;8228:39:1;8216:52;;8323:15;;;;8288:12;;;;8264:1;8182:9;8153:195;;;-1:-1:-1;;;;;;;8404:32:1;;;;8399:2;8384:18;;8377:60;-1:-1:-1;;;8468:3:1;8453:19;8446:35;8365:3;7507:980;-1:-1:-1;;;7507:980:1:o

Swarm Source

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