ETH Price: $3,456.27 (-5.95%)
 

Overview

Max Total Supply

1,000,000,000 SpiderGPT

Holders

22

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
2,333,900.011936548706451362 SpiderGPT

Value
$0.00
0xAaf3f01F06B0a47577D349eF322cC044f2681bA7
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:
ERC20SpiderGPT

Compiler Version
v0.8.10+commit.fc410830

Optimization Enabled:
Yes with 400 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-06-07
*/

// SPDX-License-Identifier: UNLICENSED

/*

Telegram : https://t.me/SpiderGPTErc
Twitter : https://twitter.com/SpiderGPT_Erc

*/

pragma solidity 0.8.10;

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

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

    string public constant name = "SpiderGPT";
    string public constant symbol = "SpiderGPT";
    uint8 public constant decimals = 18;
    
    uint256 public constant totalSupply = 1_000_000_000 * 10**decimals;

    uint256 public _maxWalletToken = totalSupply / 50;

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

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

    uint256 public totalFee = 10;
    uint256 public constant feeDenominator = 100;
    
    uint256 buyMultiplier = 100;
    uint256 sellMultiplier = 100;
    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 setMaxWallet(uint256 maxwallet) external onlyOwner {
        require(maxwallet >= 1, "Cant set max wallet below 1%");
        _maxWalletToken = (totalSupply * maxwallet ) / 100;
    }


    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 manualSwap() external onlyOwner {
        payable(msg.sender).transfer(address(this).balance);
    }

    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 {
        require(_buy < 151,"Max buy tax can be 15%");
        require(_sell < 151,"Max sell tax can be 15%");
        sellMultiplier = _sell;
        buyMultiplier = _buy;
    }

    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":[],"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":"manualSwap","outputs":[],"stateMutability":"nonpayable","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":"maxwallet","type":"uint256"}],"name":"setMaxWallet","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":[],"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"}]

60c06040526032620000146012600a62000454565b6200002490633b9aca006200046c565b6200003091906200048e565b600155600a60068190556064600781905560088190556000600955815460ff60a01b1916600160a01b178255906200006b9060129062000454565b6200007b90633b9aca006200046c565b6200008791906200048e565b600b553480156200009757600080fd5b5060008054336001600160a01b031991821617909155600a8054737a250d5630b4cf539739df2c5dacb4c659f2488d921682179055604080516315ab88c960e31b8152905163ad5c4648916004808201926020929091908290030181865afa15801562000108573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200012e9190620004b1565b6001600160a01b03908116608052600a546040805163c45a015560e01b81529051919092169163c45a01559160048083019260209291908290030181865afa1580156200017f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001a59190620004b1565b6080516040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c65396906044016020604051808303816000875af1158015620001f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200021d9190620004b1565b6001600160a01b0390811660a052306000818152600360209081526040808320600a8054909616845282528083206000199055338352600482528083208054600160ff199182168117909255600590935281842080548416821790559383528220805482168417905561dead9091527f7d509c07f0d4edcc2dd1b53aae68677132eb562dcba78e36381b63ccaf66e6ba80549091169091179055620002c59060129062000454565b620002d590633b9aca006200046c565b33600081815260026020526040812092909255907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003186012600a62000454565b6200032890633b9aca006200046c565b60405190815260200160405180910390a3620004dc565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003965781600019048211156200037a576200037a6200033f565b808516156200038857918102915b93841c93908002906200035a565b509250929050565b600082620003af575060016200044e565b81620003be575060006200044e565b8160018114620003d75760028114620003e25762000402565b60019150506200044e565b60ff841115620003f657620003f66200033f565b50506001821b6200044e565b5060208310610133831016604e8410600b841016171562000427575081810a6200044e565b62000433838362000355565b80600019048211156200044a576200044a6200033f565b0290505b92915050565b60006200046560ff8416836200039e565b9392505050565b60008160001904831182151516156200048957620004896200033f565b500290565b600082620004ac57634e487b7160e01b600052601260045260246000fd5b500490565b600060208284031215620004c457600080fd5b81516001600160a01b03811681146200046557600080fd5b60805160a05161156c6200051e6000396000818161045e01528181610a5f01528181610d5801528181610f010152610f4401526000610e22015261156c6000f3fe60806040526004361061019a5760003560e01c80635d0044ca116100e1578063893d20e81161008a578063a9059cbb11610064578063a9059cbb14610480578063c867d60b146104a0578063dd62ed3e146104d0578063f887ea401461051657600080fd5b8063893d20e81461041a57806395d89b41146101a6578063a8aa1b311461044c57600080fd5b806370a08231116100bb57806370a08231146103c2578063715018a6146103ef57806378109e541461040457600080fd5b80635d0044ca146103615780636ddd1713146103815780636f50f507146103a257600080fd5b80632b112e49116101435780633f4218e01161011d5780633f4218e0146102fa57806351bc3c851461032a578063571ac8b01461034157600080fd5b80632b112e491461028f5780632f54bf6e146102a4578063313ce567146102d357600080fd5b806318160ddd1161017457806318160ddd146102445780631df4ccfc1461025957806323b872dd1461026f57600080fd5b806306fdde03146101a6578063095ea7b3146101f1578063180b0d7e1461022157600080fd5b366101a157005b600080fd5b3480156101b257600080fd5b506101db6040518060400160405280600981526020016814dc1a59195c91d41560ba1b81525081565b6040516101e891906111d6565b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611247565b610536565b60405190151581526020016101e8565b34801561022d57600080fd5b50610236606481565b6040519081526020016101e8565b34801561025057600080fd5b506102366105a3565b34801561026557600080fd5b5061023660065481565b34801561027b57600080fd5b5061021161028a366004611271565b6105c0565b34801561029b57600080fd5b50610236610689565b3480156102b057600080fd5b506102116102bf3660046112ad565b6000546001600160a01b0391821691161490565b3480156102df57600080fd5b506102e8601281565b60405160ff90911681526020016101e8565b34801561030657600080fd5b506102116103153660046112ad565b60046020526000908152604090205460ff1681565b34801561033657600080fd5b5061033f610710565b005b34801561034d57600080fd5b5061021161035c3660046112ad565b610787565b34801561036d57600080fd5b5061033f61037c3660046112c8565b610795565b34801561038d57600080fd5b50600a5461021190600160a01b900460ff1681565b3480156103ae57600080fd5b5061033f6103bd3660046112e1565b610860565b3480156103ce57600080fd5b506102366103dd3660046112ad565b60026020526000908152604090205481565b3480156103fb57600080fd5b5061033f61094b565b34801561041057600080fd5b5061023660015481565b34801561042657600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101e8565b34801561045857600080fd5b506104347f000000000000000000000000000000000000000000000000000000000000000081565b34801561048c57600080fd5b5061021161049b366004611247565b6109ad565b3480156104ac57600080fd5b506102116104bb3660046112ad565b60056020526000908152604090205460ff1681565b3480156104dc57600080fd5b506102366104eb366004611303565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561052257600080fd5b50600a54610434906001600160a01b031681565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906105919086815260200190565b60405180910390a35060015b92915050565b6105af6012600a611430565b6105bd90633b9aca0061143f565b81565b6001600160a01b03831660009081526003602090815260408083203384529091528120546000191461067457604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b038716600090815260038252838120338252909152919091205461064f9184906109ba565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b61067f8484846109f4565b90505b9392505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc549091906106e96012600a611430565b6106f790633b9aca0061143f565b610701919061145e565b61070b919061145e565b905090565b6000546001600160a01b031633146107585760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b60405133904780156108fc02916000818181858888f19350505050158015610784573d6000803e3d6000fd5b50565b600061059d82600019610536565b6000546001600160a01b031633146107d85760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015260640161074f565b60018110156108295760405162461bcd60e51b815260206004820152601c60248201527f43616e7420736574206d61782077616c6c65742062656c6f7720312500000000604482015260640161074f565b6064816108386012600a611430565b61084690633b9aca0061143f565b610850919061143f565b61085a9190611475565b60015550565b6000546001600160a01b031633146108a35760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015260640161074f565b609782106108f35760405162461bcd60e51b815260206004820152601660248201527f4d617820627579207461782063616e2062652031352500000000000000000000604482015260640161074f565b609781106109435760405162461bcd60e51b815260206004820152601760248201527f4d61782073656c6c207461782063616e20626520313525000000000000000000604482015260640161074f565b600855600755565b6000546001600160a01b0316331461098e5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015260640161074f565b6000805473ffffffffffffffffffffffffffffffffffffffff19169055565b60006106823384846109f4565b600081848411156109de5760405162461bcd60e51b815260040161074f91906111d6565b5060006109eb848661145e565b95945050505050565b600c5460009060ff1615610a1457610a0d848484610c65565b9050610682565b6001600160a01b03841660009081526005602052604090205460ff16158015610a5657506001600160a01b03831660009081526005602052604090205460ff16155b8015610a9457507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b031614155b15610b0e576001546001600160a01b038416600090815260026020526040902054610ac0908490611497565b1115610b0e5760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d697420726561636865640000000000000000604482015260640161074f565b610b16610d4b565b15610b2357610b23610dbe565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054610b759184906109ba565b6001600160a01b038516600090815260026020908152604080832093909355600490529081205460ff1680610bc257506001600160a01b03841660009081526004602052604090205460ff165b610bd657610bd1858486610edd565b610bd8565b825b6001600160a01b038516600090815260026020526040902054909150610bfe9082611046565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c529085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600290915291822054610cb69184906109ba565b6001600160a01b038086166000908152600260205260408082209390935590851681522054610ce59083611046565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d399086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614801590610d895750600c5460ff16155b8015610d9e5750600a54600160a01b900460ff165b801561070b575050600b5430600090815260026020526040902054101590565b600c805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e0057610e006114af565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000000000000000000000000000000000000000000081600181518110610e5457610e546114af565b6001600160a01b039283166020918202929092010152600a54600b5460405163791ac94760e01b8152919092169163791ac94791610e9e91906000908690309042906004016114c5565b600060405180830381600087803b158015610eb857600080fd5b505af1158015610ecc573d6000803e3d6000fd5b5050600c805460ff19169055505050565b6000821580610eec5750600654155b15610ef8575081610682565b600060095490507f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316836001600160a01b03161415610f425750600854610f81565b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316856001600160a01b03161415610f8157506007545b6000610fb6610f9160648061143f565b610fb084610faa6006548a6110a590919063ffffffff16565b906110a5565b90611124565b905080156110325730600090815260026020526040902054610fd89082611046565b30600081815260026020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110299085815260200190565b60405180910390a35b61103c8582611166565b9695505050505050565b6000806110538385611497565b9050838110156106825760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161074f565b6000826110b45750600061059d565b60006110c0838561143f565b9050826110cd8583611475565b146106825760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161074f565b600061068283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111a8565b600061068283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506109ba565b600081836111c95760405162461bcd60e51b815260040161074f91906111d6565b5060006109eb8486611475565b600060208083528351808285015260005b81811015611203578581018301518582016040015282016111e7565b81811115611215576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461124257600080fd5b919050565b6000806040838503121561125a57600080fd5b6112638361122b565b946020939093013593505050565b60008060006060848603121561128657600080fd5b61128f8461122b565b925061129d6020850161122b565b9150604084013590509250925092565b6000602082840312156112bf57600080fd5b6106828261122b565b6000602082840312156112da57600080fd5b5035919050565b600080604083850312156112f457600080fd5b50508035926020909101359150565b6000806040838503121561131657600080fd5b61131f8361122b565b915061132d6020840161122b565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561138757816000190482111561136d5761136d611336565b8085161561137a57918102915b93841c9390800290611351565b509250929050565b60008261139e5750600161059d565b816113ab5750600061059d565b81600181146113c157600281146113cb576113e7565b600191505061059d565b60ff8411156113dc576113dc611336565b50506001821b61059d565b5060208310610133831016604e8410600b841016171561140a575081810a61059d565b611414838361134c565b806000190482111561142857611428611336565b029392505050565b600061068260ff84168361138f565b600081600019048311821515161561145957611459611336565b500290565b60008282101561147057611470611336565b500390565b60008261149257634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156114aa576114aa611336565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115155784516001600160a01b0316835293830193918301916001016114f0565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220987352e8b71ccf5e3886b4e8ed742a6e073e4ea8bf2c784b99025717846f0e6b64736f6c634300080a0033

Deployed Bytecode

0x60806040526004361061019a5760003560e01c80635d0044ca116100e1578063893d20e81161008a578063a9059cbb11610064578063a9059cbb14610480578063c867d60b146104a0578063dd62ed3e146104d0578063f887ea401461051657600080fd5b8063893d20e81461041a57806395d89b41146101a6578063a8aa1b311461044c57600080fd5b806370a08231116100bb57806370a08231146103c2578063715018a6146103ef57806378109e541461040457600080fd5b80635d0044ca146103615780636ddd1713146103815780636f50f507146103a257600080fd5b80632b112e49116101435780633f4218e01161011d5780633f4218e0146102fa57806351bc3c851461032a578063571ac8b01461034157600080fd5b80632b112e491461028f5780632f54bf6e146102a4578063313ce567146102d357600080fd5b806318160ddd1161017457806318160ddd146102445780631df4ccfc1461025957806323b872dd1461026f57600080fd5b806306fdde03146101a6578063095ea7b3146101f1578063180b0d7e1461022157600080fd5b366101a157005b600080fd5b3480156101b257600080fd5b506101db6040518060400160405280600981526020016814dc1a59195c91d41560ba1b81525081565b6040516101e891906111d6565b60405180910390f35b3480156101fd57600080fd5b5061021161020c366004611247565b610536565b60405190151581526020016101e8565b34801561022d57600080fd5b50610236606481565b6040519081526020016101e8565b34801561025057600080fd5b506102366105a3565b34801561026557600080fd5b5061023660065481565b34801561027b57600080fd5b5061021161028a366004611271565b6105c0565b34801561029b57600080fd5b50610236610689565b3480156102b057600080fd5b506102116102bf3660046112ad565b6000546001600160a01b0391821691161490565b3480156102df57600080fd5b506102e8601281565b60405160ff90911681526020016101e8565b34801561030657600080fd5b506102116103153660046112ad565b60046020526000908152604090205460ff1681565b34801561033657600080fd5b5061033f610710565b005b34801561034d57600080fd5b5061021161035c3660046112ad565b610787565b34801561036d57600080fd5b5061033f61037c3660046112c8565b610795565b34801561038d57600080fd5b50600a5461021190600160a01b900460ff1681565b3480156103ae57600080fd5b5061033f6103bd3660046112e1565b610860565b3480156103ce57600080fd5b506102366103dd3660046112ad565b60026020526000908152604090205481565b3480156103fb57600080fd5b5061033f61094b565b34801561041057600080fd5b5061023660015481565b34801561042657600080fd5b506000546001600160a01b03165b6040516001600160a01b0390911681526020016101e8565b34801561045857600080fd5b506104347f0000000000000000000000009a0b58584707c3784eed16dc4c832daa39e58a7f81565b34801561048c57600080fd5b5061021161049b366004611247565b6109ad565b3480156104ac57600080fd5b506102116104bb3660046112ad565b60056020526000908152604090205460ff1681565b3480156104dc57600080fd5b506102366104eb366004611303565b6001600160a01b03918216600090815260036020908152604080832093909416825291909152205490565b34801561052257600080fd5b50600a54610434906001600160a01b031681565b3360008181526003602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906105919086815260200190565b60405180910390a35060015b92915050565b6105af6012600a611430565b6105bd90633b9aca0061143f565b81565b6001600160a01b03831660009081526003602090815260408083203384529091528120546000191461067457604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b038716600090815260038252838120338252909152919091205461064f9184906109ba565b6001600160a01b03851660009081526003602090815260408083203384529091529020555b61067f8484846109f4565b90505b9392505050565b60026020527fac33ff75c19e70fe83507db0d683fd3465c996598dc972688b7ace676c89077b5461dead60009081527f6a9609baa168169acaea398c4407efea4be641bb08e21e88806d9836fd9333cc549091906106e96012600a611430565b6106f790633b9aca0061143f565b610701919061145e565b61070b919061145e565b905090565b6000546001600160a01b031633146107585760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b60448201526064015b60405180910390fd5b60405133904780156108fc02916000818181858888f19350505050158015610784573d6000803e3d6000fd5b50565b600061059d82600019610536565b6000546001600160a01b031633146107d85760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015260640161074f565b60018110156108295760405162461bcd60e51b815260206004820152601c60248201527f43616e7420736574206d61782077616c6c65742062656c6f7720312500000000604482015260640161074f565b6064816108386012600a611430565b61084690633b9aca0061143f565b610850919061143f565b61085a9190611475565b60015550565b6000546001600160a01b031633146108a35760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015260640161074f565b609782106108f35760405162461bcd60e51b815260206004820152601660248201527f4d617820627579207461782063616e2062652031352500000000000000000000604482015260640161074f565b609781106109435760405162461bcd60e51b815260206004820152601760248201527f4d61782073656c6c207461782063616e20626520313525000000000000000000604482015260640161074f565b600855600755565b6000546001600160a01b0316331461098e5760405162461bcd60e51b815260206004820152600660248201526510a7aba722a960d11b604482015260640161074f565b6000805473ffffffffffffffffffffffffffffffffffffffff19169055565b60006106823384846109f4565b600081848411156109de5760405162461bcd60e51b815260040161074f91906111d6565b5060006109eb848661145e565b95945050505050565b600c5460009060ff1615610a1457610a0d848484610c65565b9050610682565b6001600160a01b03841660009081526005602052604090205460ff16158015610a5657506001600160a01b03831660009081526005602052604090205460ff16155b8015610a9457507f0000000000000000000000009a0b58584707c3784eed16dc4c832daa39e58a7f6001600160a01b0316836001600160a01b031614155b15610b0e576001546001600160a01b038416600090815260026020526040902054610ac0908490611497565b1115610b0e5760405162461bcd60e51b815260206004820152601860248201527f6d61782077616c6c6574206c696d697420726561636865640000000000000000604482015260640161074f565b610b16610d4b565b15610b2357610b23610dbe565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b038716600090815260029091529190912054610b759184906109ba565b6001600160a01b038516600090815260026020908152604080832093909355600490529081205460ff1680610bc257506001600160a01b03841660009081526004602052604090205460ff165b610bd657610bd1858486610edd565b610bd8565b825b6001600160a01b038516600090815260026020526040902054909150610bfe9082611046565b6001600160a01b0380861660008181526002602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c529085815260200190565b60405180910390a3506001949350505050565b6040805180820182526014815273496e73756666696369656e742042616c616e636560601b6020808301919091526001600160a01b0386166000908152600290915291822054610cb69184906109ba565b6001600160a01b038086166000908152600260205260408082209390935590851681522054610ce59083611046565b6001600160a01b0380851660008181526002602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d399086815260200190565b60405180910390a35060019392505050565b6000336001600160a01b037f0000000000000000000000009a0b58584707c3784eed16dc4c832daa39e58a7f1614801590610d895750600c5460ff16155b8015610d9e5750600a54600160a01b900460ff165b801561070b575050600b5430600090815260026020526040902054101590565b600c805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610e0057610e006114af565b60200260200101906001600160a01b031690816001600160a01b0316815250507f000000000000000000000000c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610e5457610e546114af565b6001600160a01b039283166020918202929092010152600a54600b5460405163791ac94760e01b8152919092169163791ac94791610e9e91906000908690309042906004016114c5565b600060405180830381600087803b158015610eb857600080fd5b505af1158015610ecc573d6000803e3d6000fd5b5050600c805460ff19169055505050565b6000821580610eec5750600654155b15610ef8575081610682565b600060095490507f0000000000000000000000009a0b58584707c3784eed16dc4c832daa39e58a7f6001600160a01b0316836001600160a01b03161415610f425750600854610f81565b7f0000000000000000000000009a0b58584707c3784eed16dc4c832daa39e58a7f6001600160a01b0316856001600160a01b03161415610f8157506007545b6000610fb6610f9160648061143f565b610fb084610faa6006548a6110a590919063ffffffff16565b906110a5565b90611124565b905080156110325730600090815260026020526040902054610fd89082611046565b30600081815260026020526040908190209290925590516001600160a01b038816907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906110299085815260200190565b60405180910390a35b61103c8582611166565b9695505050505050565b6000806110538385611497565b9050838110156106825760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161074f565b6000826110b45750600061059d565b60006110c0838561143f565b9050826110cd8583611475565b146106825760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161074f565b600061068283836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506111a8565b600061068283836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f7700008152506109ba565b600081836111c95760405162461bcd60e51b815260040161074f91906111d6565b5060006109eb8486611475565b600060208083528351808285015260005b81811015611203578581018301518582016040015282016111e7565b81811115611215576000604083870101525b50601f01601f1916929092016040019392505050565b80356001600160a01b038116811461124257600080fd5b919050565b6000806040838503121561125a57600080fd5b6112638361122b565b946020939093013593505050565b60008060006060848603121561128657600080fd5b61128f8461122b565b925061129d6020850161122b565b9150604084013590509250925092565b6000602082840312156112bf57600080fd5b6106828261122b565b6000602082840312156112da57600080fd5b5035919050565b600080604083850312156112f457600080fd5b50508035926020909101359150565b6000806040838503121561131657600080fd5b61131f8361122b565b915061132d6020840161122b565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561138757816000190482111561136d5761136d611336565b8085161561137a57918102915b93841c9390800290611351565b509250929050565b60008261139e5750600161059d565b816113ab5750600061059d565b81600181146113c157600281146113cb576113e7565b600191505061059d565b60ff8411156113dc576113dc611336565b50506001821b61059d565b5060208310610133831016604e8410600b841016171561140a575081810a61059d565b611414838361134c565b806000190482111561142857611428611336565b029392505050565b600061068260ff84168361138f565b600081600019048311821515161561145957611459611336565b500290565b60008282101561147057611470611336565b500390565b60008261149257634e487b7160e01b600052601260045260246000fd5b500490565b600082198211156114aa576114aa611336565b500190565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115155784516001600160a01b0316835293830193918301916001016114f0565b50506001600160a01b0396909616606085015250505060800152939250505056fea2646970667358221220987352e8b71ccf5e3886b4e8ed742a6e073e4ea8bf2c784b99025717846f0e6b64736f6c634300080a0033

Deployed Bytecode Sourcemap

2880:6178:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3138:41;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;3138:41:0;;;;;;;;;;;;:::i;:::-;;;;;;;;4959:216;;;;;;;;;;-1:-1:-1;4959:216:0;;;;;:::i;:::-;;:::i;:::-;;;1241:14:1;;1234:22;1216:41;;1204:2;1189:18;4959:216:0;1076:187:1;3686:44:0;;;;;;;;;;;;3727:3;3686:44;;;;;1414:25:1;;;1402:2;1387:18;3686:44:0;1268:177:1;3284:66:0;;;;;;;;;;;;;:::i;3651:28::-;;;;;;;;;;;;;;;;5477:370;;;;;;;;;;-1:-1:-1;5477:370:0;;;;;:::i;:::-;;:::i;8918:137::-;;;;;;;;;;;;;:::i;2200:103::-;;;;;;;;;;-1:-1:-1;2200:103:0;;;;;:::i;:::-;2255:4;2290:5;-1:-1:-1;;;;;2279:16:0;;;2290:5;;2279:16;;2200:103;3236:35;;;;;;;;;;;;3269:2;3236:35;;;;;2146:4:1;2134:17;;;2116:36;;2104:2;2089:18;3236:35:0;1974:184:1;3539:44:0;;;;;;;;;;-1:-1:-1;3539:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;8167:111;;;;;;;;;;;;;:::i;:::-;;5183:122;;;;;;;;;;-1:-1:-1;5183:122:0;;;;;:::i;:::-;;:::i;5855:195::-;;;;;;;;;;-1:-1:-1;5855:195:0;;;;;:::i;:::-;;:::i;3922:30::-;;;;;;;;;;-1:-1:-1;3922:30:0;;;;-1:-1:-1;;;3922:30:0;;;;;;8654:256;;;;;;;;;;-1:-1:-1;8654:256:0;;;;;:::i;:::-;;:::i;3417:45::-;;;;;;;;;;-1:-1:-1;3417:45:0;;;;;:::i;:::-;;;;;;;;;;;;;;2311:85;;;;;;;;;;;;;:::i;3359:49::-;;;;;;;;;;;;;;;;4734:78;;;;;;;;;;-1:-1:-1;4786:7:0;4804:5;-1:-1:-1;;;;;4804:5:0;4734:78;;;-1:-1:-1;;;;;2765:55:1;;;2747:74;;2735:2;2720:18;4734:78:0;2601:226:1;3884:29:0;;;;;;;;;;;;;;;5313:156;;;;;;;;;;-1:-1:-1;5313:156:0;;;;;:::i;:::-;;:::i;3590:52::-;;;;;;;;;;-1:-1:-1;3590:52:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;4818:133;;;;;;;;;;-1:-1:-1;4818:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;4920:19:0;;;4902:7;4920:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;4818:133;3853:24;;;;;;;;;;-1:-1:-1;3853:24:0;;;;-1:-1:-1;;;;;3853:24:0;;;4959:216;5063:10;5034:4;5051:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;5051:32:0;;;;;;;;;;:41;;;5108:37;5034:4;;5051:32;;5108:37;;;;5086:6;1414:25:1;;1402:2;1387:18;;1268:177;5108:37:0;;;;;;;;-1:-1:-1;5163:4:0;4959:216;;;;;:::o;3284:66::-;3338:12;3269:2;3338;:12;:::i;:::-;3322:28;;:13;:28;:::i;:::-;3284:66;:::o;5477:370::-;-1:-1:-1;;;;;5597:19:0;;5577:4;5597:19;;;:11;:19;;;;;;;;5617:10;5597:31;;;;;;;;-1:-1:-1;;5597:52:0;5594:186;;5699:69;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5699:19:0;;-1:-1:-1;5699:19:0;;;:11;:19;;;;;5719:10;5699:31;;;;;;;;;;:69;;5735:6;;5699:35;:69::i;:::-;-1:-1:-1;;;;;5665:19:0;;;;;;:11;:19;;;;;;;;5685:10;5665:31;;;;;;;:103;5594:186;5799:40;5813:6;5821:9;5832:6;5799:13;:40::i;:::-;5792:47;;5477:370;;;;;;:::o;8918:137::-;9031:9;:15;;;;3014:42;8971:7;9013:15;;;;;8971:7;;9031:15;3338:12;3269:2;3338;:12;:::i;:::-;3322:28;;:13;:28;:::i;:::-;8999:29;;;;:::i;:::-;:47;;;;:::i;:::-;8991:56;;8918:137;:::o;8167:111::-;2255:4;2290:5;-1:-1:-1;;;;;2290:5:0;2159:10;2279:16;2143:38;;;;-1:-1:-1;;;2143:38:0;;5366:2:1;2143:38:0;;;5348:21:1;5405:1;5385:18;;;5378:29;-1:-1:-1;;;5423:18:1;;;5416:36;5469:18;;2143:38:0;;;;;;;;;8219:51:::1;::::0;8227:10:::1;::::0;8248:21:::1;8219:51:::0;::::1;;;::::0;::::1;::::0;;;8248:21;8227:10;8219:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;8167:111::o:0;5183:122::-;5238:4;5262:35;5270:7;-1:-1:-1;;5262:7:0;:35::i;5855:195::-;2255:4;2290:5;-1:-1:-1;;;;;2290:5:0;2159:10;2279:16;2143:38;;;;-1:-1:-1;;;2143:38:0;;5366:2:1;2143:38:0;;;5348:21:1;5405:1;5385:18;;;5378:29;-1:-1:-1;;;5423:18:1;;;5416:36;5469:18;;2143:38:0;5164:329:1;2143:38:0;5947:1:::1;5934:9;:14;;5926:55;;;::::0;-1:-1:-1;;;5926:55:0;;5700:2:1;5926:55:0::1;::::0;::::1;5682:21:1::0;5739:2;5719:18;;;5712:30;5778;5758:18;;;5751:58;5826:18;;5926:55:0::1;5498:352:1::0;5926:55:0::1;6039:3;6025:9:::0;3338:12:::1;3269:2;3338;:12;:::i;:::-;3322:28;::::0;:13:::1;:28;:::i;:::-;6011:23;;;;:::i;:::-;6010:32;;;;:::i;:::-;5992:15;:50:::0;-1:-1:-1;5855:195:0:o;8654:256::-;2255:4;2290:5;-1:-1:-1;;;;;2290:5:0;2159:10;2279:16;2143:38;;;;-1:-1:-1;;;2143:38:0;;5366:2:1;2143:38:0;;;5348:21:1;5405:1;5385:18;;;5378:29;-1:-1:-1;;;5423:18:1;;;5416:36;5469:18;;2143:38:0;5164:329:1;2143:38:0;8752:3:::1;8745:4;:10;8737:44;;;::::0;-1:-1:-1;;;8737:44:0;;6279:2:1;8737:44:0::1;::::0;::::1;6261:21:1::0;6318:2;6298:18;;;6291:30;6357:24;6337:18;;;6330:52;6399:18;;8737:44:0::1;6077:346:1::0;8737:44:0::1;8808:3;8800:5;:11;8792:46;;;::::0;-1:-1:-1;;;8792:46:0;;6630:2:1;8792:46:0::1;::::0;::::1;6612:21:1::0;6669:2;6649:18;;;6642:30;6708:25;6688:18;;;6681:53;6751:18;;8792:46:0::1;6428:347:1::0;8792:46:0::1;8849:14;:22:::0;8882:13:::1;:20:::0;8654:256::o;2311:85::-;2255:4;2290:5;-1:-1:-1;;;;;2290:5:0;2159:10;2279:16;2143:38;;;;-1:-1:-1;;;2143:38:0;;5366:2:1;2143:38:0;;;5348:21:1;5405:1;5385:18;;;5378:29;-1:-1:-1;;;5423:18:1;;;5416:36;5469:18;;2143:38:0;5164:329:1;2143:38:0;2386:1:::1;2370:18:::0;;-1:-1:-1;;2370:18:0::1;::::0;;2311:85::o;5313:156::-;5393:4;5417:44;5431:10;5443:9;5454:6;5417:13;:44::i;519:192::-;605:7;641:12;633:6;;;;625:29;;;;-1:-1:-1;;;625:29:0;;;;;;;;:::i;:::-;-1:-1:-1;665:9:0;677:5;681:1;677;:5;:::i;:::-;665:17;519:192;-1:-1:-1;;;;;519:192:0:o;6060:821::-;6172:6;;6152:4;;6172:6;;6169:63;;;6188:41;6203:6;6211:9;6222:6;6188:14;:41::i;:::-;6181:48;;;;6169:63;-1:-1:-1;;;;;6249:27:0;;;;;;:19;:27;;;;;;;;6248:28;:63;;;;-1:-1:-1;;;;;;6281:30:0;;;;;;:19;:30;;;;;;;;6280:31;6248:63;:84;;;;;6328:4;-1:-1:-1;;;;;6315:17:0;:9;-1:-1:-1;;;;;6315:17:0;;;6248:84;6244:203;;;6392:15;;-1:-1:-1;;;;;6358:20:0;;;;;;:9;:20;;;;;;:29;;6381:6;;6358:29;:::i;:::-;6357:50;;6349:86;;;;-1:-1:-1;;;6349:86:0;;7115:2:1;6349:86:0;;;7097:21:1;7154:2;7134:18;;;7127:30;7193:26;7173:18;;;7166:54;7237:18;;6349:86:0;6913:348:1;6349:86:0;6466:16;:14;:16::i;:::-;6463:35;;;6485:10;:8;:10::i;:::-;6530:53;;;;;;;;;;;-1:-1:-1;;;6530:53:0;;;;;;;;-1:-1:-1;;;;;6530:17:0;;-1:-1:-1;6530:17:0;;;:9;:17;;;;;;;;:53;;6552:6;;6530:21;:53::i;:::-;-1:-1:-1;;;;;6510:17:0;;;;;;:9;:17;;;;;;;;:73;;;;6622:11;:19;;;;;;;;;:45;;-1:-1:-1;;;;;;6645:22:0;;;;;;:11;:22;;;;;;;;6622:45;6621:93;;6680:34;6688:6;6696;6704:9;6680:7;:34::i;:::-;6621:93;;;6671:6;6621:93;-1:-1:-1;;;;;6750:20:0;;;;;;:9;:20;;;;;;6596:118;;-1:-1:-1;6750:40:0;;6596:118;6750:24;:40::i;:::-;-1:-1:-1;;;;;6727:20:0;;;;;;;:9;:20;;;;;;;:63;;;;6808:43;;;;;;;;;;6836:14;1414:25:1;;1402:2;1387:18;;1268:177;6808:43:0;;;;;;;;-1:-1:-1;6869:4:0;;6060:821;-1:-1:-1;;;;6060:821:0:o;6893:330::-;7023:53;;;;;;;;;;;-1:-1:-1;;;7023:53:0;;;;;;;;-1:-1:-1;;;;;7023:17:0;;6986:4;7023:17;;;:9;:17;;;;;;;:53;;7045:6;;7023:21;:53::i;:::-;-1:-1:-1;;;;;7003:17:0;;;;;;;:9;:17;;;;;;:73;;;;7110:20;;;;;;;:32;;7135:6;7110:24;:32::i;:::-;-1:-1:-1;;;;;7087:20:0;;;;;;;:9;:20;;;;;;;:55;;;;7158:35;;;;;;;;;;7186:6;1414:25:1;;1402:2;1387:18;;1268:177;7158:35:0;;;;;;;;-1:-1:-1;7211:4:0;6893:330;;;;;:::o;7962:197::-;8011:4;8035:10;-1:-1:-1;;;;;8049:4:0;8035:18;;;;;:38;;-1:-1:-1;8067:6:0;;;;8066:7;8035:38;:62;;;;-1:-1:-1;8086:11:0;;-1:-1:-1;;;8086:11:0;;;;8035:62;:116;;;;-1:-1:-1;;8138:13:0;;8128:4;8110:24;;;;:9;:24;;;;;;:41;;;7962:197::o;8286:360::-;4047:6;:13;;-1:-1:-1;;4047:13:0;4056:4;4047:13;;;8361:16:::1;::::0;;8375:1:::1;8361:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8361:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8361:16:0::1;8337:40;;8406:4;8388;8393:1;8388:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;8388:23:0::1;;;-1:-1:-1::0;;;;;8388:23:0::1;;;::::0;::::1;8432:4;8422;8427:1;8422:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8422:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;:14;8449:6:::1;::::0;8521:13:::1;::::0;8449:189:::1;::::0;-1:-1:-1;;;8449:189:0;;:6;;;::::1;::::0;:57:::1;::::0;:189:::1;::::0;8521:13;8449:6:::1;::::0;8565:4;;8592::::1;::::0;8612:15:::1;::::0;8449:189:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4065:6:0;:14;;-1:-1:-1;;4065:14:0;;;-1:-1:-1;;;8286:360:0:o;7231:723::-;7317:7;7340:11;;;:28;;-1:-1:-1;7355:8:0;;:13;7340:28;7337:72;;;-1:-1:-1;7391:6:0;7384:13;;7337:72;7421:18;7442;;7421:39;;7489:4;-1:-1:-1;;;;;7476:17:0;:9;-1:-1:-1;;;;;7476:17:0;;7473:154;;;-1:-1:-1;7523:14:0;;7473:154;;;7568:4;-1:-1:-1;;;;;7558:14:0;:6;-1:-1:-1;;;;;7558:14:0;;7555:72;;;-1:-1:-1;7602:13:0;;7555:72;7639:17;7659:62;7700:20;3727:3;;7700:20;:::i;:::-;7659:36;7684:10;7659:20;7670:8;;7659:6;:10;;:20;;;;:::i;:::-;:24;;:36::i;:::-;:40;;:62::i;:::-;7639:82;-1:-1:-1;7737:13:0;;7734:172;;7811:4;7793:24;;;;:9;:24;;;;;;:39;;7822:9;7793:28;:39::i;:::-;7784:4;7766:24;;;;:9;:24;;;;;;;:66;;;;7852:42;;-1:-1:-1;;;;;7852:42:0;;;;;;;7884:9;1414:25:1;;1402:2;1387:18;;1268:177;7852:42:0;;;;;;;;7734:172;7925:21;:6;7936:9;7925:10;:21::i;:::-;7918:28;7231:723;-1:-1:-1;;;;;;7231:723:0:o;190:181::-;248:7;;280:5;284:1;280;:5;:::i;:::-;268:17;;309:1;304;:6;;296:46;;;;-1:-1:-1;;;296:46:0;;8763:2:1;296:46:0;;;8745:21:1;8802:2;8782:18;;;8775:30;8841:29;8821:18;;;8814:57;8888:18;;296:46:0;8561:351:1;717:250:0;775:7;799:6;795:47;;-1:-1:-1;829:1:0;822:8;;795:47;854:9;866:5;870:1;866;:5;:::i;:::-;854:17;-1:-1:-1;899:1:0;890:5;894:1;854:17;890:5;:::i;:::-;:10;882:56;;;;-1:-1:-1;;;882:56:0;;9119:2:1;882:56:0;;;9101:21:1;9158:2;9138:18;;;9131:30;9197:34;9177:18;;;9170:62;-1:-1:-1;;;9248:18:1;;;9241:31;9289:19;;882:56:0;8917:397:1;973:132:0;1031:7;1058:39;1062:1;1065;1058:39;;;;;;;;;;;;;;;;;:3;:39::i;377:136::-;435:7;462:43;466:1;469;462:43;;;;;;;;;;;;;;;;;:3;:43::i;1111:189::-;1197:7;1232:12;1225:5;1217:28;;;;-1:-1:-1;;;1217:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1256:9:0;1268:5;1272:1;1268;: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:196::-;684:20;;-1:-1:-1;;;;;733:54:1;;723:65;;713:93;;802:1;799;792:12;713:93;616:196;;;:::o;817:254::-;885:6;893;946:2;934:9;925:7;921:23;917:32;914:52;;;962:1;959;952:12;914:52;985:29;1004:9;985:29;:::i;:::-;975:39;1061:2;1046:18;;;;1033:32;;-1:-1:-1;;;817:254:1:o;1450:328::-;1527:6;1535;1543;1596:2;1584:9;1575:7;1571:23;1567:32;1564:52;;;1612:1;1609;1602:12;1564:52;1635:29;1654:9;1635:29;:::i;:::-;1625:39;;1683:38;1717:2;1706:9;1702:18;1683:38;:::i;:::-;1673:48;;1768:2;1757:9;1753:18;1740:32;1730:42;;1450:328;;;;;:::o;1783:186::-;1842:6;1895:2;1883:9;1874:7;1870:23;1866:32;1863:52;;;1911:1;1908;1901:12;1863:52;1934:29;1953:9;1934:29;:::i;2163:180::-;2222:6;2275:2;2263:9;2254:7;2250:23;2246:32;2243:52;;;2291:1;2288;2281:12;2243:52;-1:-1:-1;2314:23:1;;2163:180;-1:-1:-1;2163:180:1:o;2348:248::-;2416:6;2424;2477:2;2465:9;2456:7;2452:23;2448:32;2445:52;;;2493:1;2490;2483:12;2445:52;-1:-1:-1;;2516:23:1;;;2586:2;2571:18;;;2558:32;;-1:-1:-1;2348:248:1:o;2832:260::-;2900:6;2908;2961:2;2949:9;2940:7;2936:23;2932:32;2929:52;;;2977:1;2974;2967:12;2929:52;3000:29;3019:9;3000:29;:::i;:::-;2990:39;;3048:38;3082:2;3071:9;3067:18;3048:38;:::i;:::-;3038:48;;2832:260;;;;;:::o;3346:127::-;3407:10;3402:3;3398:20;3395:1;3388:31;3438:4;3435:1;3428:15;3462:4;3459:1;3452:15;3478:422;3567:1;3610:5;3567:1;3624:270;3645:7;3635:8;3632:21;3624:270;;;3704:4;3700:1;3696:6;3692:17;3686:4;3683:27;3680:53;;;3713:18;;:::i;:::-;3763:7;3753:8;3749:22;3746:55;;;3783:16;;;;3746:55;3862:22;;;;3822:15;;;;3624:270;;;3628:3;3478:422;;;;;:::o;3905:806::-;3954:5;3984:8;3974:80;;-1:-1:-1;4025:1:1;4039:5;;3974:80;4073:4;4063:76;;-1:-1:-1;4110:1:1;4124:5;;4063:76;4155:4;4173:1;4168:59;;;;4241:1;4236:130;;;;4148:218;;4168:59;4198:1;4189:10;;4212:5;;;4236:130;4273:3;4263:8;4260:17;4257:43;;;4280:18;;:::i;:::-;-1:-1:-1;;4336:1:1;4322:16;;4351:5;;4148:218;;4450:2;4440:8;4437:16;4431:3;4425:4;4422:13;4418:36;4412:2;4402:8;4399:16;4394:2;4388:4;4385:12;4381:35;4378:77;4375:159;;;-1:-1:-1;4487:19:1;;;4519:5;;4375:159;4566:34;4591:8;4585:4;4566:34;:::i;:::-;4636:6;4632:1;4628:6;4624:19;4615:7;4612:32;4609:58;;;4647:18;;:::i;:::-;4685:20;;3905:806;-1:-1:-1;;;3905:806:1:o;4716:140::-;4774:5;4803:47;4844:4;4834:8;4830:19;4824:4;4803:47;:::i;4861:168::-;4901:7;4967:1;4963;4959:6;4955:14;4952:1;4949:21;4944:1;4937:9;4930:17;4926:45;4923:71;;;4974:18;;:::i;:::-;-1:-1:-1;5014:9:1;;4861:168::o;5034:125::-;5074:4;5102:1;5099;5096:8;5093:34;;;5107:18;;:::i;:::-;-1:-1:-1;5144:9:1;;5034:125::o;5855:217::-;5895:1;5921;5911:132;;5965:10;5960:3;5956:20;5953:1;5946:31;6000:4;5997:1;5990:15;6028:4;6025:1;6018:15;5911:132;-1:-1:-1;6057:9:1;;5855:217::o;6780:128::-;6820:3;6851:1;6847:6;6844:1;6841:13;6838:39;;;6857:18;;:::i;:::-;-1:-1:-1;6893:9:1;;6780:128::o;7398:127::-;7459:10;7454:3;7450:20;7447:1;7440:31;7490:4;7487:1;7480:15;7514:4;7511:1;7504:15;7530:1026;7792:4;7840:3;7829:9;7825:19;7871:6;7860:9;7853:25;7897:2;7935:6;7930:2;7919:9;7915:18;7908:34;7978:3;7973:2;7962:9;7958:18;7951:31;8002:6;8037;8031:13;8068:6;8060;8053:22;8106:3;8095:9;8091:19;8084:26;;8145:2;8137:6;8133:15;8119:29;;8166:1;8176:218;8190:6;8187:1;8184:13;8176:218;;;8255:13;;-1:-1:-1;;;;;8251:62:1;8239:75;;8369:15;;;;8334:12;;;;8212:1;8205:9;8176:218;;;-1:-1:-1;;;;;;;8450:55:1;;;;8445:2;8430:18;;8423:83;-1:-1:-1;;;8537:3:1;8522:19;8515:35;8411:3;7530:1026;-1:-1:-1;;;7530:1026:1:o

Swarm Source

ipfs://987352e8b71ccf5e3886b4e8ed742a6e073e4ea8bf2c784b99025717846f0e6b
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.