ETH Price: $2,291.71 (-2.22%)

Token

SCAMV2 (SCAM)
 

Overview

Max Total Supply

100,000,000 SCAM

Holders

172

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
xfrogx.eth
Balance
80,000 SCAM

Value
$0.00
0x06975e30419ed51a48548bdf23ce2dac01d60560
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:
SCAM

Compiler Version
v0.8.7+commit.e28d00a7

Optimization Enabled:
Yes with 500 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: UNLICENSED


pragma solidity 0.8.7;

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 totalSupply() external view returns (uint256);
    function decimals() external view returns (uint8);
    function symbol() external view returns (string memory);
    function name() external view returns (string memory);
    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 Context {
    function _msgSender() internal view virtual returns (address payable) {
        return payable(address(msg.sender));
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this; // silence state mutability warning without generating bytecode - see https://github.com/ethereum/solidity/issues/2691
        return msg.data;
    }
}

contract Ownable is Context {
    address private _owner;
    address private _previousOwner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () {
        address msgSender = _msgSender();
        _owner = msgSender;
        emit OwnershipTransferred(address(0), msgSender);
    }

    function owner() public view returns (address) {
        return _owner;
    }

    modifier onlyOwner() {
        require(_owner == _msgSender(), "Ownable: caller is not the owner");
        _;
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _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 addLiquidity(
        address tokenA,
        address tokenB,
        uint amountADesired,
        uint amountBDesired,
        uint amountAMin,
        uint amountBMin,
        address to,
        uint deadline
    ) external returns (uint amountA, uint amountB, uint liquidity);

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

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

    function swapExactETHForTokensSupportingFeeOnTransferTokens(
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external payable;

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

interface InterfaceLP {
    function sync() external;
}

contract SCAM is ERC20, Ownable {
    using SafeMath for uint256;

    uint256 public launchBlock;

    address private WETH;
    address private DEAD = 0x000000000000000000000000000000000000dEaD;
    address private ZERO = 0x0000000000000000000000000000000000000000;

    string constant private _name = "SCAMV2";
    string constant private _symbol = "SCAM";
    uint8 constant private _decimals = 18;

    uint256 private _totalSupply = 100000000* 10**_decimals;

    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;

    address[] public _markerPairs;
    mapping (address => bool) public automatedMarketMakerPairs;
    mapping (address => bool) public isFeeExempt;

    //Fees
    uint256 public constant totalBuyFee = 1;
    uint256 public constant totalSellFee = 1;
    uint256 private constant feeDenominator  = 100;

    address private marketingFeeReceiver = 0x838fb01FE41a245150DBEA66c3A7A493f35abE8E;

    IDEXRouter public router;
    address public pair;

    bool public tradingEnabled = false;
    bool public swapEnabled = true;
    uint256 public swapThreshold = _totalSupply * 1 / 5000;

    bool private inSwap;
    modifier swapping() { inSwap = true; _; inSwap = false; }

    constructor () {
        router = IDEXRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        WETH = router.WETH();
        pair = IDEXFactory(router.factory()).createPair(WETH, address(this));

        setAutomatedMarketMakerPair(pair, true);

        _allowances[address(this)][address(router)] = type(uint256).max;

        isFeeExempt[msg.sender] = true;
               
        isFeeExempt[address(this)] = true; 

        _balances[msg.sender] = _totalSupply;
        emit Transfer(address(0), msg.sender, _totalSupply);
    }

    receive() external payable { }

    function totalSupply() external view override returns (uint256) { return _totalSupply; }
    function decimals() external pure override returns (uint8) { return _decimals; }
    function symbol() external pure override returns (string memory) { return _symbol; }
    function name() external pure override returns (string memory) { return _name; }
    function getOwner() external view override returns (address) { return owner(); }
    function balanceOf(address account) public view override returns (uint256) { return _balances[account]; }
    function allowance(address holder, address spender) external view override returns (uint256) { return _allowances[holder][spender]; }

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

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

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

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

        return _transferFrom(sender, recipient, amount);
    }

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

        if(!isFeeExempt[sender] && !isFeeExempt[recipient]){
            require(tradingEnabled,"Trading not open yet");
        }

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

        uint256 amountReceived = amount; 

        if(automatedMarketMakerPairs[sender]) { //buy
            if(!isFeeExempt[recipient]) {
                amountReceived = takeBuyFee(sender, amount);
            }

        } else if(automatedMarketMakerPairs[recipient]) { //sell
            if(!isFeeExempt[sender]) {
                amountReceived = takeSellFee(sender, amount);

            }
        } 
        
        _balances[sender] = _balances[sender].sub(amount);
        _balances[recipient] = _balances[recipient].add(amountReceived);
        

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

    // Fees
    function takeBuyFee(address sender, uint256 amount) internal returns (uint256){
        uint256 feeAmount = amount.mul(totalBuyFee).div(feeDenominator);

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

        return amount.sub(feeAmount);
    }

    function takeSellFee(address sender, uint256 amount) internal returns (uint256){
        uint256 feeAmount = amount.mul(totalSellFee).div(feeDenominator);

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

        return amount.sub(feeAmount);
            
    }

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

    // switch Trading
    function enableTrading() external onlyOwner {
        tradingEnabled = true;
        launchBlock = block.number;
    }

    function swapBack() internal swapping {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = WETH;

        router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            _balances[address(this)],
            0,
            path,
            marketingFeeReceiver,
            block.timestamp
        );
    }

    // Admin Functions
    function setAutomatedMarketMakerPair(address _pair, bool _value) internal {
            require(automatedMarketMakerPairs[_pair] != _value, "Value already set");

            automatedMarketMakerPairs[_pair] = _value;

            if(_value){
                _markerPairs.push(_pair);
            }else{
                require(_markerPairs.length > 1, "Required 1 pair");
                for (uint256 i = 0; i < _markerPairs.length; i++) {
                    if (_markerPairs[i] == _pair) {
                        _markerPairs[i] = _markerPairs[_markerPairs.length - 1];
                        _markerPairs.pop();
                        break;
                    }
                }
            }
        }

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

    function clearStuckBalance() external onlyOwner {
        payable(msg.sender).transfer(address(this).balance);
    }

    function rescueERC20(address tokenAddress, uint256 amount) external onlyOwner returns (bool) {
        return ERC20(tokenAddress).transfer(msg.sender, amount);
    }

    function updateMW(address _address) external onlyOwner {
        require(_address != address(0), "zero address validation");
        marketingFeeReceiver = _address;
    }

    function setIsFeeExempt(address _address) external onlyOwner {
        isFeeExempt[_address] = true;
    }

    function getCirculatingSupply() public view returns (uint256) {
        return _totalSupply.sub(balanceOf(DEAD)).sub(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":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"_markerPairs","outputs":[{"internalType":"address","name":"","type":"address"}],"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":"automatedMarketMakerPairs","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"clearStuckBalance","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","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":[],"name":"launchBlock","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"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":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueERC20","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IDEXRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"setIsFeeExempt","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"_enabled","type":"bool"},{"internalType":"uint256","name":"_amount","type":"uint256"}],"name":"setSwapBackSettings","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalBuyFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSellFee","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"updateMW","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052600480546001600160a01b031990811661dead17909155600580549091169055620000326012600a6200065a565b62000042906305f5e1006200071b565b6006819055600c80546001600160a01b03191673838fb01fe41a245150dbea66c3a7a493f35abe8e179055600e805461ffff60a01b1916600160a81b17905561138890620000929060016200071b565b6200009e9190620005ee565b600f55348015620000ae57600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600d80546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d908117909155604080516315ab88c960e31b8152905163ad5c464891600480820192602092909190829003018186803b1580156200015057600080fd5b505afa15801562000165573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200018b9190620005bc565b600380546001600160a01b0319166001600160a01b03928316179055600d546040805163c45a015560e01b81529051919092169163c45a0155916004808301926020929190829003018186803b158015620001e557600080fd5b505afa158015620001fa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002209190620005bc565b6003546040516364e329cb60e11b81526001600160a01b03918216600482015230602482015291169063c9c6539690604401602060405180830381600087803b1580156200026d57600080fd5b505af115801562000282573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002a89190620005bc565b600e80546001600160a01b0319166001600160a01b03929092169182179055620002d49060016200036d565b306000818152600860209081526040808320600d546001600160a01b031684528252808320600019905533808452600b83528184208054600160ff1991821681179092559585528285208054909616179094556006548484526007835281842081905590519081527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620007b7565b6001600160a01b0382166000908152600a602052604090205460ff1615158115151415620003d65760405162461bcd60e51b815260206004820152601160248201527015985b1d5948185b1c9958591e481cd95d607a1b60448201526064015b60405180910390fd5b6001600160a01b0382166000908152600a60205260409020805460ff191682158015919091179091556200045557600980546001810182556000919091527f6e1540171b6c0c960b71a7020d9f60077f6af931a8bbf590da0223dacf75c7af0180546001600160a01b0384166001600160a01b03199091161790555050565b6009546001106200049b5760405162461bcd60e51b815260206004820152600f60248201526e2932b8bab4b932b21018903830b4b960891b6044820152606401620003cd565b60005b600954811015620005b757826001600160a01b031660098281548110620004c957620004c9620007a1565b6000918252602090912001546001600160a01b03161415620005a25760098054620004f7906001906200073d565b815481106200050a576200050a620007a1565b600091825260209091200154600980546001600160a01b039092169183908110620005395762000539620007a1565b9060005260206000200160006101000a8154816001600160a01b0302191690836001600160a01b0316021790555060098054806200057b576200057b6200078b565b600082815260209020810160001990810180546001600160a01b0319169055019055505050565b80620005ae8162000757565b9150506200049e565b505050565b600060208284031215620005cf57600080fd5b81516001600160a01b0381168114620005e757600080fd5b9392505050565b6000826200060c57634e487b7160e01b600052601260045260246000fd5b500490565b600181815b808511156200065257816000190482111562000636576200063662000775565b808516156200064457918102915b93841c939080029062000616565b509250929050565b6000620005e760ff841683600082620006765750600162000715565b81620006855750600062000715565b81600181146200069e5760028114620006a957620006c9565b600191505062000715565b60ff841115620006bd57620006bd62000775565b50506001821b62000715565b5060208310610133831016604e8410600b8410161715620006ee575081810a62000715565b620006fa838362000611565b806000190482111562000711576200071162000775565b0290505b92915050565b600081600019048311821515161562000738576200073862000775565b500290565b60008282101562000752576200075262000775565b500390565b60006000198214156200076e576200076e62000775565b5060010190565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b61159580620007c76000396000f3fe6080604052600436106101dc5760003560e01c806387406b3311610102578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610560578063df20fd49146105a6578063e1d5584c146105c6578063f887ea40146105e657600080fd5b8063a9059cbb146104da578063b62496f5146104fa578063c99210f01461052a578063d00efb2f1461054a57600080fd5b80638da5cb5b116100d15780638da5cb5b1461046f57806395d89b411461048d5780639d9241ec14610367578063a8aa1b31146104ba57600080fd5b806387406b33146103e8578063893d20e8146104085780638a8c523c1461043a5780638cd4426d1461044f57600080fd5b8063364333f41161017a57806359b107b91161014957806359b107b9146103675780636ddd17131461037c57806370a082311461039d578063715018a6146103d357600080fd5b8063364333f4146102df5780633f4218e0146102f65780634ada218b14610326578063571ac8b01461034757600080fd5b806318160ddd116101b657806318160ddd1461027957806323b872dd1461028e5780632b112e49146102ae578063313ce567146102c357600080fd5b80630445b667146101e857806306fdde0314610211578063095ea7b31461024957600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b506101fe600f5481565b6040519081526020015b60405180910390f35b34801561021d57600080fd5b5060408051808201909152600681526529a1a0a6ab1960d11b60208201525b60405161020891906113cf565b34801561025557600080fd5b50610269610264366004611351565b610606565b6040519015158152602001610208565b34801561028557600080fd5b506006546101fe565b34801561029a57600080fd5b506102696102a9366004611315565b610673565b3480156102ba57600080fd5b506101fe61073c565b3480156102cf57600080fd5b5060405160128152602001610208565b3480156102eb57600080fd5b506102f461078e565b005b34801561030257600080fd5b506102696103113660046112c7565b600b6020526000908152604090205460ff1681565b34801561033257600080fd5b50600e5461026990600160a01b900460ff1681565b34801561035357600080fd5b506102696103623660046112c7565b61080a565b34801561037357600080fd5b506101fe600181565b34801561038857600080fd5b50600e5461026990600160a81b900460ff1681565b3480156103a957600080fd5b506101fe6103b83660046112c7565b6001600160a01b031660009081526007602052604090205490565b3480156103df57600080fd5b506102f4610818565b3480156103f457600080fd5b506102f46104033660046112c7565b6108b7565b34801561041457600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610208565b34801561044657600080fd5b506102f4610923565b34801561045b57600080fd5b5061026961046a366004611351565b610984565b34801561047b57600080fd5b506000546001600160a01b0316610422565b34801561049957600080fd5b506040805180820190915260048152635343414d60e01b602082015261023c565b3480156104c657600080fd5b50600e54610422906001600160a01b031681565b3480156104e657600080fd5b506102696104f5366004611351565b610a4d565b34801561050657600080fd5b506102696105153660046112c7565b600a6020526000908152604090205460ff1681565b34801561053657600080fd5b506102f46105453660046112c7565b610a5a565b34801561055657600080fd5b506101fe60025481565b34801561056c57600080fd5b506101fe61057b3660046112e2565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156105b257600080fd5b506102f46105c1366004611398565b610b27565b3480156105d257600080fd5b506104226105e13660046113b6565b610b91565b3480156105f257600080fd5b50600d54610422906001600160a01b031681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106619086815260200190565b60405180910390a35060015b92915050565b6001600160a01b03831660009081526008602090815260408083203384529091528120546000191461072757604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610702918490610bbb565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610732848484610bf5565b90505b9392505050565b6005546001600160a01b0316600090815260076020526040812054610789906004546001600160a01b03166000908152600760205260409020546107839060065490610e26565b90610e26565b905090565b6000546001600160a01b031633146107db5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064015b60405180910390fd5b60405133904780156108fc02916000818181858888f19350505050158015610807573d6000803e3d6000fd5b50565b600061066d82600019610606565b6000546001600160a01b031633146108605760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b6000546001600160a01b031633146108ff5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b6001600160a01b03166000908152600b60205260409020805460ff19166001179055565b6000546001600160a01b0316331461096b5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b600e805460ff60a01b1916600160a01b17905543600255565b600080546001600160a01b031633146109cd5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb90604401602060405180830381600087803b158015610a1557600080fd5b505af1158015610a29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610735919061137b565b6000610735338484610bf5565b6000546001600160a01b03163314610aa25760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b6001600160a01b038116610af85760405162461bcd60e51b815260206004820152601760248201527f7a65726f20616464726573732076616c69646174696f6e00000000000000000060448201526064016107d2565b600c805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610b6f5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b600e8054921515600160a81b0260ff60a81b1990931692909217909155600f55565b60098181548110610ba157600080fd5b6000918252602090912001546001600160a01b0316905081565b60008184841115610bdf5760405162461bcd60e51b81526004016107d291906113cf565b506000610bec84866114ee565b95945050505050565b60105460009060ff1615610c1557610c0e848484610e68565b9050610735565b6001600160a01b0384166000908152600b602052604090205460ff16158015610c5757506001600160a01b0383166000908152600b602052604090205460ff16155b15610cb557600e54600160a01b900460ff16610cb55760405162461bcd60e51b815260206004820152601460248201527f54726164696e67206e6f74206f70656e2079657400000000000000000000000060448201526064016107d2565b610cbd610f57565b15610cca57610cca610faf565b6001600160a01b0384166000908152600a6020526040902054829060ff1615610d1f576001600160a01b0384166000908152600b602052604090205460ff16610d1a57610d1785846110c1565b90505b610d6d565b6001600160a01b0384166000908152600a602052604090205460ff1615610d6d576001600160a01b0385166000908152600b602052604090205460ff16610d6d57610d6a85846110c1565b90505b6001600160a01b038516600090815260076020526040902054610d909084610e26565b6001600160a01b038087166000908152600760205260408082209390935590861681522054610dbf9082611162565b6001600160a01b0380861660008181526007602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e139085815260200190565b60405180910390a3506001949350505050565b600061073583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610bbb565b604080518082018252601481527f496e73756666696369656e742042616c616e63650000000000000000000000006020808301919091526001600160a01b0386166000908152600790915291822054610ec2918490610bbb565b6001600160a01b038086166000908152600760205260408082209390935590851681522054610ef19083611162565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f459086815260200190565b60405180910390a35060019392505050565b336000908152600a602052604081205460ff16158015610f7a575060105460ff16155b8015610f8f5750600e54600160a81b900460ff165b8015610789575050600f5430600090815260076020526040902054101590565b6010805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ff157610ff161151b565b6001600160a01b0392831660209182029290920101526003548251911690829060019081106110225761102261151b565b6001600160a01b03928316602091820292909201810191909152600d543060009081526007909252604080832054600c54915163791ac94760e01b81529285169463791ac947946110829492939092889291909116904290600401611424565b600060405180830381600087803b15801561109c57600080fd5b505af11580156110b0573d6000803e3d6000fd5b50506010805460ff19169055505050565b6000806110da60646110d48560016111c1565b90611240565b306000908152600760205260409020549091506110f79082611162565b30600081815260076020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111489085815260200190565b60405180910390a361115a8382610e26565b949350505050565b60008061116f8385611495565b9050838110156107355760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107d2565b6000826111d05750600061066d565b60006111dc83856114cf565b9050826111e985836114ad565b146107355760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107d2565b600061073583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361129e5760405162461bcd60e51b81526004016107d291906113cf565b506000610bec84866114ad565b80356001600160a01b03811681146112c257600080fd5b919050565b6000602082840312156112d957600080fd5b610735826112ab565b600080604083850312156112f557600080fd5b6112fe836112ab565b915061130c602084016112ab565b90509250929050565b60008060006060848603121561132a57600080fd5b611333846112ab565b9250611341602085016112ab565b9150604084013590509250925092565b6000806040838503121561136457600080fd5b61136d836112ab565b946020939093013593505050565b60006020828403121561138d57600080fd5b815161073581611531565b600080604083850312156113ab57600080fd5b823561136d81611531565b6000602082840312156113c857600080fd5b5035919050565b600060208083528351808285015260005b818110156113fc578581018301518582016040015282016113e0565b8181111561140e576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156114745784516001600160a01b03168352938301939183019160010161144f565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156114a8576114a8611505565b500190565b6000826114ca57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156114e9576114e9611505565b500290565b60008282101561150057611500611505565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b801515811461080757600080fdfe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a264697066735822122084f4eb71a9dd99e26bc37913c92ae9e0937e201323771fb94cf9b43ee3542f7d64736f6c63430008070033

Deployed Bytecode

0x6080604052600436106101dc5760003560e01c806387406b3311610102578063a9059cbb11610095578063dd62ed3e11610064578063dd62ed3e14610560578063df20fd49146105a6578063e1d5584c146105c6578063f887ea40146105e657600080fd5b8063a9059cbb146104da578063b62496f5146104fa578063c99210f01461052a578063d00efb2f1461054a57600080fd5b80638da5cb5b116100d15780638da5cb5b1461046f57806395d89b411461048d5780639d9241ec14610367578063a8aa1b31146104ba57600080fd5b806387406b33146103e8578063893d20e8146104085780638a8c523c1461043a5780638cd4426d1461044f57600080fd5b8063364333f41161017a57806359b107b91161014957806359b107b9146103675780636ddd17131461037c57806370a082311461039d578063715018a6146103d357600080fd5b8063364333f4146102df5780633f4218e0146102f65780634ada218b14610326578063571ac8b01461034757600080fd5b806318160ddd116101b657806318160ddd1461027957806323b872dd1461028e5780632b112e49146102ae578063313ce567146102c357600080fd5b80630445b667146101e857806306fdde0314610211578063095ea7b31461024957600080fd5b366101e357005b600080fd5b3480156101f457600080fd5b506101fe600f5481565b6040519081526020015b60405180910390f35b34801561021d57600080fd5b5060408051808201909152600681526529a1a0a6ab1960d11b60208201525b60405161020891906113cf565b34801561025557600080fd5b50610269610264366004611351565b610606565b6040519015158152602001610208565b34801561028557600080fd5b506006546101fe565b34801561029a57600080fd5b506102696102a9366004611315565b610673565b3480156102ba57600080fd5b506101fe61073c565b3480156102cf57600080fd5b5060405160128152602001610208565b3480156102eb57600080fd5b506102f461078e565b005b34801561030257600080fd5b506102696103113660046112c7565b600b6020526000908152604090205460ff1681565b34801561033257600080fd5b50600e5461026990600160a01b900460ff1681565b34801561035357600080fd5b506102696103623660046112c7565b61080a565b34801561037357600080fd5b506101fe600181565b34801561038857600080fd5b50600e5461026990600160a81b900460ff1681565b3480156103a957600080fd5b506101fe6103b83660046112c7565b6001600160a01b031660009081526007602052604090205490565b3480156103df57600080fd5b506102f4610818565b3480156103f457600080fd5b506102f46104033660046112c7565b6108b7565b34801561041457600080fd5b506000546001600160a01b03165b6040516001600160a01b039091168152602001610208565b34801561044657600080fd5b506102f4610923565b34801561045b57600080fd5b5061026961046a366004611351565b610984565b34801561047b57600080fd5b506000546001600160a01b0316610422565b34801561049957600080fd5b506040805180820190915260048152635343414d60e01b602082015261023c565b3480156104c657600080fd5b50600e54610422906001600160a01b031681565b3480156104e657600080fd5b506102696104f5366004611351565b610a4d565b34801561050657600080fd5b506102696105153660046112c7565b600a6020526000908152604090205460ff1681565b34801561053657600080fd5b506102f46105453660046112c7565b610a5a565b34801561055657600080fd5b506101fe60025481565b34801561056c57600080fd5b506101fe61057b3660046112e2565b6001600160a01b03918216600090815260086020908152604080832093909416825291909152205490565b3480156105b257600080fd5b506102f46105c1366004611398565b610b27565b3480156105d257600080fd5b506104226105e13660046113b6565b610b91565b3480156105f257600080fd5b50600d54610422906001600160a01b031681565b3360008181526008602090815260408083206001600160a01b038716808552925280832085905551919290917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925906106619086815260200190565b60405180910390a35060015b92915050565b6001600160a01b03831660009081526008602090815260408083203384529091528120546000191461072757604080518082018252601681527f496e73756666696369656e7420416c6c6f77616e6365000000000000000000006020808301919091526001600160a01b0387166000908152600882528381203382529091529190912054610702918490610bbb565b6001600160a01b03851660009081526008602090815260408083203384529091529020555b610732848484610bf5565b90505b9392505050565b6005546001600160a01b0316600090815260076020526040812054610789906004546001600160a01b03166000908152600760205260409020546107839060065490610e26565b90610e26565b905090565b6000546001600160a01b031633146107db5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064015b60405180910390fd5b60405133904780156108fc02916000818181858888f19350505050158015610807573d6000803e3d6000fd5b50565b600061066d82600019610606565b6000546001600160a01b031633146108605760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a36000805473ffffffffffffffffffffffffffffffffffffffff19169055565b6000546001600160a01b031633146108ff5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b6001600160a01b03166000908152600b60205260409020805460ff19166001179055565b6000546001600160a01b0316331461096b5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b600e805460ff60a01b1916600160a01b17905543600255565b600080546001600160a01b031633146109cd5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b60405163a9059cbb60e01b8152336004820152602481018390526001600160a01b0384169063a9059cbb90604401602060405180830381600087803b158015610a1557600080fd5b505af1158015610a29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610735919061137b565b6000610735338484610bf5565b6000546001600160a01b03163314610aa25760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b6001600160a01b038116610af85760405162461bcd60e51b815260206004820152601760248201527f7a65726f20616464726573732076616c69646174696f6e00000000000000000060448201526064016107d2565b600c805473ffffffffffffffffffffffffffffffffffffffff19166001600160a01b0392909216919091179055565b6000546001600160a01b03163314610b6f5760405162461bcd60e51b8152602060048201819052602482015260008051602061154083398151915260448201526064016107d2565b600e8054921515600160a81b0260ff60a81b1990931692909217909155600f55565b60098181548110610ba157600080fd5b6000918252602090912001546001600160a01b0316905081565b60008184841115610bdf5760405162461bcd60e51b81526004016107d291906113cf565b506000610bec84866114ee565b95945050505050565b60105460009060ff1615610c1557610c0e848484610e68565b9050610735565b6001600160a01b0384166000908152600b602052604090205460ff16158015610c5757506001600160a01b0383166000908152600b602052604090205460ff16155b15610cb557600e54600160a01b900460ff16610cb55760405162461bcd60e51b815260206004820152601460248201527f54726164696e67206e6f74206f70656e2079657400000000000000000000000060448201526064016107d2565b610cbd610f57565b15610cca57610cca610faf565b6001600160a01b0384166000908152600a6020526040902054829060ff1615610d1f576001600160a01b0384166000908152600b602052604090205460ff16610d1a57610d1785846110c1565b90505b610d6d565b6001600160a01b0384166000908152600a602052604090205460ff1615610d6d576001600160a01b0385166000908152600b602052604090205460ff16610d6d57610d6a85846110c1565b90505b6001600160a01b038516600090815260076020526040902054610d909084610e26565b6001600160a01b038087166000908152600760205260408082209390935590861681522054610dbf9082611162565b6001600160a01b0380861660008181526007602052604090819020939093559151908716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610e139085815260200190565b60405180910390a3506001949350505050565b600061073583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610bbb565b604080518082018252601481527f496e73756666696369656e742042616c616e63650000000000000000000000006020808301919091526001600160a01b0386166000908152600790915291822054610ec2918490610bbb565b6001600160a01b038086166000908152600760205260408082209390935590851681522054610ef19083611162565b6001600160a01b0380851660008181526007602052604090819020939093559151908616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610f459086815260200190565b60405180910390a35060019392505050565b336000908152600a602052604081205460ff16158015610f7a575060105460ff16155b8015610f8f5750600e54600160a81b900460ff165b8015610789575050600f5430600090815260076020526040902054101590565b6010805460ff191660011790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610ff157610ff161151b565b6001600160a01b0392831660209182029290920101526003548251911690829060019081106110225761102261151b565b6001600160a01b03928316602091820292909201810191909152600d543060009081526007909252604080832054600c54915163791ac94760e01b81529285169463791ac947946110829492939092889291909116904290600401611424565b600060405180830381600087803b15801561109c57600080fd5b505af11580156110b0573d6000803e3d6000fd5b50506010805460ff19169055505050565b6000806110da60646110d48560016111c1565b90611240565b306000908152600760205260409020549091506110f79082611162565b30600081815260076020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef906111489085815260200190565b60405180910390a361115a8382610e26565b949350505050565b60008061116f8385611495565b9050838110156107355760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016107d2565b6000826111d05750600061066d565b60006111dc83856114cf565b9050826111e985836114ad565b146107355760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016107d2565b600061073583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f0000000000008152506000818361129e5760405162461bcd60e51b81526004016107d291906113cf565b506000610bec84866114ad565b80356001600160a01b03811681146112c257600080fd5b919050565b6000602082840312156112d957600080fd5b610735826112ab565b600080604083850312156112f557600080fd5b6112fe836112ab565b915061130c602084016112ab565b90509250929050565b60008060006060848603121561132a57600080fd5b611333846112ab565b9250611341602085016112ab565b9150604084013590509250925092565b6000806040838503121561136457600080fd5b61136d836112ab565b946020939093013593505050565b60006020828403121561138d57600080fd5b815161073581611531565b600080604083850312156113ab57600080fd5b823561136d81611531565b6000602082840312156113c857600080fd5b5035919050565b600060208083528351808285015260005b818110156113fc578581018301518582016040015282016113e0565b8181111561140e576000604083870101525b50601f01601f1916929092016040019392505050565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156114745784516001600160a01b03168352938301939183019160010161144f565b50506001600160a01b03969096166060850152505050608001529392505050565b600082198211156114a8576114a8611505565b500190565b6000826114ca57634e487b7160e01b600052601260045260246000fd5b500490565b60008160001904831182151516156114e9576114e9611505565b500290565b60008282101561150057611500611505565b500390565b634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b801515811461080757600080fdfe4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572a264697066735822122084f4eb71a9dd99e26bc37913c92ae9e0937e201323771fb94cf9b43ee3542f7d64736f6c63430008070033

Deployed Bytecode Sourcemap

4795:8029:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5953:54;;;;;;;;;;;;;;;;;;;5554:25:1;;;5542:2;5527:18;5953:54:0;;;;;;;;6974:80;;;;;;;;;;-1:-1:-1;7046:5:0;;;;;;;;;;;;-1:-1:-1;;;7046:5:0;;;;6974:80;;;;;;;:::i;7398:216::-;;;;;;;;;;-1:-1:-1;7398:216:0;;;;;:::i;:::-;;:::i;:::-;;;2710:14:1;;2703:22;2685:41;;2673:2;2658:18;7398:216:0;2545:187:1;6704:88:0;;;;;;;;;;-1:-1:-1;6777:12:0;;6704:88;;7916:370;;;;;;;;;;-1:-1:-1;7916:370:0;;;;;:::i;:::-;;:::i;12679:142::-;;;;;;;;;;;;;:::i;6798:80::-;;;;;;;;;;-1:-1:-1;6798:80:0;;5206:2;6763:36:1;;6751:2;6736:18;6798:80:0;6621:184:1;12080:118:0;;;;;;;;;;;;;:::i;:::-;;5513:44;;;;;;;;;;-1:-1:-1;5513:44:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;5875:34;;;;;;;;;;-1:-1:-1;5875:34:0;;;;-1:-1:-1;;;5875:34:0;;;;;;7622:122;;;;;;;;;;-1:-1:-1;7622:122:0;;;;;:::i;:::-;;:::i;5578:39::-;;;;;;;;;;;;5616:1;5578:39;;5916:30;;;;;;;;;;-1:-1:-1;5916:30:0;;;;-1:-1:-1;;;5916:30:0;;;;;;7146:105;;;;;;;;;;-1:-1:-1;7146:105:0;;;;;:::i;:::-;-1:-1:-1;;;;;7230:18:0;7212:7;7230:18;;;:9;:18;;;;;;;7146:105;3098:148;;;;;;;;;;;;;:::i;12563:108::-;;;;;;;;;;-1:-1:-1;12563:108:0;;;;;:::i;:::-;;:::i;7060:80::-;;;;;;;;;;-1:-1:-1;7112:7:0;2949:6;-1:-1:-1;;;;;2949:6:0;7060:80;;;-1:-1:-1;;;;;2176:55:1;;;2158:74;;2146:2;2131:18;7060:80:0;2012:226:1;10643:121:0;;;;;;;;;;;;;:::i;12206:167::-;;;;;;;;;;-1:-1:-1;12206:167:0;;;;;:::i;:::-;;:::i;2884:79::-;;;;;;;;;;-1:-1:-1;2922:7:0;2949:6;-1:-1:-1;;;;;2949:6:0;2884:79;;6884:84;;;;;;;;;;-1:-1:-1;6958:7:0;;;;;;;;;;;;-1:-1:-1;;;6958:7:0;;;;6884:84;;5847:19;;;;;;;;;;-1:-1:-1;5847:19:0;;;;-1:-1:-1;;;;;5847:19:0;;;7752:156;;;;;;;;;;-1:-1:-1;7752:156:0;;;;;:::i;:::-;;:::i;5448:58::-;;;;;;;;;;-1:-1:-1;5448:58:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;12381:174;;;;;;;;;;-1:-1:-1;12381:174:0;;;;;:::i;:::-;;:::i;4869:26::-;;;;;;;;;;;;;;;;7257:133;;;;;;;;;;-1:-1:-1;7257:133:0;;;;;:::i;:::-;-1:-1:-1;;;;;7359:19:0;;;7341:7;7359:19;;;:11;:19;;;;;;;;:28;;;;;;;;;;;;;7257:133;11917:155;;;;;;;;;;-1:-1:-1;11917:155:0;;;;;:::i;:::-;;:::i;5412:29::-;;;;;;;;;;-1:-1:-1;5412:29:0;;;;;:::i;:::-;;:::i;5816:24::-;;;;;;;;;;-1:-1:-1;5816:24:0;;;;-1:-1:-1;;;;;5816:24:0;;;7398:216;7502:10;7473:4;7490:23;;;:11;:23;;;;;;;;-1:-1:-1;;;;;7490:32:0;;;;;;;;;;:41;;;7547:37;7473:4;;7490:32;;7547:37;;;;7525:6;5554:25:1;;5542:2;5527:18;;5408:177;7547:37:0;;;;;;;;-1:-1:-1;7602:4:0;7398:216;;;;;:::o;7916:370::-;-1:-1:-1;;;;;8036:19:0;;8016:4;8036:19;;;:11;:19;;;;;;;;8056:10;8036:31;;;;;;;;-1:-1:-1;;8036:52:0;8033:186;;8138:69;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;8138:19:0;;-1:-1:-1;8138:19:0;;;:11;:19;;;;;8158:10;8138:31;;;;;;;;;;:69;;8174:6;;8138:35;:69::i;:::-;-1:-1:-1;;;;;8104:19:0;;;;;;:11;:19;;;;;;;;8124:10;8104:31;;;;;;;:103;8033:186;8238:40;8252:6;8260:9;8271:6;8238:13;:40::i;:::-;8231:47;;7916:370;;;;;;:::o;12679:142::-;12807:4;;-1:-1:-1;;;;;12807:4:0;12732:7;7230:18;;;:9;:18;;;;;;12759:54;;12786:4;;-1:-1:-1;;;;;12786:4:0;7212:7;7230:18;;;:9;:18;;;;;;12759:33;;:12;;;:16;:33::i;:::-;:37;;:54::i;:::-;12752:61;;12679:142;:::o;12080:118::-;3011:6;;-1:-1:-1;;;;;3011:6:0;2261:10;3011:22;3003:67;;;;-1:-1:-1;;;3003:67:0;;4897:2:1;3003:67:0;;;4879:21:1;;;4916:18;;;4909:30;-1:-1:-1;;;;;;;;;;;4955:18:1;;;4948:62;5027:18;;3003:67:0;;;;;;;;;12139:51:::1;::::0;12147:10:::1;::::0;12168:21:::1;12139:51:::0;::::1;;;::::0;::::1;::::0;;;12168:21;12147:10;12139:51;::::1;;;;;;;;;;;;;::::0;::::1;;;;;;12080:118::o:0;7622:122::-;7677:4;7701:35;7709:7;-1:-1:-1;;7701:7:0;:35::i;3098:148::-;3011:6;;-1:-1:-1;;;;;3011:6:0;2261:10;3011:22;3003:67;;;;-1:-1:-1;;;3003:67:0;;4897:2:1;3003:67:0;;;4879:21:1;;;4916:18;;;4909:30;-1:-1:-1;;;;;;;;;;;4955:18:1;;;4948:62;5027:18;;3003:67:0;4695:356:1;3003:67:0;3205:1:::1;3189:6:::0;;3168:40:::1;::::0;-1:-1:-1;;;;;3189:6:0;;::::1;::::0;3168:40:::1;::::0;3205:1;;3168:40:::1;3236:1;3219:19:::0;;-1:-1:-1;;3219:19:0::1;::::0;;3098:148::o;12563:108::-;3011:6;;-1:-1:-1;;;;;3011:6:0;2261:10;3011:22;3003:67;;;;-1:-1:-1;;;3003:67:0;;4897:2:1;3003:67:0;;;4879:21:1;;;4916:18;;;4909:30;-1:-1:-1;;;;;;;;;;;4955:18:1;;;4948:62;5027:18;;3003:67:0;4695:356:1;3003:67:0;-1:-1:-1;;;;;12635:21:0::1;;::::0;;;:11:::1;:21;::::0;;;;:28;;-1:-1:-1;;12635:28:0::1;12659:4;12635:28;::::0;;12563:108::o;10643:121::-;3011:6;;-1:-1:-1;;;;;3011:6:0;2261:10;3011:22;3003:67;;;;-1:-1:-1;;;3003:67:0;;4897:2:1;3003:67:0;;;4879:21:1;;;4916:18;;;4909:30;-1:-1:-1;;;;;;;;;;;4955:18:1;;;4948:62;5027:18;;3003:67:0;4695:356:1;3003:67:0;10698:14:::1;:21:::0;;-1:-1:-1;;;;10698:21:0::1;-1:-1:-1::0;;;10698:21:0::1;::::0;;10744:12:::1;10730:11;:26:::0;10643:121::o;12206:167::-;12293:4;3011:6;;-1:-1:-1;;;;;3011:6:0;2261:10;3011:22;3003:67;;;;-1:-1:-1;;;3003:67:0;;4897:2:1;3003:67:0;;;4879:21:1;;;4916:18;;;4909:30;-1:-1:-1;;;;;;;;;;;4955:18:1;;;4948:62;5027:18;;3003:67:0;4695:356:1;3003:67:0;12317:48:::1;::::0;-1:-1:-1;;;12317:48:0;;12346:10:::1;12317:48;::::0;::::1;2417:74:1::0;2507:18;;;2500:34;;;-1:-1:-1;;;;;12317:28:0;::::1;::::0;::::1;::::0;2390:18:1;;12317:48:0::1;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;7752:156::-:0;7832:4;7856:44;7870:10;7882:9;7893:6;7856:13;:44::i;12381:174::-;3011:6;;-1:-1:-1;;;;;3011:6:0;2261:10;3011:22;3003:67;;;;-1:-1:-1;;;3003:67:0;;4897:2:1;3003:67:0;;;4879:21:1;;;4916:18;;;4909:30;-1:-1:-1;;;;;;;;;;;4955:18:1;;;4948:62;5027:18;;3003:67:0;4695:356:1;3003:67:0;-1:-1:-1;;;;;12455:22:0;::::1;12447:58;;;::::0;-1:-1:-1;;;12447:58:0;;5258:2:1;12447:58:0::1;::::0;::::1;5240:21:1::0;5297:2;5277:18;;;5270:30;5336:25;5316:18;;;5309:53;5379:18;;12447:58:0::1;5056:347:1::0;12447:58:0::1;12516:20;:31:::0;;-1:-1:-1;;12516:31:0::1;-1:-1:-1::0;;;;;12516:31:0;;;::::1;::::0;;;::::1;::::0;;12381:174::o;11917:155::-;3011:6;;-1:-1:-1;;;;;3011:6:0;2261:10;3011:22;3003:67;;;;-1:-1:-1;;;3003:67:0;;4897:2:1;3003:67:0;;;4879:21:1;;;4916:18;;;4909:30;-1:-1:-1;;;;;;;;;;;4955:18:1;;;4948:62;5027:18;;3003:67:0;4695:356:1;3003:67:0;12008:11:::1;:22:::0;;;::::1;;-1:-1:-1::0;;;12008:22:0::1;-1:-1:-1::0;;;;12008:22:0;;::::1;::::0;;;::::1;::::0;;;12041:13:::1;:23:::0;11917:155::o;5412:29::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;5412:29:0;;-1:-1:-1;5412:29:0;:::o;423:192::-;509:7;545:12;537:6;;;;529:29;;;;-1:-1:-1;;;529:29:0;;;;;;;;:::i;:::-;-1:-1:-1;569:9:0;581:5;585:1;581;:5;:::i;:::-;569:17;423:192;-1:-1:-1;;;;;423:192:0:o;8294:1021::-;8406:6;;8386:4;;8406:6;;8403:63;;;8422:41;8437:6;8445:9;8456:6;8422:14;:41::i;:::-;8415:48;;;;8403:63;-1:-1:-1;;;;;8482:19:0;;;;;;:11;:19;;;;;;;;8481:20;:47;;;;-1:-1:-1;;;;;;8506:22:0;;;;;;:11;:22;;;;;;;;8505:23;8481:47;8478:124;;;8552:14;;-1:-1:-1;;;8552:14:0;;;;8544:46;;;;-1:-1:-1;;;8544:46:0;;4146:2:1;8544:46:0;;;4128:21:1;4185:2;4165:18;;;4158:30;4224:22;4204:18;;;4197:50;4264:18;;8544:46:0;3944:344:1;8544:46:0;8617:16;:14;:16::i;:::-;8614:35;;;8636:10;:8;:10::i;:::-;-1:-1:-1;;;;;8709:33:0;;8661:22;8709:33;;;:25;:33;;;;;;8686:6;;8709:33;;8706:364;;;-1:-1:-1;;;;;8769:22:0;;;;;;:11;:22;;;;;;;;8765:106;;8829:26;8840:6;8848;8829:10;:26::i;:::-;8812:43;;8765:106;8706:364;;;-1:-1:-1;;;;;8893:36:0;;;;;;:25;:36;;;;;;;;8890:180;;;-1:-1:-1;;;;;8957:19:0;;;;;;:11;:19;;;;;;;;8953:106;;9014:27;9026:6;9034;9014:11;:27::i;:::-;8997:44;;8953:106;-1:-1:-1;;;;;9111:17:0;;;;;;:9;:17;;;;;;:29;;9133:6;9111:21;:29::i;:::-;-1:-1:-1;;;;;9091:17:0;;;;;;;:9;:17;;;;;;:49;;;;9174:20;;;;;;;:40;;9199:14;9174:24;:40::i;:::-;-1:-1:-1;;;;;9151:20:0;;;;;;;:9;:20;;;;;;;:63;;;;9242:43;;;;;;;;;;9270:14;5554:25:1;;5542:2;5527:18;;5408:177;9242:43:0;;;;;;;;-1:-1:-1;9303:4:0;;8294:1021;-1:-1:-1;;;;8294:1021:0:o;281:136::-;339:7;366:43;370:1;373;366:43;;;;;;;;;;;;;;;;;:3;:43::i;9327:330::-;9457:53;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9457:17:0;;9420:4;9457:17;;;:9;:17;;;;;;;:53;;9479:6;;9457:21;:53::i;:::-;-1:-1:-1;;;;;9437:17:0;;;;;;;:9;:17;;;;;;:73;;;;9544:20;;;;;;;:32;;9569:6;9544:24;:32::i;:::-;-1:-1:-1;;;;;9521:20:0;;;;;;;:9;:20;;;;;;;:55;;;;9592:35;;;;;;;;;;9620:6;5554:25:1;;5542:2;5527:18;;5408:177;9592:35:0;;;;;;;;-1:-1:-1;9645:4:0;9327:330;;;;;:::o;10386:226::-;10495:10;10435:4;10469:37;;;:25;:37;;;;;;;;10468:38;:58;;;;-1:-1:-1;10520:6:0;;;;10519:7;10468:58;:82;;;;-1:-1:-1;10539:11:0;;-1:-1:-1;;;10539:11:0;;;;10468:82;:136;;;;-1:-1:-1;;10591:13:0;;10581:4;10563:24;;;;:9;:24;;;;;;:41;;;10386:226::o;10772:376::-;6064:6;:13;;-1:-1:-1;;6064:13:0;6073:4;6064:13;;;10845:16:::1;::::0;;10859:1:::1;10845:16:::0;;;;;::::1;::::0;;-1:-1:-1;;10845:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;10845:16:0::1;10821:40;;10890:4;10872;10877:1;10872:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10872:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;:23;10916:4:::1;::::0;10906:7;;10916:4;::::1;::::0;10906;;10916;;10906:7;::::1;;;;;:::i;:::-;-1:-1:-1::0;;;;;10906:14:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:14;;;;10933:6:::1;::::0;11023:4:::1;10933:6;11005:24:::0;;;:9:::1;:24:::0;;;;;;;;11079:20:::1;::::0;10933:207;;-1:-1:-1;;;10933:207:0;;:6;;::::1;::::0;:57:::1;::::0;:207:::1;::::0;11005:24;;10933:6;;11060:4;;11079:20;;;::::1;::::0;11114:15:::1;::::0;10933:207:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;6082:6:0;:14;;-1:-1:-1;;6082:14:0;;;-1:-1:-1;;;10772:376:0:o;9678:338::-;9748:7;;9787:43;5714:3;9787:23;:6;5616:1;9787:10;:23::i;:::-;:27;;:43::i;:::-;9888:4;9870:24;;;;:9;:24;;;;;;9767:63;;-1:-1:-1;9870:39:0;;9767:63;9870:28;:39::i;:::-;9861:4;9843:24;;;;:9;:24;;;;;;;:66;;;;9925:42;;-1:-1:-1;;;;;9925:42:0;;;;;;;9957:9;5554:25:1;;5542:2;5527:18;;5408:177;9925:42:0;;;;;;;;9987:21;:6;9998:9;9987:10;:21::i;:::-;9980:28;9678:338;-1:-1:-1;;;;9678:338:0:o;94:181::-;152:7;;184:5;188:1;184;:5;:::i;:::-;172:17;;213:1;208;:6;;200:46;;;;-1:-1:-1;;;200:46:0;;3790:2:1;200:46:0;;;3772:21:1;3829:2;3809:18;;;3802:30;3868:29;3848:18;;;3841:57;3915:18;;200:46:0;3588:351:1;621:250:0;679:7;703:6;699:47;;-1:-1:-1;733:1:0;726:8;;699:47;758:9;770:5;774:1;770;:5;:::i;:::-;758:17;-1:-1:-1;803:1:0;794:5;798:1;758:17;794:5;:::i;:::-;:10;786:56;;;;-1:-1:-1;;;786:56:0;;4495:2:1;786:56:0;;;4477:21:1;4534:2;4514:18;;;4507:30;4573:34;4553:18;;;4546:62;-1:-1:-1;;;4624:18:1;;;4617:31;4665:19;;786:56:0;4293:397:1;877:132:0;935:7;962:39;966:1;969;962:39;;;;;;;;;;;;;;;;;1101:7;1136:12;1129:5;1121:28;;;;-1:-1:-1;;;1121:28:0;;;;;;;;:::i;:::-;-1:-1:-1;1160:9:0;1172:5;1176:1;1172;:5;:::i;14:196:1:-;82:20;;-1:-1:-1;;;;;131:54:1;;121:65;;111:93;;200:1;197;190:12;111:93;14:196;;;:::o;215:186::-;274:6;327:2;315:9;306:7;302:23;298:32;295:52;;;343:1;340;333:12;295:52;366:29;385:9;366:29;:::i;406:260::-;474:6;482;535:2;523:9;514:7;510:23;506:32;503:52;;;551:1;548;541:12;503:52;574:29;593:9;574:29;:::i;:::-;564:39;;622:38;656:2;645:9;641:18;622:38;:::i;:::-;612:48;;406:260;;;;;:::o;671:328::-;748:6;756;764;817:2;805:9;796:7;792:23;788:32;785:52;;;833:1;830;823:12;785:52;856:29;875:9;856:29;:::i;:::-;846:39;;904:38;938:2;927:9;923:18;904:38;:::i;:::-;894:48;;989:2;978:9;974:18;961:32;951:42;;671:328;;;;;:::o;1004:254::-;1072:6;1080;1133:2;1121:9;1112:7;1108:23;1104:32;1101:52;;;1149:1;1146;1139:12;1101:52;1172:29;1191:9;1172:29;:::i;:::-;1162:39;1248:2;1233:18;;;;1220:32;;-1:-1:-1;;;1004:254:1:o;1263:245::-;1330:6;1383:2;1371:9;1362:7;1358:23;1354:32;1351:52;;;1399:1;1396;1389:12;1351:52;1431:9;1425:16;1450:28;1472:5;1450:28;:::i;1513:309::-;1578:6;1586;1639:2;1627:9;1618:7;1614:23;1610:32;1607:52;;;1655:1;1652;1645:12;1607:52;1694:9;1681:23;1713:28;1735:5;1713:28;:::i;1827:180::-;1886:6;1939:2;1927:9;1918:7;1914:23;1910:32;1907:52;;;1955:1;1952;1945:12;1907:52;-1:-1:-1;1978:23:1;;1827:180;-1:-1:-1;1827:180:1:o;2986:597::-;3098:4;3127:2;3156;3145:9;3138:21;3188:6;3182:13;3231:6;3226:2;3215:9;3211:18;3204:34;3256:1;3266:140;3280:6;3277:1;3274:13;3266:140;;;3375:14;;;3371:23;;3365:30;3341:17;;;3360:2;3337:26;3330:66;3295:10;;3266:140;;;3424:6;3421:1;3418:13;3415:91;;;3494:1;3489:2;3480:6;3469:9;3465:22;3461:31;3454:42;3415:91;-1:-1:-1;3567:2:1;3546:15;-1:-1:-1;;3542:29:1;3527:45;;;;3574:2;3523:54;;2986:597;-1:-1:-1;;;2986:597:1:o;5590:1026::-;5852:4;5900:3;5889:9;5885:19;5931:6;5920:9;5913:25;5957:2;5995:6;5990:2;5979:9;5975:18;5968:34;6038:3;6033:2;6022:9;6018:18;6011:31;6062:6;6097;6091:13;6128:6;6120;6113:22;6166:3;6155:9;6151:19;6144:26;;6205:2;6197:6;6193:15;6179:29;;6226:1;6236:218;6250:6;6247:1;6244:13;6236:218;;;6315:13;;-1:-1:-1;;;;;6311:62:1;6299:75;;6429:15;;;;6394:12;;;;6272:1;6265:9;6236:218;;;-1:-1:-1;;;;;;;6510:55:1;;;;6505:2;6490:18;;6483:83;-1:-1:-1;;;6597:3:1;6582:19;6575:35;6471:3;5590:1026;-1:-1:-1;;;5590:1026:1:o;6810:128::-;6850:3;6881:1;6877:6;6874:1;6871:13;6868:39;;;6887:18;;:::i;:::-;-1:-1:-1;6923:9:1;;6810:128::o;6943:217::-;6983:1;7009;6999:132;;7053:10;7048:3;7044:20;7041:1;7034:31;7088:4;7085:1;7078:15;7116:4;7113:1;7106:15;6999:132;-1:-1:-1;7145:9:1;;6943:217::o;7165:168::-;7205:7;7271:1;7267;7263:6;7259:14;7256:1;7253:21;7248:1;7241:9;7234:17;7230:45;7227:71;;;7278:18;;:::i;:::-;-1:-1:-1;7318:9:1;;7165:168::o;7338:125::-;7378:4;7406:1;7403;7400:8;7397:34;;;7411:18;;:::i;:::-;-1:-1:-1;7448:9:1;;7338:125::o;7468:127::-;7529:10;7524:3;7520:20;7517:1;7510:31;7560:4;7557:1;7550:15;7584:4;7581:1;7574:15;7600:127;7661:10;7656:3;7652:20;7649:1;7642:31;7692:4;7689:1;7682:15;7716:4;7713:1;7706:15;7864:118;7950:5;7943:13;7936:21;7929:5;7926:32;7916:60;;7972:1;7969;7962:12

Swarm Source

ipfs://84f4eb71a9dd99e26bc37913c92ae9e0937e201323771fb94cf9b43ee3542f7d
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.