ETH Price: $2,627.82 (-5.37%)

Token

Mongoose ($MONGS)
 

Overview

Max Total Supply

1,000,000,000 $MONGS

Holders

43

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
19,993,691.141585160419921875 $MONGS

Value
$0.00
0xc781d9e3b724cadc1d6ecab3a1b7bda70933992e
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:
MONGOOSETOKEN

Compiler Version
v0.8.12+commit.f00d7308

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSED

/*

Twitter : https://twitter.com/mongooseerc
Telegram : https://t.me/MongooseErc20

*/

pragma solidity 0.8.12;

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

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

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

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

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

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

abstract contract Auth {
    address internal owner;

    constructor(address _owner) {
        owner = _owner;
    }

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

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

    function renounceOwnership() 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 MONGOOSETOKEN is ERC20, Auth {
    using SafeMath for uint256;

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

    string public constant name = "Mongoose";
    string public constant symbol = "$MONGS";
    uint8 public constant decimals = 18;
    
    uint256 public constant totalSupply = 10**9 * 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 = 200;


    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"}]

60c06040526064620000146012600a62000454565b6200002490633b9aca006200046c565b6200003091906200048e565b600155600a600681905560c860078190556008819055600955805460ff60a01b1916600160a01b1781556064906200006b9060129062000454565b6200007b90633b9aca006200046c565b6200008791906200048e565b600b553480156200009757600080fd5b5060008054336001600160a01b031991821617909155600a8054737a250d5630b4cf539739df2c5dacb4c659f2488d921682179055604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200012e9190620004b1565b6001600160a01b03908116608052600a546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa1580156200017f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a59190620004b1565b6080516040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af1158015620001f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021d9190620004b1565b6001600160a01b0390811660a052306000818152600360209081526040808320600a8054909616845282528083206000199055338352600482528083208054600160ff199182168117909255600590935281842080548416821790559383528220805482168417905561dead9091527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba80549091169091179055620002c59060129062000454565b620002d590633b9aca006200046c565b33600081815260026020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003186012600a62000454565b6200032890633b9aca006200046c565b60405190815260200160405180910390a3620004dc565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003965781600019048211156200037a576200037a6200033f565b808516156200038857918102915b93841c93908002906200035a565b509250929050565b600082620003af575060016200044e565b81620003be575060006200044e565b8160018114620003d75760028114620003e25762000402565b60019150506200044e565b60ff841115620003f657620003f66200033f565b50506001821b6200044e565b5060208310610133831016604e8410600b841016171562000427575081810a6200044e565b62000433838362000355565b80600019048211156200044a576200044a6200033f565b0290505b92915050565b60006200046560ff8416836200039e565b9392505050565b60008160001904831182151516156200048957620004896200033f565b500290565b600082620004ac57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620004c457600080fd5b81516001600160a01b03811681146200046557600080fd5b60805160a0516116a96200051e600039600081816104c001528181610b1701528181610e1001528181610fb90152610ffc01526000610eda01526116a96000f3fe6080604052600436106101a05760003560e01c80636ddd1713116100ec57806395d89b411161008a578063c867d60b11610064578063c867d60b14610502578063dd62ed3e14610532578063df20fd4914610578578063f887ea401461059857600080fd5b806395d89b411461047c578063a8aa1b31146104ae578063a9059cbb146104e257600080fd5b8063715018a6116100c6578063715018a6146103ff57806377b54bad1461041457806378109e5414610434578063893d20e81461044a57600080fd5b80636ddd1713146103915780636f50f507146103b257806370a08231146103d257600080fd5b80631df4ccfc116101595780632f54bf6e116101335780632f54bf6e146102eb578063313ce5671461031a5780633f4218e014610341578063571ac8b01461037157600080fd5b80631df4ccfc146102a057806323b872dd146102b65780632b112e49146102d657600080fd5b806306fdde03146101ac57806309302dc6146101f6578063095ea7b314610218578063180b0d7e1461024857806318160ddd1461026b5780631da1db5e1461028057600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101e0604051806040016040528060088152602001674d6f6e676f6f736560c01b81525081565b6040516101ed919061128e565b60405180910390f35b34801561020257600080fd5b506102166102113660046112e3565b6105b8565b005b34801561022457600080fd5b50610238610233366004611318565b610623565b60405190151581526020016101ed565b34801561025457600080fd5b5061025d606481565b6040519081526020016101ed565b34801561027757600080fd5b5061025d610690565b34801561028c57600080fd5b5061021661029b3660046112e3565b6106ad565b3480156102ac57600080fd5b5061025d60065481565b3480156102c257600080fd5b506102386102d1366004611342565b610726565b3480156102e257600080fd5b5061025d6107e8565b3480156102f757600080fd5b5061023861030636600461137e565b6000546001600160a01b0391821691161490565b34801561032657600080fd5b5061032f601281565b60405160ff90911681526020016101ed565b34801561034d57600080fd5b5061023861035c36600461137e565b60046020526000908152604090205460ff1681565b34801561037d57600080fd5b5061023861038c36600461137e565b61086f565b34801561039d57600080fd5b50600a5461023890600160a01b900460ff1681565b3480156103be57600080fd5b506102166103cd366004611399565b61087d565b3480156103de57600080fd5b5061025d6103ed36600461137e565b60026020526000908152604090205481565b34801561040b57600080fd5b506102166108af565b34801561042057600080fd5b5061023861042f366004611318565b6108eb565b34801561044057600080fd5b5061025d60015481565b34801561045657600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101ed565b34801561048857600080fd5b506101e060405180604001604052806006815260200165244d4f4e475360d01b81525081565b3480156104ba57600080fd5b506104647f000000000000000000000000000000000000000000000000000000000000000081565b3480156104ee57600080fd5b506102386104fd366004611318565b6109f7565b34801561050e57600080fd5b5061023861051d36600461137e565b60056020526000908152604090205460ff1681565b34801561053e57600080fd5b5061025d61054d3660046113bb565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561058457600080fd5b506102166105933660046113ff565b610a04565b3480156105a457600080fd5b50600a54610464906001600160a01b031681565b6000546001600160a01b031633146105eb5760405162461bcd60e51b81526004016105e29061141d565b60405180910390fd5b6103e8816105fb6012600a611537565b61060990633b9aca00611546565b6106139190611546565b61061d9190611565565b60015550565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061067e9086815260200190565b60405180910390a35060015b92915050565b61069c6012600a611537565b6106aa90633b9aca00611546565b81565b6000546001600160a01b031633146106d75760405162461bcd60e51b81526004016105e29061141d565b47600060646106e68484611546565b6106f09190611565565b604051909150339082156108fc029083906000818181858888f19350505050158015610720573d6000803e3d6000fd5b50505050565b6001600160a01b0383166000908152600360209081526040808320338452909152812054600019146107d3576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526003825283812033825290915291909120546107ae918490610a72565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b6107de848484610aac565b90505b9392505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc549091906108486012600a611537565b61085690633b9aca00611546565b6108609190611587565b61086a9190611587565b905090565b600061068a82600019610623565b6000546001600160a01b031633146108a75760405162461bcd60e51b81526004016105e29061141d565b600855600755565b6000546001600160a01b031633146108d95760405162461bcd60e51b81526004016105e29061141d565b600080546001600160a01b0319169055565b600080546001600160a01b031633146109165760405162461bcd60e51b81526004016105e29061141d565b81610986576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa15801561095f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610983919061159e565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af11580156109d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e191906115b7565b60006107e1338484610aac565b6000546001600160a01b03163314610a2e5760405162461bcd60e51b81526004016105e29061141d565b600a805460ff60a01b1916600160a01b841515021781558190610a5390601290611537565b610a6190633b9aca00611546565b610a6b9190611565565b600b555050565b60008184841115610a965760405162461bcd60e51b81526004016105e2919061128e565b506000610aa38486611587565b95945050505050565b600c5460009060ff1615610acc57610ac5848484610d1d565b90506107e1565b6001600160a01b03841660009081526005602052604090205460ff16158015610b0e57506001600160a01b03831660009081526005602052604090205460ff16155b8015610b4c57507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b15610bc6576001546001600160a01b038416600090815260026020526040902054610b789084906115d4565b1115610bc65760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d69742072656163686564000000000000000060448201526064016105e2565b610bce610e03565b15610bdb57610bdb610e76565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054610c2d918490610a72565b6001600160a01b038516600090815260026020908152604080832093909355600490529081205460ff1680610c7a57506001600160a01b03841660009081526004602052604090205460ff165b610c8e57610c89858486610f95565b610c90565b825b6001600160a01b038516600090815260026020526040902054909150610cb690826110fe565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d0a9085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600290915291822054610d6e918490610a72565b6001600160a01b038086166000908152600260205260408082209390935590851681522054610d9d90836110fe565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610df19086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801590610e415750600c5460ff16155b8015610e565750600a54600160a01b900460ff165b801561086a575050600b5430600090815260026020526040902054101590565b600c805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610eb857610eb86115ec565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610f0c57610f0c6115ec565b6001600160a01b039283166020918202929092010152600a54600b5460405163791ac94760e01b8152919092169163791ac94791610f569190600090869030904290600401611602565b600060405180830381600087803b158015610f7057600080fd5b505af1158015610f84573d6000803e3d6000fd5b5050600c805460ff19169055505050565b6000821580610fa45750600654155b15610fb05750816107e1565b600060095490507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03161415610ffa5750600854611039565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b0316141561103957506007545b600061106e611049606480611546565b611068846110626006548a61115d90919063ffffffff16565b9061115d565b906111dc565b905080156110ea573060009081526002602052604090205461109090826110fe565b30600081815260026020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e19085815260200190565b60405180910390a35b6110f4858261121e565b9695505050505050565b60008061110b83856115d4565b9050838110156107e15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105e2565b60008261116c5750600061068a565b60006111788385611546565b9050826111858583611565565b146107e15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105e2565b60006107e183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611260565b60006107e183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a72565b600081836112815760405162461bcd60e51b81526004016105e2919061128e565b506000610aa38486611565565b600060208083528351808285015260005b818110156112bb5785810183015185820160400152820161129f565b818111156112cd576000604083870101525b50601f01601f1916929092016040019392505050565b6000602082840312156112f557600080fd5b5035919050565b80356001600160a01b038116811461131357600080fd5b919050565b6000806040838503121561132b57600080fd5b611334836112fc565b946020939093013593505050565b60008060006060848603121561135757600080fd5b611360846112fc565b925061136e602085016112fc565b9150604084013590509250925092565b60006020828403121561139057600080fd5b6107e1826112fc565b600080604083850312156113ac57600080fd5b50508035926020909101359150565b600080604083850312156113ce57600080fd5b6113d7836112fc565b91506113e5602084016112fc565b90509250929050565b80151581146113fc57600080fd5b50565b6000806040838503121561141257600080fd5b8235611334816113ee565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561148e5781600019048211156114745761147461143d565b8085161561148157918102915b93841c9390800290611458565b509250929050565b6000826114a55750600161068a565b816114b25750600061068a565b81600181146114c857600281146114d2576114ee565b600191505061068a565b60ff8411156114e3576114e361143d565b50506001821b61068a565b5060208310610133831016604e8410600b8410161715611511575081810a61068a565b61151b8383611453565b806000190482111561152f5761152f61143d565b029392505050565b60006107e160ff841683611496565b60008160001904831182151516156115605761156061143d565b500290565b60008261158257634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156115995761159961143d565b500390565b6000602082840312156115b057600080fd5b5051919050565b6000602082840312156115c957600080fd5b81516107e1816113ee565b600082198211156115e7576115e761143d565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116525784516001600160a01b03168352938301939183019160010161162d565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122077e7e7a851e3a34000a0cc7c675ad4ae3477ae4c186de92740d927780aeee9d164736f6c634300080c0033

Deployed Bytecode

0x6080604052600436106101a05760003560e01c80636ddd1713116100ec57806395d89b411161008a578063c867d60b11610064578063c867d60b14610502578063dd62ed3e14610532578063df20fd4914610578578063f887ea401461059857600080fd5b806395d89b411461047c578063a8aa1b31146104ae578063a9059cbb146104e257600080fd5b8063715018a6116100c6578063715018a6146103ff57806377b54bad1461041457806378109e5414610434578063893d20e81461044a57600080fd5b80636ddd1713146103915780636f50f507146103b257806370a08231146103d257600080fd5b80631df4ccfc116101595780632f54bf6e116101335780632f54bf6e146102eb578063313ce5671461031a5780633f4218e014610341578063571ac8b01461037157600080fd5b80631df4ccfc146102a057806323b872dd146102b65780632b112e49146102d657600080fd5b806306fdde03146101ac57806309302dc6146101f6578063095ea7b314610218578063180b0d7e1461024857806318160ddd1461026b5780631da1db5e1461028057600080fd5b366101a757005b600080fd5b3480156101b857600080fd5b506101e0604051806040016040528060088152602001674d6f6e676f6f736560c01b81525081565b6040516101ed919061128e565b60405180910390f35b34801561020257600080fd5b506102166102113660046112e3565b6105b8565b005b34801561022457600080fd5b50610238610233366004611318565b610623565b60405190151581526020016101ed565b34801561025457600080fd5b5061025d606481565b6040519081526020016101ed565b34801561027757600080fd5b5061025d610690565b34801561028c57600080fd5b5061021661029b3660046112e3565b6106ad565b3480156102ac57600080fd5b5061025d60065481565b3480156102c257600080fd5b506102386102d1366004611342565b610726565b3480156102e257600080fd5b5061025d6107e8565b3480156102f757600080fd5b5061023861030636600461137e565b6000546001600160a01b0391821691161490565b34801561032657600080fd5b5061032f601281565b60405160ff90911681526020016101ed565b34801561034d57600080fd5b5061023861035c36600461137e565b60046020526000908152604090205460ff1681565b34801561037d57600080fd5b5061023861038c36600461137e565b61086f565b34801561039d57600080fd5b50600a5461023890600160a01b900460ff1681565b3480156103be57600080fd5b506102166103cd366004611399565b61087d565b3480156103de57600080fd5b5061025d6103ed36600461137e565b60026020526000908152604090205481565b34801561040b57600080fd5b506102166108af565b34801561042057600080fd5b5061023861042f366004611318565b6108eb565b34801561044057600080fd5b5061025d60015481565b34801561045657600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101ed565b34801561048857600080fd5b506101e060405180604001604052806006815260200165244d4f4e475360d01b81525081565b3480156104ba57600080fd5b506104647f000000000000000000000000ab57517877ea40872fcd3befaf2c691cede4aa7081565b3480156104ee57600080fd5b506102386104fd366004611318565b6109f7565b34801561050e57600080fd5b5061023861051d36600461137e565b60056020526000908152604090205460ff1681565b34801561053e57600080fd5b5061025d61054d3660046113bb565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561058457600080fd5b506102166105933660046113ff565b610a04565b3480156105a457600080fd5b50600a54610464906001600160a01b031681565b6000546001600160a01b031633146105eb5760405162461bcd60e51b81526004016105e29061141d565b60405180910390fd5b6103e8816105fb6012600a611537565b61060990633b9aca00611546565b6106139190611546565b61061d9190611565565b60015550565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259061067e9086815260200190565b60405180910390a35060015b92915050565b61069c6012600a611537565b6106aa90633b9aca00611546565b81565b6000546001600160a01b031633146106d75760405162461bcd60e51b81526004016105e29061141d565b47600060646106e68484611546565b6106f09190611565565b604051909150339082156108fc029083906000818181858888f19350505050158015610720573d6000803e3d6000fd5b50505050565b6001600160a01b0383166000908152600360209081526040808320338452909152812054600019146107d3576040805180820182526016815275496e73756666696369656e7420416c6c6f77616e636560501b6020808301919091526001600160a01b03871660009081526003825283812033825290915291909120546107ae918490610a72565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b6107de848484610aac565b90505b9392505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc549091906108486012600a611537565b61085690633b9aca00611546565b6108609190611587565b61086a9190611587565b905090565b600061068a82600019610623565b6000546001600160a01b031633146108a75760405162461bcd60e51b81526004016105e29061141d565b600855600755565b6000546001600160a01b031633146108d95760405162461bcd60e51b81526004016105e29061141d565b600080546001600160a01b0319169055565b600080546001600160a01b031633146109165760405162461bcd60e51b81526004016105e29061141d565b81610986576040516370a0823160e01b81523060048201526001600160a01b038416906370a0823190602401602060405180830381865afa15801561095f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610983919061159e565b91505b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb906044016020604051808303816000875af11580156109d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107e191906115b7565b60006107e1338484610aac565b6000546001600160a01b03163314610a2e5760405162461bcd60e51b81526004016105e29061141d565b600a805460ff60a01b1916600160a01b841515021781558190610a5390601290611537565b610a6190633b9aca00611546565b610a6b9190611565565b600b555050565b60008184841115610a965760405162461bcd60e51b81526004016105e2919061128e565b506000610aa38486611587565b95945050505050565b600c5460009060ff1615610acc57610ac5848484610d1d565b90506107e1565b6001600160a01b03841660009081526005602052604090205460ff16158015610b0e57506001600160a01b03831660009081526005602052604090205460ff16155b8015610b4c57507f000000000000000000000000ab57517877ea40872fcd3befaf2c691cede4aa706001600160a01b0316836001600160a01b031614155b15610bc6576001546001600160a01b038416600090815260026020526040902054610b789084906115d4565b1115610bc65760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d69742072656163686564000000000000000060448201526064016105e2565b610bce610e03565b15610bdb57610bdb610e76565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054610c2d918490610a72565b6001600160a01b038516600090815260026020908152604080832093909355600490529081205460ff1680610c7a57506001600160a01b03841660009081526004602052604090205460ff165b610c8e57610c89858486610f95565b610c90565b825b6001600160a01b038516600090815260026020526040902054909150610cb690826110fe565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d0a9085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600290915291822054610d6e918490610a72565b6001600160a01b038086166000908152600260205260408082209390935590851681522054610d9d90836110fe565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610df19086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f000000000000000000000000ab57517877ea40872fcd3befaf2c691cede4aa701614801590610e415750600c5460ff16155b8015610e565750600a54600160a01b900460ff165b801561086a575050600b5430600090815260026020526040902054101590565b600c805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610eb857610eb86115ec565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610f0c57610f0c6115ec565b6001600160a01b039283166020918202929092010152600a54600b5460405163791ac94760e01b8152919092169163791ac94791610f569190600090869030904290600401611602565b600060405180830381600087803b158015610f7057600080fd5b505af1158015610f84573d6000803e3d6000fd5b5050600c805460ff19169055505050565b6000821580610fa45750600654155b15610fb05750816107e1565b600060095490507f000000000000000000000000ab57517877ea40872fcd3befaf2c691cede4aa706001600160a01b0316836001600160a01b03161415610ffa5750600854611039565b7f000000000000000000000000ab57517877ea40872fcd3befaf2c691cede4aa706001600160a01b0316856001600160a01b0316141561103957506007545b600061106e611049606480611546565b611068846110626006548a61115d90919063ffffffff16565b9061115d565b906111dc565b905080156110ea573060009081526002602052604090205461109090826110fe565b30600081815260026020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110e19085815260200190565b60405180910390a35b6110f4858261121e565b9695505050505050565b60008061110b83856115d4565b9050838110156107e15760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016105e2565b60008261116c5750600061068a565b60006111788385611546565b9050826111858583611565565b146107e15760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016105e2565b60006107e183836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611260565b60006107e183836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610a72565b600081836112815760405162461bcd60e51b81526004016105e2919061128e565b506000610aa38486611565565b600060208083528351808285015260005b818110156112bb5785810183015185820160400152820161129f565b818111156112cd576000604083870101525b50601f01601f1916929092016040019392505050565b6000602082840312156112f557600080fd5b5035919050565b80356001600160a01b038116811461131357600080fd5b919050565b6000806040838503121561132b57600080fd5b611334836112fc565b946020939093013593505050565b60008060006060848603121561135757600080fd5b611360846112fc565b925061136e602085016112fc565b9150604084013590509250925092565b60006020828403121561139057600080fd5b6107e1826112fc565b600080604083850312156113ac57600080fd5b50508035926020909101359150565b600080604083850312156113ce57600080fd5b6113d7836112fc565b91506113e5602084016112fc565b90509250929050565b80151581146113fc57600080fd5b50565b6000806040838503121561141257600080fd5b8235611334816113ee565b60208082526006908201526510a7aba722a960d11b604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561148e5781600019048211156114745761147461143d565b8085161561148157918102915b93841c9390800290611458565b509250929050565b6000826114a55750600161068a565b816114b25750600061068a565b81600181146114c857600281146114d2576114ee565b600191505061068a565b60ff8411156114e3576114e361143d565b50506001821b61068a565b5060208310610133831016604e8410600b8410161715611511575081810a61068a565b61151b8383611453565b806000190482111561152f5761152f61143d565b029392505050565b60006107e160ff841683611496565b60008160001904831182151516156115605761156061143d565b500290565b60008261158257634e487b7160e01b600052601260045260246000fd5b500490565b6000828210156115995761159961143d565b500390565b6000602082840312156115b057600080fd5b5051919050565b6000602082840312156115c957600080fd5b81516107e1816113ee565b600082198211156115e7576115e761143d565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156116525784516001600160a01b03168352938301939183019160010161162d565b50506001600160a01b0396909616606085015250505060800152939250505056fea264697066735822122077e7e7a851e3a34000a0cc7c675ad4ae3477ae4c186de92740d927780aeee9d164736f6c634300080c0033

Deployed Bytecode Sourcemap

2879:6662:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3136:40;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3136:40:0;;;;;;;;;;;;:::i;:::-;;;;;;;;5844:174;;;;;;;;;;-1:-1:-1;5844:174:0;;;;;:::i;:::-;;:::i;:::-;;4948:216;;;;;;;;;;-1:-1:-1;4948:216:0;;;;;:::i;:::-;;:::i;:::-;;;1403:14:1;;1396:22;1378:41;;1366:2;1351:18;4948:216:0;1238:187:1;3673:44:0;;;;;;;;;;;;3714:3;3673:44;;;;;1576:25:1;;;1564:2;1549:18;3673:44:0;1430:177:1;3278:58:0;;;;;;;;;;;;;:::i;8135:259::-;;;;;;;;;;-1:-1:-1;8135:259:0;;;;;:::i;:::-;;:::i;3638:28::-;;;;;;;;;;;;;;;;5466:370;;;;;;;;;;-1:-1:-1;5466:370:0;;;;;:::i;:::-;;:::i;9401:137::-;;;;;;;;;;;;;:::i;2199:103::-;;;;;;;;;;-1:-1:-1;2199:103:0;;;;;:::i;:::-;2254:4;2289:5;-1:-1:-1;;;;;2278:16:0;;;2289:5;;2278:16;;2199:103;3230:35;;;;;;;;;;;;3263:2;3230:35;;;;;2308:4:1;2296:17;;;2278:36;;2266:2;2251:18;3230:35:0;2136:184:1;3526:44:0;;;;;;;;;;-1:-1:-1;3526:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5172:122;;;;;;;;;;-1:-1:-1;5172:122:0;;;;;:::i;:::-;;:::i;3911:30::-;;;;;;;;;;-1:-1:-1;3911:30:0;;;;-1:-1:-1;;;3911:30:0;;;;;;9062:144;;;;;;;;;;-1:-1:-1;9062:144:0;;;;;:::i;:::-;;:::i;3404:45::-;;;;;;;;;;-1:-1:-1;3404:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;2310:85;;;;;;;;;;;;;:::i;8402:284::-;;;;;;;;;;-1:-1:-1;8402:284:0;;;;;:::i;:::-;;:::i;3345:50::-;;;;;;;;;;;;;;;;4723:78;;;;;;;;;;-1:-1:-1;4775:7:0;4793:5;-1:-1:-1;;;;;4793:5:0;4723:78;;;-1:-1:-1;;;;;2742:32:1;;;2724:51;;2712:2;2697:18;4723:78:0;2578:203:1;3183:40:0;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3183:40:0;;;;;3873:29;;;;;;;;;;;;;;;5302:156;;;;;;;;;;-1:-1:-1;5302:156:0;;;;;:::i;:::-;;:::i;3577:52::-;;;;;;;;;;-1:-1:-1;3577:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4807:133;;;;;;;;;;-1:-1:-1;4807:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;4909:19:0;;;4891:7;4909:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;4807:133;9214:179;;;;;;;;;;-1:-1:-1;9214:179:0;;;;;:::i;:::-;;:::i;3842:24::-;;;;;;;;;;-1:-1:-1;3842:24:0;;;;-1:-1:-1;;;;;3842:24:0;;;5844:174;2254:4;2289:5;-1:-1:-1;;;;;2289:5:0;2158:10;2278:16;2142:38;;;;-1:-1:-1;;;2142:38:0;;;;;;;:::i;:::-;;;;;;;;;6006:4:::1;5978:23:::0;3324:12:::1;3263:2;3324;:12;:::i;:::-;3316:20;::::0;:5:::1;:20;:::i;:::-;5964:37;;;;:::i;:::-;5963:47;;;;:::i;:::-;5945:15;:65:::0;-1:-1:-1;5844:174:0:o;4948:216::-;5052:10;5023:4;5040:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;5040:32:0;;;;;;;;;;:41;;;5097:37;5023:4;;5040:32;;5097:37;;;;5075:6;1576:25:1;;1564:2;1549:18;;1430:177;5097:37:0;;;;;;;;-1:-1:-1;5152:4:0;4948:216;;;;;:::o;3278:58::-;3324:12;3263:2;3324;:12;:::i;:::-;3316:20;;:5;:20;:::i;:::-;3278:58;:::o;8135:259::-;2254:4;2289:5;-1:-1:-1;;;;;2289:5:0;2158:10;2278:16;2142:38;;;;-1:-1:-1;;;2142:38:0;;;;;;;:::i;:::-;8238:21:::1;8218:17;8329:3;8296:28;8308:16:::0;8238:21;8296:28:::1;:::i;:::-;8294:38;;;;:::i;:::-;8343:43;::::0;8270:62;;-1:-1:-1;8351:10:0::1;::::0;8343:43;::::1;;;::::0;8270:62;;8343:43:::1;::::0;;;8270:62;8351:10;8343:43;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;8207:187;;8135:259:::0;:::o;5466:370::-;-1:-1:-1;;;;;5586:19:0;;5566:4;5586:19;;;:11;:19;;;;;;;;5606:10;5586:31;;;;;;;;-1:-1:-1;;5586:52:0;5583:186;;5688:69;;;;;;;;;;;-1:-1:-1;;;5688:69:0;;;;;;;;-1:-1:-1;;;;;5688:19:0;;-1:-1:-1;5688:19:0;;;:11;:19;;;;;5708:10;5688:31;;;;;;;;;;:69;;5724:6;;5688:35;:69::i;:::-;-1:-1:-1;;;;;5654:19:0;;;;;;:11;:19;;;;;;;;5674:10;5654:31;;;;;;;:103;5583:186;5788:40;5802:6;5810:9;5821:6;5788:13;:40::i;:::-;5781:47;;5466:370;;;;;;:::o;9401:137::-;9514:9;:15;;;;3012:42;9454:7;9496:15;;;;;9454:7;;9514:15;3324:12;3263:2;3324;:12;:::i;:::-;3316:20;;:5;:20;:::i;:::-;9482:29;;;;:::i;:::-;:47;;;;:::i;:::-;9474:56;;9401:137;:::o;5172:122::-;5227:4;5251:35;5259:7;-1:-1:-1;;5251:7:0;:35::i;9062:144::-;2254:4;2289:5;-1:-1:-1;;;;;2289:5:0;2158:10;2278:16;2142:38;;;;-1:-1:-1;;;2142:38:0;;;;;;;:::i;:::-;9145:14:::1;:22:::0;9178:13:::1;:20:::0;9062:144::o;2310:85::-;2254:4;2289:5;-1:-1:-1;;;;;2289:5:0;2158:10;2278:16;2142:38;;;;-1:-1:-1;;;2142:38:0;;;;;;;:::i;:::-;2385:1:::1;2369:18:::0;;-1:-1:-1;;;;;;2369:18:0::1;::::0;;2310:85::o;8402:284::-;8493:12;2289:5;;-1:-1:-1;;;;;2289:5:0;2158:10;2278:16;2142:38;;;;-1:-1:-1;;;2142:38:0;;;;;;;:::i;:::-;8521:11;8518:95:::1;;8557:44;::::0;-1:-1:-1;;;8557:44:0;;8595:4:::1;8557:44;::::0;::::1;2724:51:1::0;-1:-1:-1;;;;;8557:29:0;::::1;::::0;::::1;::::0;2697:18:1;;8557:44:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8548:53;;8518:95;8630:48;::::0;-1:-1:-1;;;8630:48:0;;8659:10:::1;8630:48;::::0;::::1;6451:51:1::0;6518:18;;;6511:34;;;-1:-1:-1;;;;;8630:28:0;::::1;::::0;::::1;::::0;6424:18:1;;8630:48:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;5302:156::-:0;5382:4;5406:44;5420:10;5432:9;5443:6;5406:13;:44::i;9214:179::-;2254:4;2289:5;-1:-1:-1;;;;;2289:5:0;2158:10;2278:16;2142:38;;;;-1:-1:-1;;;2142:38:0;;;;;;;:::i;:::-;9310:11:::1;:22:::0;;-1:-1:-1;;;;9310:22:0::1;-1:-1:-1::0;;;9310:22:0;::::1;;;;::::0;;9373:12;;3324::::1;::::0;3263:2:::1;::::0;3324:12:::1;:::i;:::-;3316:20;::::0;:5:::1;:20;:::i;:::-;9359:26;;;;:::i;:::-;9343:13;:42:::0;-1:-1:-1;;9214:179:0:o;518:192::-;604:7;640:12;632:6;;;;624:29;;;;-1:-1:-1;;;624:29:0;;;;;;;;:::i;:::-;-1:-1:-1;664:9:0;676:5;680:1;676;:5;:::i;:::-;664:17;518:192;-1:-1:-1;;;;;518:192:0:o;6028:821::-;6140:6;;6120:4;;6140:6;;6137:63;;;6156:41;6171:6;6179:9;6190:6;6156:14;:41::i;:::-;6149:48;;;;6137:63;-1:-1:-1;;;;;6217:27:0;;;;;;:19;:27;;;;;;;;6216:28;:63;;;;-1:-1:-1;;;;;;6249:30:0;;;;;;:19;:30;;;;;;;;6248:31;6216:63;:84;;;;;6296:4;-1:-1:-1;;;;;6283:17:0;:9;-1:-1:-1;;;;;6283:17:0;;;6216:84;6212:203;;;6360:15;;-1:-1:-1;;;;;6326:20:0;;;;;;:9;:20;;;;;;:29;;6349:6;;6326:29;:::i;:::-;6325:50;;6317:86;;;;-1:-1:-1;;;6317:86:0;;7141:2:1;6317:86:0;;;7123:21:1;7180:2;7160:18;;;7153:30;7219:26;7199:18;;;7192:54;7263:18;;6317:86:0;6939:348:1;6317:86:0;6434:16;:14;:16::i;:::-;6431:35;;;6453:10;:8;:10::i;:::-;6498:53;;;;;;;;;;;-1:-1:-1;;;6498:53:0;;;;;;;;-1:-1:-1;;;;;6498:17:0;;-1:-1:-1;6498:17:0;;;:9;:17;;;;;;;;:53;;6520:6;;6498:21;:53::i;:::-;-1:-1:-1;;;;;6478:17:0;;;;;;:9;:17;;;;;;;;:73;;;;6590:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;6613:22:0;;;;;;:11;:22;;;;;;;;6590:45;6589:93;;6648:34;6656:6;6664;6672:9;6648:7;:34::i;:::-;6589:93;;;6639:6;6589:93;-1:-1:-1;;;;;6718:20:0;;;;;;:9;:20;;;;;;6564:118;;-1:-1:-1;6718:40:0;;6564:118;6718:24;:40::i;:::-;-1:-1:-1;;;;;6695:20:0;;;;;;;:9;:20;;;;;;;:63;;;;6776:43;;;;;;;;;;6804:14;1576:25:1;;1564:2;1549:18;;1430:177;6776:43:0;;;;;;;;-1:-1:-1;6837:4:0;;6028:821;-1:-1:-1;;;;6028:821:0:o;6861:330::-;6991:53;;;;;;;;;;;-1:-1:-1;;;6991:53:0;;;;;;;;-1:-1:-1;;;;;6991:17:0;;6954:4;6991:17;;;:9;:17;;;;;;;:53;;7013:6;;6991:21;:53::i;:::-;-1:-1:-1;;;;;6971:17:0;;;;;;;:9;:17;;;;;;:73;;;;7078:20;;;;;;;:32;;7103:6;7078:24;:32::i;:::-;-1:-1:-1;;;;;7055:20:0;;;;;;;:9;:20;;;;;;;:55;;;;7126:35;;;;;;;;;;7154:6;1576:25:1;;1564:2;1549:18;;1430:177;7126:35:0;;;;;;;;-1:-1:-1;7179:4:0;6861:330;;;;;:::o;7930:197::-;7979:4;8003:10;-1:-1:-1;;;;;8017:4:0;8003:18;;;;;:38;;-1:-1:-1;8035:6:0;;;;8034:7;8003:38;:62;;;;-1:-1:-1;8054:11:0;;-1:-1:-1;;;8054:11:0;;;;8003:62;:116;;;;-1:-1:-1;;8106:13:0;;8096:4;8078:24;;;;:9;:24;;;;;;:41;;;7930:197::o;8694:360::-;4036:6;:13;;-1:-1:-1;;4036:13:0;4045:4;4036:13;;;8769:16:::1;::::0;;8783:1:::1;8769:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8769:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8769:16:0::1;8745:40;;8814:4;8796;8801:1;8796:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;8796:23:0::1;;;-1:-1:-1::0;;;;;8796:23:0::1;;;::::0;::::1;8840:4;8830;8835:1;8830:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8830:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;8857:6:::1;::::0;8929:13:::1;::::0;8857:189:::1;::::0;-1:-1:-1;;;8857:189:0;;:6;;;::::1;::::0;:57:::1;::::0;:189:::1;::::0;8929:13;8857:6:::1;::::0;8973:4;;9000::::1;::::0;9020:15:::1;::::0;8857:189:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4054:6:0;:14;;-1:-1:-1;;4054:14:0;;;-1:-1:-1;;;8694:360:0:o;7199:723::-;7285:7;7308:11;;;:28;;-1:-1:-1;7323:8:0;;:13;7308:28;7305:72;;;-1:-1:-1;7359:6:0;7352:13;;7305:72;7389:18;7410;;7389:39;;7457:4;-1:-1:-1;;;;;7444:17:0;:9;-1:-1:-1;;;;;7444:17:0;;7441:154;;;-1:-1:-1;7491:14:0;;7441:154;;;7536:4;-1:-1:-1;;;;;7526:14:0;:6;-1:-1:-1;;;;;7526:14:0;;7523:72;;;-1:-1:-1;7570:13:0;;7523:72;7607:17;7627:62;7668:20;3714:3;;7668:20;:::i;:::-;7627:36;7652:10;7627:20;7638:8;;7627:6;:10;;:20;;;;:::i;:::-;:24;;:36::i;:::-;:40;;:62::i;:::-;7607:82;-1:-1:-1;7705:13:0;;7702:172;;7779:4;7761:24;;;;:9;:24;;;;;;:39;;7790:9;7761:28;:39::i;:::-;7752:4;7734:24;;;;:9;:24;;;;;;;:66;;;;7820:42;;-1:-1:-1;;;;;7820:42:0;;;;;;;7852:9;1576:25:1;;1564:2;1549:18;;1430:177;7820:42:0;;;;;;;;7702:172;7893:21;:6;7904:9;7893:10;:21::i;:::-;7886:28;7199:723;-1:-1:-1;;;;;;7199:723:0:o;189:181::-;247:7;;279:5;283:1;279;:5;:::i;:::-;267:17;;308:1;303;:6;;295:46;;;;-1:-1:-1;;;295:46:0;;8743:2:1;295:46:0;;;8725:21:1;8782:2;8762:18;;;8755:30;8821:29;8801:18;;;8794:57;8868:18;;295:46:0;8541:351:1;716:250:0;774:7;798:6;794:47;;-1:-1:-1;828:1:0;821:8;;794:47;853:9;865:5;869:1;865;:5;:::i;:::-;853:17;-1:-1:-1;898:1:0;889:5;893:1;853:17;889:5;:::i;:::-;:10;881:56;;;;-1:-1:-1;;;881:56:0;;9099:2:1;881:56:0;;;9081:21:1;9138:2;9118:18;;;9111:30;9177:34;9157:18;;;9150:62;-1:-1:-1;;;9228:18:1;;;9221:31;9269:19;;881:56:0;8897:397:1;972:132:0;1030:7;1057:39;1061:1;1064;1057:39;;;;;;;;;;;;;;;;;:3;:39::i;376:136::-;434:7;461:43;465:1;468;461:43;;;;;;;;;;;;;;;;;:3;:43::i;1110:189::-;1196:7;1231:12;1224:5;1216:28;;;;-1:-1:-1;;;1216:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1255:9:0;1267:5;1271:1;1267;:5;:::i;14:597: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;;;452:6;449:1;446:13;443:91;;;522:1;517:2;508:6;497:9;493:22;489:31;482:42;443:91;-1:-1:-1;595:2:1;574:15;-1:-1:-1;;570:29:1;555:45;;;;602:2;551:54;;14:597;-1:-1:-1;;;14:597:1:o;616:180::-;675:6;728:2;716:9;707:7;703:23;699:32;696:52;;;744:1;741;734:12;696:52;-1:-1:-1;767:23:1;;616:180;-1:-1:-1;616:180:1:o;801:173::-;869:20;;-1:-1:-1;;;;;918:31:1;;908:42;;898:70;;964:1;961;954:12;898:70;801:173;;;:::o;979:254::-;1047:6;1055;1108:2;1096:9;1087:7;1083:23;1079:32;1076:52;;;1124:1;1121;1114:12;1076:52;1147:29;1166:9;1147:29;:::i;:::-;1137:39;1223:2;1208:18;;;;1195:32;;-1:-1:-1;;;979:254:1:o;1612:328::-;1689:6;1697;1705;1758:2;1746:9;1737:7;1733:23;1729:32;1726:52;;;1774:1;1771;1764:12;1726:52;1797:29;1816:9;1797:29;:::i;:::-;1787:39;;1845:38;1879:2;1868:9;1864:18;1845:38;:::i;:::-;1835:48;;1930:2;1919:9;1915:18;1902:32;1892:42;;1612:328;;;;;:::o;1945:186::-;2004:6;2057:2;2045:9;2036:7;2032:23;2028:32;2025:52;;;2073:1;2070;2063:12;2025:52;2096:29;2115:9;2096:29;:::i;2325:248::-;2393:6;2401;2454:2;2442:9;2433:7;2429:23;2425:32;2422:52;;;2470:1;2467;2460:12;2422:52;-1:-1:-1;;2493:23:1;;;2563:2;2548:18;;;2535:32;;-1:-1:-1;2325:248:1:o;2786:260::-;2854:6;2862;2915:2;2903:9;2894:7;2890:23;2886:32;2883:52;;;2931:1;2928;2921:12;2883:52;2954:29;2973:9;2954:29;:::i;:::-;2944:39;;3002:38;3036:2;3025:9;3021:18;3002:38;:::i;:::-;2992:48;;2786:260;;;;;:::o;3051:118::-;3137:5;3130:13;3123:21;3116:5;3113:32;3103:60;;3159:1;3156;3149:12;3103:60;3051:118;:::o;3174:309::-;3239:6;3247;3300:2;3288:9;3279:7;3275:23;3271:32;3268:52;;;3316:1;3313;3306:12;3268:52;3355:9;3342:23;3374:28;3396:5;3374:28;:::i;3714:329::-;3916:2;3898:21;;;3955:1;3935:18;;;3928:29;-1:-1:-1;;;3988:2:1;3973:18;;3966:36;4034:2;4019:18;;3714:329::o;4048:127::-;4109:10;4104:3;4100:20;4097:1;4090:31;4140:4;4137:1;4130:15;4164:4;4161:1;4154:15;4180:422;4269:1;4312:5;4269:1;4326:270;4347:7;4337:8;4334:21;4326:270;;;4406:4;4402:1;4398:6;4394:17;4388:4;4385:27;4382:53;;;4415:18;;:::i;:::-;4465:7;4455:8;4451:22;4448:55;;;4485:16;;;;4448:55;4564:22;;;;4524:15;;;;4326:270;;;4330:3;4180:422;;;;;:::o;4607:806::-;4656:5;4686:8;4676:80;;-1:-1:-1;4727:1:1;4741:5;;4676:80;4775:4;4765:76;;-1:-1:-1;4812:1:1;4826:5;;4765:76;4857:4;4875:1;4870:59;;;;4943:1;4938:130;;;;4850:218;;4870:59;4900:1;4891:10;;4914:5;;;4938:130;4975:3;4965:8;4962:17;4959:43;;;4982:18;;:::i;:::-;-1:-1:-1;;5038:1:1;5024:16;;5053:5;;4850:218;;5152:2;5142:8;5139:16;5133:3;5127:4;5124:13;5120:36;5114:2;5104:8;5101:16;5096:2;5090:4;5087:12;5083:35;5080:77;5077:159;;;-1:-1:-1;5189:19:1;;;5221:5;;5077:159;5268:34;5293:8;5287:4;5268:34;:::i;:::-;5338:6;5334:1;5330:6;5326:19;5317:7;5314:32;5311:58;;;5349:18;;:::i;:::-;5387:20;;4607:806;-1:-1:-1;;;4607:806:1:o;5418:140::-;5476:5;5505:47;5546:4;5536:8;5532:19;5526:4;5505:47;:::i;5563:168::-;5603:7;5669:1;5665;5661:6;5657:14;5654:1;5651:21;5646:1;5639:9;5632:17;5628:45;5625:71;;;5676:18;;:::i;:::-;-1:-1:-1;5716:9:1;;5563:168::o;5736:217::-;5776:1;5802;5792:132;;5846:10;5841:3;5837:20;5834:1;5827:31;5881:4;5878:1;5871:15;5909:4;5906:1;5899:15;5792:132;-1:-1:-1;5938:9:1;;5736:217::o;5958:125::-;5998:4;6026:1;6023;6020:8;6017:34;;;6031:18;;:::i;:::-;-1:-1:-1;6068:9:1;;5958:125::o;6088:184::-;6158:6;6211:2;6199:9;6190:7;6186:23;6182:32;6179:52;;;6227:1;6224;6217:12;6179:52;-1:-1:-1;6250:16:1;;6088:184;-1:-1:-1;6088:184:1:o;6556:245::-;6623:6;6676:2;6664:9;6655:7;6651:23;6647:32;6644:52;;;6692:1;6689;6682:12;6644:52;6724:9;6718:16;6743:28;6765:5;6743:28;:::i;6806:128::-;6846:3;6877:1;6873:6;6870:1;6867:13;6864:39;;;6883:18;;:::i;:::-;-1:-1:-1;6919:9:1;;6806:128::o;7424:127::-;7485:10;7480:3;7476:20;7473:1;7466:31;7516:4;7513:1;7506:15;7540:4;7537:1;7530:15;7556:980;7818:4;7866:3;7855:9;7851:19;7897:6;7886:9;7879:25;7923:2;7961:6;7956:2;7945:9;7941:18;7934:34;8004:3;7999:2;7988:9;7984:18;7977:31;8028:6;8063;8057:13;8094:6;8086;8079:22;8132:3;8121:9;8117:19;8110:26;;8171:2;8163:6;8159:15;8145:29;;8192:1;8202:195;8216:6;8213:1;8210:13;8202:195;;;8281:13;;-1:-1:-1;;;;;8277:39:1;8265:52;;8372:15;;;;8337:12;;;;8313:1;8231:9;8202:195;;;-1:-1:-1;;;;;;;8453:32:1;;;;8448:2;8433:18;;8426:60;-1:-1:-1;;;8517:3:1;8502:19;8495:35;8414:3;7556:980;-1:-1:-1;;;7556:980:1:o

Swarm Source

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