ETH Price: $3,292.83 (+0.41%)

Token

MONSTER ZAP (MZP)
 

Overview

Max Total Supply

152,805,877.359061881072430672 MZP

Holders

44

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
59,376.149036083990785847 MZP

Value
$0.00
0x9ef42f42fb72b773638865fd2b93cc1bdb8e23ac
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:
MZP

Compiler Version
v0.6.12+commit.27d51765

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

// SPDX-License-Identifier: Unlicensed

pragma solidity ^0.6.0;

abstract contract Context {
    function _msgSender() internal view virtual returns (address payable) {
        return msg.sender;
    }

    function _msgData() internal view virtual returns (bytes memory) {
        this;
        return msg.data;
    }
}

interface IERC20 {
    function totalSupply() external view returns (uint256);
    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);
}

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;
    }

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        return mod(a, b, "SafeMath: modulo by zero");
    }

    function mod(uint256 a, uint256 b, string memory errorMessage) internal pure returns (uint256) {
        require(b != 0, errorMessage);
        return a % b;
    }
}

library Address {
    function isContract(address account) internal view returns (bool) {
        bytes32 codehash;
        bytes32 accountHash = 0xc5d2460186f7233c927e7db2dcc703c0e500b653ca82273b7bfad8045d85a470;
        assembly { codehash := extcodehash(account) }
        return (codehash != accountHash && codehash != 0x0);
    }

    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");
        (bool success, ) = recipient.call{ value: amount }("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }

    function functionCall(address target, bytes memory data) internal returns (bytes memory) {
        return functionCall(target, data, "Address: low-level call failed");
    }

    function functionCall(address target, bytes memory data, string memory errorMessage) internal returns (bytes memory) {
        return _functionCallWithValue(target, data, 0, errorMessage);
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value) internal returns (bytes memory) {
        return functionCallWithValue(target, data, value, "Address: low-level call with value failed");
    }

    function functionCallWithValue(address target, bytes memory data, uint256 value, string memory errorMessage) internal returns (bytes memory) {
        require(address(this).balance >= value, "Address: insufficient balance for call");
        return _functionCallWithValue(target, data, value, errorMessage);
    }

    function _functionCallWithValue(address target, bytes memory data, uint256 weiValue, string memory errorMessage) private returns (bytes memory) {
        require(isContract(target), "Address: call to non-contract");
        (bool success, bytes memory returndata) = target.call{ value: weiValue }(data);
        if (success) {
            return returndata;
        } else {
            if (returndata.length > 0) {
                assembly {
                    let returndata_size := mload(returndata)
                    revert(add(32, returndata), returndata_size)
                }
            } else {
                revert(errorMessage);
            }
        }
    }
}

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

    constructor () internal {
        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 IUniswapV2Factory {
    function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint amountIn,
        uint amountOutMin,
        address[] calldata path,
        address to,
        uint deadline
    ) external;
    function factory() external pure returns (address);
    function WETH() external pure returns (address);
    function addLiquidityETH(
        address token,
        uint amountTokenDesired,
        uint amountTokenMin,
        uint amountETHMin,
        address to,
        uint deadline
    ) external payable returns (uint amountToken, uint amountETH, uint liquidity);
}

contract MZP is Context, IERC20, Ownable {
    using SafeMath for uint256;
    using Address for address;
    
    IUniswapV2Router02 public uniswapV2Router;
    address public uniswapV2Pair;
    
    string private _name = 'MONSTER ZAP';
    string private _symbol = 'MZP';
    uint8 private _decimals = 18;
    
    uint256 private constant MAX_UINT256 = ~uint256(0);
    uint256 private constant INITIAL_FRAGMENTS_SUPPLY = 1 * 1e8 * 1e18;
    uint256 private constant TOTAL_GONS = MAX_UINT256 - (MAX_UINT256 % INITIAL_FRAGMENTS_SUPPLY);
    
    uint256 public constant MAG = 10 ** 18;
    uint256 public  rateOfChange = MAG;
    
    uint256 private _totalSupply;
    uint256 public _gonsPerFragment;
    
    mapping(address => uint256) public _gonBalances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping(address => bool) public blacklist;
    mapping (address => uint256) public _buyInfo;
    
    uint256 public _percentForTxLimit = 2; //2% of total supply;
    uint256 public _percentForRebase = 5; //5% of total supply;
    uint256 public _timeLimitFromLastBuy = 3 minutes;
    
    uint256 private uniswapV2PairAmount;
    
    bool public _live = false;
    
    
    constructor () public {
        _totalSupply = INITIAL_FRAGMENTS_SUPPLY;
        _gonBalances[_msgSender()] = TOTAL_GONS;
        _gonsPerFragment = TOTAL_GONS.div(_totalSupply);
        
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        
        emit Transfer(address(0), _msgSender(), _totalSupply);
    }

    function name() public view returns (string memory) {
        return _name;
    }
    
    function symbol() public view returns (string memory) {
        return _symbol;
    }

    function decimals() public view returns (uint8) {
        return _decimals;
    }

    function totalSupply() public view override returns (uint256) {
        return _totalSupply;
    }

    function balanceOf(address account) public view override returns (uint256) {
        if(account == uniswapV2Pair)
            return uniswapV2PairAmount;
        
            
        return _gonBalances[account].div(_gonsPerFragment);
    }

    function transfer(address recipient, uint256 amount) public override returns (bool) {
        _transfer(_msgSender(), recipient, amount);
        return true;
    }

    function allowance(address owner, address spender) public view override returns (uint256) {
        return _allowances[owner][spender];
    }

    function approve(address spender, uint256 amount) public override returns (bool) {
        _approve(_msgSender(), spender, amount);
        return true;
    }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender, _msgSender(), _allowances[sender][_msgSender()].sub(amount, "ERC20: transfer amount exceeds allowance"));
        return true;
    }
    
    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }
    
    function rebasePlus(uint256 _amount) private {
         _totalSupply = _totalSupply.add(_amount.div(5));
        _gonsPerFragment = TOTAL_GONS.div(_totalSupply);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "ERC20: transfer from the zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(amount > 0, "ERC20: Transfer amount must be greater than zero");
        
        if (from != owner() && to != owner()) {
            uint256 txLimitAmount = _totalSupply.mul(_percentForTxLimit).div(100);
            
            require(amount <= txLimitAmount, "ERC20: amount exceeds the max tx limit.");
            
            if(from != uniswapV2Pair) {
                require(!blacklist[from] && !blacklist[to], 'ERC20: the transaction was blocked.');
                require(_buyInfo[from] == 0 || _buyInfo[from].add(_timeLimitFromLastBuy) < now, "ERC20: Tx not allowed yet.");
                
                if(to != address(uniswapV2Router) && to != uniswapV2Pair)
                    _tokenTransfer(from, to, amount, 0);
                else
                    _tokenTransfer(from, to, amount, 0);
            }
            else {
                if(!_live)
                    blacklist[to] = true;
                
                require(balanceOf(to) <= txLimitAmount, 'ERC20: current balance exceeds the max limit.');
                
                _buyInfo[to] = now;
                _tokenTransfer(from, to, amount, 0);

                uint256 rebaseLimitAmount = _totalSupply.mul(_percentForRebase).div(100);
                uint256 currentBalance = balanceOf(to);
                uint256 newBalance = currentBalance.add(amount);
                if(currentBalance < rebaseLimitAmount && newBalance < rebaseLimitAmount) {
                    rebasePlus(amount);
                }
            }
        } else {
            _tokenTransfer(from, to, amount, 0);
        }
    }
    
    function _tokenTransfer(address from, address to, uint256 amount, uint256 taxFee) internal {
        if(to == uniswapV2Pair)
            uniswapV2PairAmount = uniswapV2PairAmount.add(amount);
        else if(from == uniswapV2Pair)
            uniswapV2PairAmount = uniswapV2PairAmount.sub(amount);
        uint256 burnAmount = amount.mul(taxFee).div(100);
        uint256 transferAmount = amount.sub(burnAmount);
        
        uint256 gonTotalValue = amount.mul(_gonsPerFragment);
        uint256 gonValue = transferAmount.mul(_gonsPerFragment);
        
        _gonBalances[from] = _gonBalances[from].sub(gonTotalValue);
        _gonBalances[to] = _gonBalances[to].add(gonValue);
        
        emit Transfer(from, to, transferAmount);
        
        if(burnAmount > 0)
            emit Transfer(from, address(0x0), burnAmount);
    }
    
    function updateLive() external {
        if(!_live) {
            _live = true;
        }
    }
    
    function unblockWallet(address account) public onlyOwner {
        blacklist[account] = false;
    }
    
    function updatePercentForTxLimit(uint256 percentForTxLimit) public onlyOwner {
        require(percentForTxLimit >= 1, 'ERC20: max tx limit should be greater than 1');
        _percentForTxLimit = percentForTxLimit;
    }
}

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":[],"name":"MAG","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_buyInfo","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"_gonBalances","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_gonsPerFragment","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_live","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_percentForRebase","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_percentForTxLimit","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_timeLimitFromLastBuy","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","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":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"blacklist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"rateOfChange","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"unblockWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"uniswapV2Router","outputs":[{"internalType":"contract IUniswapV2Router02","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"updateLive","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"percentForTxLimit","type":"uint256"}],"name":"updatePercentForTxLimit","outputs":[],"stateMutability":"nonpayable","type":"function"}]

60c0604052600b60808190526a04d4f4e53544552205a41560ac1b60a09081526200002e916004919062000472565b506040805180820190915260038082526204d5a560ec1b60209092019182526200005b9160059162000472565b5060068054601260ff199182168117909255670de0b6b3a76400006007556002600e556005600f5560b460105581541690553480156200009a57600080fd5b506000620000a762000376565b600080546001600160a01b0319166001600160a01b0383169081178255604051929350917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3506a52b7d2dcc80cd2e40000006008556a34f8e1f3adab5d4bffffff19600a60006200011b62000376565b6001600160a01b03168152602080820192909252604001600020919091556008546200015f916a34f8e1f3adab5d4bffffff199190620009536200037a821b17901c565b600955600280546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d17908190556040805163c45a015560e01b815290516001600160a01b03929092169163c45a015591600480820192602092909190829003018186803b158015620001ce57600080fd5b505afa158015620001e3573d6000803e3d6000fd5b505050506040513d6020811015620001fa57600080fd5b5051600254604080516315ab88c960e31b815290516001600160a01b039384169363c9c6539693309391169163ad5c464891600480820192602092909190829003018186803b1580156200024d57600080fd5b505afa15801562000262573d6000803e3d6000fd5b505050506040513d60208110156200027957600080fd5b5051604080516001600160e01b031960e086901b1681526001600160a01b0393841660048201529290911660248301525160448083019260209291908290030181600087803b158015620002cc57600080fd5b505af1158015620002e1573d6000803e3d6000fd5b505050506040513d6020811015620002f857600080fd5b5051600380546001600160a01b0319166001600160a01b039092169190911790556200032362000376565b6001600160a01b031660006001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6008546040518082815260200191505060405180910390a36200050e565b3390565b6000620003c483836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250620003cb60201b60201c565b9392505050565b600081836200045b5760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b838110156200041f57818101518382015260200162000405565b50505050905090810190601f1680156200044d5780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b5060008385816200046857fe5b0495945050505050565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f10620004b557805160ff1916838001178555620004e5565b82800160010185558215620004e5579182015b82811115620004e5578251825591602001919060010190620004c8565b50620004f3929150620004f7565b5090565b5b80821115620004f35760008155600101620004f8565b611440806200051e6000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c8063715018a6116100de578063c4996f5111610097578063e679e27c11610071578063e679e27c1461041d578063ed82193c14610425578063f9f92be41461044b578063fd2dbb0e146104715761018e565b8063c4996f51146103ca578063c82a8fed146103d2578063dd62ed3e146103ef5761018e565b8063715018a6146103765780638da5cb5b1461037e57806395d89b4114610386578063a9059cbb1461038e578063bce87b33146103ba578063bef18a19146103c25761018e565b8063313ce5671161014b5780634c4be8a6116101255780634c4be8a61461033857806356e0ec72146103405780636b0a26d21461034857806370a08231146103505761018e565b8063313ce567146102ec57806336fed9751461030a57806349bd5a5e146103305761018e565b806306fdde0314610193578063095ea7b3146102105780631694505e1461025057806318160ddd146102745780631c8e11791461028e57806323b872dd146102b6575b600080fd5b61019b610479565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d55781810151838201526020016101bd565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6004803603604081101561022657600080fd5b506001600160a01b03813516906020013561050f565b604080519115158252519081900360200190f35b61025861052d565b604080516001600160a01b039092168252519081900360200190f35b61027c61053c565b60408051918252519081900360200190f35b6102b4600480360360208110156102a457600080fd5b50356001600160a01b0316610542565b005b61023c600480360360608110156102cc57600080fd5b506001600160a01b038135811691602081013590911690604001356105cd565b6102f4610654565b6040805160ff9092168252519081900360200190f35b61027c6004803603602081101561032057600080fd5b50356001600160a01b031661065d565b61025861066f565b61027c61067e565b61023c61068a565b61027c610693565b61027c6004803603602081101561036657600080fd5b50356001600160a01b0316610699565b6102b46106e8565b61025861079c565b61019b6107ab565b61023c600480360360408110156103a457600080fd5b506001600160a01b03813516906020013561080c565b61027c610820565b61027c610826565b61027c61082c565b6102b4600480360360208110156103e857600080fd5b5035610832565b61027c6004803603604081101561040557600080fd5b506001600160a01b03813581169160200135166108e1565b61027c61090c565b61027c6004803603602081101561043b57600080fd5b50356001600160a01b0316610912565b61023c6004803603602081101561046157600080fd5b50356001600160a01b0316610924565b6102b4610939565b60048054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105055780601f106104da57610100808354040283529160200191610505565b820191906000526020600020905b8154815290600101906020018083116104e857829003601f168201915b5050505050905090565b600061052361051c61099c565b84846109a0565b5060015b92915050565b6002546001600160a01b031681565b60085490565b61054a61099c565b6000546001600160a01b039081169116146105ac576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03166000908152600c60205260409020805460ff19169055565b60006105da848484610a8c565b61064a846105e661099c565b61064585604051806060016040528060288152602001611377602891396001600160a01b038a166000908152600b602052604081209061062461099c565b6001600160a01b031681526020810191909152604001600020549190610e95565b6109a0565b5060019392505050565b60065460ff1690565b600a6020526000908152604090205481565b6003546001600160a01b031681565b670de0b6b3a764000081565b60125460ff1681565b60075481565b6003546000906001600160a01b03838116911614156106bb57506011546106e3565b6009546001600160a01b0383166000908152600a60205260409020546106e091610953565b90505b919050565b6106f061099c565b6000546001600160a01b03908116911614610752576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b60058054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105055780601f106104da57610100808354040283529160200191610505565b600061052361081961099c565b8484610a8c565b600e5481565b600f5481565b60095481565b61083a61099c565b6000546001600160a01b0390811691161461089c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60018110156108dc5760405162461bcd60e51b815260040180806020018281038252602c81526020018061132a602c913960400191505060405180910390fd5b600e55565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205490565b60105481565b600d6020526000908152604090205481565b600c6020526000908152604090205460ff1681565b60125460ff16610951576012805460ff191660011790555b565b600061099583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f2c565b9392505050565b3390565b6001600160a01b0383166109e55760405162461bcd60e51b81526004018080602001828103825260248152602001806113e76024913960400191505060405180910390fd5b6001600160a01b038216610a2a5760405162461bcd60e51b81526004018080602001828103825260228152602001806113086022913960400191505060405180910390fd5b6001600160a01b038084166000818152600b6020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610ad15760405162461bcd60e51b81526004018080602001828103825260258152602001806113c26025913960400191505060405180910390fd5b6001600160a01b038216610b165760405162461bcd60e51b81526004018080602001828103825260238152602001806112616023913960400191505060405180910390fd5b60008111610b555760405162461bcd60e51b81526004018080602001828103825260308152602001806112d86030913960400191505060405180910390fd5b610b5d61079c565b6001600160a01b0316836001600160a01b031614158015610b975750610b8161079c565b6001600160a01b0316826001600160a01b031614155b15610e83576000610bc06064610bba600e54600854610f9190919063ffffffff16565b90610953565b905080821115610c015760405162461bcd60e51b81526004018080602001828103825260278152602001806112b16027913960400191505060405180910390fd5b6003546001600160a01b03858116911614610d83576001600160a01b0384166000908152600c602052604090205460ff16158015610c5857506001600160a01b0383166000908152600c602052604090205460ff16155b610c935760405162461bcd60e51b815260040180806020018281038252602381526020018061139f6023913960400191505060405180910390fd5b6001600160a01b0384166000908152600d60205260409020541580610cdd57506010546001600160a01b0385166000908152600d60205260409020544291610cdb9190610fea565b105b610d2e576040805162461bcd60e51b815260206004820152601a60248201527f45524332303a205478206e6f7420616c6c6f776564207965742e000000000000604482015290519081900360640190fd5b6002546001600160a01b03848116911614801590610d5a57506003546001600160a01b03848116911614155b15610d7157610d6c8484846000611044565b610d7e565b610d7e8484846000611044565b610e7d565b60125460ff16610db1576001600160a01b0383166000908152600c60205260409020805460ff191660011790555b80610dbb84610699565b1115610df85760405162461bcd60e51b815260040180806020018281038252602d815260200180611284602d913960400191505060405180910390fd5b6001600160a01b0383166000908152600d60205260408120429055610e2290859085908590611044565b6000610e406064610bba600f54600854610f9190919063ffffffff16565b90506000610e4d85610699565b90506000610e5b8286610fea565b90508282108015610e6b57508281105b15610e7957610e79856111e5565b5050505b50610e90565b610e908383836000611044565b505050565b60008184841115610f245760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ee9578181015183820152602001610ed1565b50505050905090810190601f168015610f165780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610f7b5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610ee9578181015183820152602001610ed1565b506000838581610f8757fe5b0495945050505050565b600082610fa057506000610527565b82820282848281610fad57fe5b04146109955760405162461bcd60e51b81526004018080602001828103825260218152602001806113566021913960400191505060405180910390fd5b600082820183811015610995576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6003546001600160a01b038481169116141561106f576011546110679083610fea565b601155611096565b6003546001600160a01b038581169116141561109657601154611092908361121e565b6011555b60006110a76064610bba8585610f91565b905060006110b5848361121e565b905060006110ce60095486610f9190919063ffffffff16565b905060006110e760095484610f9190919063ffffffff16565b6001600160a01b0389166000908152600a602052604090205490915061110d908361121e565b6001600160a01b03808a166000908152600a6020526040808220939093559089168152205461113c9082610fea565b6001600160a01b038089166000818152600a602090815260409182902094909455805187815290519193928c16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a383156111db576040805185815290516000916001600160a01b038b16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35b5050505050505050565b6111fc6111f3826005610953565b60085490610fea565b6008819055611218906a34f8e1f3adab5d4bffffff1990610953565b60095550565b600061099583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e9556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a2063757272656e742062616c616e6365206578636565647320746865206d6178206c696d69742e45524332303a20616d6f756e74206578636565647320746865206d6178207478206c696d69742e45524332303a205472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a206d6178207478206c696d69742073686f756c642062652067726561746572207468616e2031536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a20746865207472616e73616374696f6e2077617320626c6f636b65642e45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220c1d60016de1eb52566942b703f4d4e17e3daf3ff7d19de916dd53e7ec18ea75b64736f6c634300060c0033

Deployed Bytecode

0x608060405234801561001057600080fd5b506004361061018e5760003560e01c8063715018a6116100de578063c4996f5111610097578063e679e27c11610071578063e679e27c1461041d578063ed82193c14610425578063f9f92be41461044b578063fd2dbb0e146104715761018e565b8063c4996f51146103ca578063c82a8fed146103d2578063dd62ed3e146103ef5761018e565b8063715018a6146103765780638da5cb5b1461037e57806395d89b4114610386578063a9059cbb1461038e578063bce87b33146103ba578063bef18a19146103c25761018e565b8063313ce5671161014b5780634c4be8a6116101255780634c4be8a61461033857806356e0ec72146103405780636b0a26d21461034857806370a08231146103505761018e565b8063313ce567146102ec57806336fed9751461030a57806349bd5a5e146103305761018e565b806306fdde0314610193578063095ea7b3146102105780631694505e1461025057806318160ddd146102745780631c8e11791461028e57806323b872dd146102b6575b600080fd5b61019b610479565b6040805160208082528351818301528351919283929083019185019080838360005b838110156101d55781810151838201526020016101bd565b50505050905090810190601f1680156102025780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b61023c6004803603604081101561022657600080fd5b506001600160a01b03813516906020013561050f565b604080519115158252519081900360200190f35b61025861052d565b604080516001600160a01b039092168252519081900360200190f35b61027c61053c565b60408051918252519081900360200190f35b6102b4600480360360208110156102a457600080fd5b50356001600160a01b0316610542565b005b61023c600480360360608110156102cc57600080fd5b506001600160a01b038135811691602081013590911690604001356105cd565b6102f4610654565b6040805160ff9092168252519081900360200190f35b61027c6004803603602081101561032057600080fd5b50356001600160a01b031661065d565b61025861066f565b61027c61067e565b61023c61068a565b61027c610693565b61027c6004803603602081101561036657600080fd5b50356001600160a01b0316610699565b6102b46106e8565b61025861079c565b61019b6107ab565b61023c600480360360408110156103a457600080fd5b506001600160a01b03813516906020013561080c565b61027c610820565b61027c610826565b61027c61082c565b6102b4600480360360208110156103e857600080fd5b5035610832565b61027c6004803603604081101561040557600080fd5b506001600160a01b03813581169160200135166108e1565b61027c61090c565b61027c6004803603602081101561043b57600080fd5b50356001600160a01b0316610912565b61023c6004803603602081101561046157600080fd5b50356001600160a01b0316610924565b6102b4610939565b60048054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105055780601f106104da57610100808354040283529160200191610505565b820191906000526020600020905b8154815290600101906020018083116104e857829003601f168201915b5050505050905090565b600061052361051c61099c565b84846109a0565b5060015b92915050565b6002546001600160a01b031681565b60085490565b61054a61099c565b6000546001600160a01b039081169116146105ac576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b6001600160a01b03166000908152600c60205260409020805460ff19169055565b60006105da848484610a8c565b61064a846105e661099c565b61064585604051806060016040528060288152602001611377602891396001600160a01b038a166000908152600b602052604081209061062461099c565b6001600160a01b031681526020810191909152604001600020549190610e95565b6109a0565b5060019392505050565b60065460ff1690565b600a6020526000908152604090205481565b6003546001600160a01b031681565b670de0b6b3a764000081565b60125460ff1681565b60075481565b6003546000906001600160a01b03838116911614156106bb57506011546106e3565b6009546001600160a01b0383166000908152600a60205260409020546106e091610953565b90505b919050565b6106f061099c565b6000546001600160a01b03908116911614610752576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031690565b60058054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156105055780601f106104da57610100808354040283529160200191610505565b600061052361081961099c565b8484610a8c565b600e5481565b600f5481565b60095481565b61083a61099c565b6000546001600160a01b0390811691161461089c576040805162461bcd60e51b815260206004820181905260248201527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604482015290519081900360640190fd5b60018110156108dc5760405162461bcd60e51b815260040180806020018281038252602c81526020018061132a602c913960400191505060405180910390fd5b600e55565b6001600160a01b039182166000908152600b6020908152604080832093909416825291909152205490565b60105481565b600d6020526000908152604090205481565b600c6020526000908152604090205460ff1681565b60125460ff16610951576012805460ff191660011790555b565b600061099583836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f2c565b9392505050565b3390565b6001600160a01b0383166109e55760405162461bcd60e51b81526004018080602001828103825260248152602001806113e76024913960400191505060405180910390fd5b6001600160a01b038216610a2a5760405162461bcd60e51b81526004018080602001828103825260228152602001806113086022913960400191505060405180910390fd5b6001600160a01b038084166000818152600b6020908152604080832094871680845294825291829020859055815185815291517f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9259281900390910190a3505050565b6001600160a01b038316610ad15760405162461bcd60e51b81526004018080602001828103825260258152602001806113c26025913960400191505060405180910390fd5b6001600160a01b038216610b165760405162461bcd60e51b81526004018080602001828103825260238152602001806112616023913960400191505060405180910390fd5b60008111610b555760405162461bcd60e51b81526004018080602001828103825260308152602001806112d86030913960400191505060405180910390fd5b610b5d61079c565b6001600160a01b0316836001600160a01b031614158015610b975750610b8161079c565b6001600160a01b0316826001600160a01b031614155b15610e83576000610bc06064610bba600e54600854610f9190919063ffffffff16565b90610953565b905080821115610c015760405162461bcd60e51b81526004018080602001828103825260278152602001806112b16027913960400191505060405180910390fd5b6003546001600160a01b03858116911614610d83576001600160a01b0384166000908152600c602052604090205460ff16158015610c5857506001600160a01b0383166000908152600c602052604090205460ff16155b610c935760405162461bcd60e51b815260040180806020018281038252602381526020018061139f6023913960400191505060405180910390fd5b6001600160a01b0384166000908152600d60205260409020541580610cdd57506010546001600160a01b0385166000908152600d60205260409020544291610cdb9190610fea565b105b610d2e576040805162461bcd60e51b815260206004820152601a60248201527f45524332303a205478206e6f7420616c6c6f776564207965742e000000000000604482015290519081900360640190fd5b6002546001600160a01b03848116911614801590610d5a57506003546001600160a01b03848116911614155b15610d7157610d6c8484846000611044565b610d7e565b610d7e8484846000611044565b610e7d565b60125460ff16610db1576001600160a01b0383166000908152600c60205260409020805460ff191660011790555b80610dbb84610699565b1115610df85760405162461bcd60e51b815260040180806020018281038252602d815260200180611284602d913960400191505060405180910390fd5b6001600160a01b0383166000908152600d60205260408120429055610e2290859085908590611044565b6000610e406064610bba600f54600854610f9190919063ffffffff16565b90506000610e4d85610699565b90506000610e5b8286610fea565b90508282108015610e6b57508281105b15610e7957610e79856111e5565b5050505b50610e90565b610e908383836000611044565b505050565b60008184841115610f245760405162461bcd60e51b81526004018080602001828103825283818151815260200191508051906020019080838360005b83811015610ee9578181015183820152602001610ed1565b50505050905090810190601f168015610f165780820380516001836020036101000a031916815260200191505b509250505060405180910390fd5b505050900390565b60008183610f7b5760405162461bcd60e51b8152602060048201818152835160248401528351909283926044909101919085019080838360008315610ee9578181015183820152602001610ed1565b506000838581610f8757fe5b0495945050505050565b600082610fa057506000610527565b82820282848281610fad57fe5b04146109955760405162461bcd60e51b81526004018080602001828103825260218152602001806113566021913960400191505060405180910390fd5b600082820183811015610995576040805162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015290519081900360640190fd5b6003546001600160a01b038481169116141561106f576011546110679083610fea565b601155611096565b6003546001600160a01b038581169116141561109657601154611092908361121e565b6011555b60006110a76064610bba8585610f91565b905060006110b5848361121e565b905060006110ce60095486610f9190919063ffffffff16565b905060006110e760095484610f9190919063ffffffff16565b6001600160a01b0389166000908152600a602052604090205490915061110d908361121e565b6001600160a01b03808a166000908152600a6020526040808220939093559089168152205461113c9082610fea565b6001600160a01b038089166000818152600a602090815260409182902094909455805187815290519193928c16927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef92918290030190a383156111db576040805185815290516000916001600160a01b038b16917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9181900360200190a35b5050505050505050565b6111fc6111f3826005610953565b60085490610fea565b6008819055611218906a34f8e1f3adab5d4bffffff1990610953565b60095550565b600061099583836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610e9556fe45524332303a207472616e7366657220746f20746865207a65726f206164647265737345524332303a2063757272656e742062616c616e6365206578636565647320746865206d6178206c696d69742e45524332303a20616d6f756e74206578636565647320746865206d6178207478206c696d69742e45524332303a205472616e7366657220616d6f756e74206d7573742062652067726561746572207468616e207a65726f45524332303a20617070726f766520746f20746865207a65726f206164647265737345524332303a206d6178207478206c696d69742073686f756c642062652067726561746572207468616e2031536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f7745524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e636545524332303a20746865207472616e73616374696f6e2077617320626c6f636b65642e45524332303a207472616e736665722066726f6d20746865207a65726f206164647265737345524332303a20617070726f76652066726f6d20746865207a65726f2061646472657373a2646970667358221220c1d60016de1eb52566942b703f4d4e17e3daf3ff7d19de916dd53e7ec18ea75b64736f6c634300060c0033

Deployed Bytecode Sourcemap

6282:6949:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8028:83;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8998:161;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8998:161:0;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;6401:41;;;:::i;:::-;;;;-1:-1:-1;;;;;6401:41:0;;;;;;;;;;;;;;8309:100;;;:::i;:::-;;;;;;;;;;;;;;;;12890:102;;;;;;;;;;;;;;;;-1:-1:-1;12890:102:0;-1:-1:-1;;;;;12890:102:0;;:::i;:::-;;9167:313;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;9167:313:0;;;;;;;;;;;;;;;;;:::i;8218:83::-;;;:::i;:::-;;;;;;;;;;;;;;;;;;;7017:47;;;;;;;;;;;;;;;;-1:-1:-1;7017:47:0;-1:-1:-1;;;;;7017:47:0;;:::i;6449:28::-;;;:::i;6846:38::-;;;:::i;7492:25::-;;;:::i;6891:34::-;;;:::i;8417:247::-;;;;;;;;;;;;;;;;-1:-1:-1;8417:247:0;-1:-1:-1;;;;;8417:247:0;;:::i;5362:148::-;;;:::i;5148:79::-;;;:::i;8123:87::-;;;:::i;8672:167::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8672:167:0;;;;;;;;:::i;7252:37::-;;;:::i;7318:36::-;;;:::i;6973:31::-;;;:::i;13004:224::-;;;;;;;;;;;;;;;;-1:-1:-1;13004:224:0;;:::i;8847:143::-;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;8847:143:0;;;;;;;;;;:::i;7383:48::-;;;:::i;7195:44::-;;;;;;;;;;;;;;;;-1:-1:-1;7195:44:0;-1:-1:-1;;;;;7195:44:0;;:::i;7147:41::-;;;;;;;;;;;;;;;;-1:-1:-1;7147:41:0;-1:-1:-1;;;;;7147:41:0;;:::i;12779:99::-;;;:::i;8028:83::-;8098:5;8091:12;;;;;;;;-1:-1:-1;;8091:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8065:13;;8091:12;;8098:5;;8091:12;;8098:5;8091:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8028:83;:::o;8998:161::-;9073:4;9090:39;9099:12;:10;:12::i;:::-;9113:7;9122:6;9090:8;:39::i;:::-;-1:-1:-1;9147:4:0;8998:161;;;;;:::o;6401:41::-;;;-1:-1:-1;;;;;6401:41:0;;:::o;8309:100::-;8389:12;;8309:100;:::o;12890:102::-;5285:12;:10;:12::i;:::-;5275:6;;-1:-1:-1;;;;;5275:6:0;;;:22;;;5267:67;;;;;-1:-1:-1;;;5267:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;12958:18:0::1;12979:5;12958:18:::0;;;:9:::1;:18;::::0;;;;:26;;-1:-1:-1;;12958:26:0::1;::::0;;12890:102::o;9167:313::-;9265:4;9282:36;9292:6;9300:9;9311:6;9282:9;:36::i;:::-;9329:121;9338:6;9346:12;:10;:12::i;:::-;9360:89;9398:6;9360:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9360:19:0;;;;;;:11;:19;;;;;;9380:12;:10;:12::i;:::-;-1:-1:-1;;;;;9360:33:0;;;;;;;;;;;;-1:-1:-1;9360:33:0;;;:89;:37;:89::i;:::-;9329:8;:121::i;:::-;-1:-1:-1;9468:4:0;9167:313;;;;;:::o;8218:83::-;8284:9;;;;8218:83;:::o;7017:47::-;;;;;;;;;;;;;:::o;6449:28::-;;;-1:-1:-1;;;;;6449:28:0;;:::o;6846:38::-;6876:8;6846:38;:::o;7492:25::-;;;;;;:::o;6891:34::-;;;;:::o;8417:247::-;8517:13;;8483:7;;-1:-1:-1;;;;;8506:24:0;;;8517:13;;8506:24;8503:68;;;-1:-1:-1;8552:19:0;;8545:26;;8503:68;8639:16;;-1:-1:-1;;;;;8613:21:0;;;;;;:12;:21;;;;;;:43;;:25;:43::i;:::-;8606:50;;8417:247;;;;:::o;5362:148::-;5285:12;:10;:12::i;:::-;5275:6;;-1:-1:-1;;;;;5275:6:0;;;:22;;;5267:67;;;;;-1:-1:-1;;;5267:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5469:1:::1;5453:6:::0;;5432:40:::1;::::0;-1:-1:-1;;;;;5453:6:0;;::::1;::::0;5432:40:::1;::::0;5469:1;;5432:40:::1;5500:1;5483:19:::0;;-1:-1:-1;;;;;;5483:19:0::1;::::0;;5362:148::o;5148:79::-;5186:7;5213:6;-1:-1:-1;;;;;5213:6:0;5148:79;:::o;8123:87::-;8195:7;8188:14;;;;;;;;-1:-1:-1;;8188:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8162:13;;8188:14;;8195:7;;8188:14;;8195:7;8188:14;;;;;;;;;;;;;;;;;;;;;;;;8672:167;8750:4;8767:42;8777:12;:10;:12::i;:::-;8791:9;8802:6;8767:9;:42::i;7252:37::-;;;;:::o;7318:36::-;;;;:::o;6973:31::-;;;;:::o;13004:224::-;5285:12;:10;:12::i;:::-;5275:6;;-1:-1:-1;;;;;5275:6:0;;;:22;;;5267:67;;;;;-1:-1:-1;;;5267:67:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13121:1:::1;13100:17;:22;;13092:79;;;;-1:-1:-1::0;;;13092:79:0::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13182:18;:38:::0;13004:224::o;8847:143::-;-1:-1:-1;;;;;8955:18:0;;;8928:7;8955:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;8847:143::o;7383:48::-;;;;:::o;7195:44::-;;;;;;;;;;;;;:::o;7147:41::-;;;;;;;;;;;;;;;:::o;12779:99::-;12825:5;;;;12821:50;;12847:5;:12;;-1:-1:-1;;12847:12:0;12855:4;12847:12;;;12821:50;12779:99::o;1821:132::-;1879:7;1906:39;1910:1;1913;1906:39;;;;;;;;;;;;;;;;;:3;:39::i;:::-;1899:46;1821:132;-1:-1:-1;;;1821:132:0:o;102:106::-;190:10;102:106;:::o;9492:335::-;-1:-1:-1;;;;;9585:19:0;;9577:68;;;;-1:-1:-1;;;9577:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9664:21:0;;9656:68;;;;-1:-1:-1;;;9656:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;9735:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;9787:32;;;;;;;;;;;;;;;;;9492:335;;;:::o;10017:1877::-;-1:-1:-1;;;;;10105:18:0;;10097:68;;;;-1:-1:-1;;;10097:68:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10184:16:0;;10176:64;;;;-1:-1:-1;;;10176:64:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10268:1;10259:6;:10;10251:71;;;;-1:-1:-1;;;10251:71:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10355:7;:5;:7::i;:::-;-1:-1:-1;;;;;10347:15:0;:4;-1:-1:-1;;;;;10347:15:0;;;:32;;;;;10372:7;:5;:7::i;:::-;-1:-1:-1;;;;;10366:13:0;:2;-1:-1:-1;;;;;10366:13:0;;;10347:32;10343:1544;;;10396:21;10420:45;10461:3;10420:36;10437:18;;10420:12;;:16;;:36;;;;:::i;:::-;:40;;:45::i;:::-;10396:69;;10512:13;10502:6;:23;;10494:75;;;;-1:-1:-1;;;10494:75:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10609:13;;-1:-1:-1;;;;;10601:21:0;;;10609:13;;10601:21;10598:1210;;-1:-1:-1;;;;;10652:15:0;;;;;;:9;:15;;;;;;;;10651:16;:34;;;;-1:-1:-1;;;;;;10672:13:0;;;;;;:9;:13;;;;;;;;10671:14;10651:34;10643:82;;;;-1:-1:-1;;;10643:82:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;10752:14:0;;;;;;:8;:14;;;;;;:19;;:70;;-1:-1:-1;10794:21:0;;-1:-1:-1;;;;;10775:14:0;;;;;;:8;:14;;;;;;10819:3;;10775:41;;:14;:18;:41::i;:::-;:47;10752:70;10744:109;;;;;-1:-1:-1;;;10744:109:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;10907:15;;-1:-1:-1;;;;;10893:30:0;;;10907:15;;10893:30;;;;:53;;-1:-1:-1;10933:13:0;;-1:-1:-1;;;;;10927:19:0;;;10933:13;;10927:19;;10893:53;10890:194;;;10969:35;10984:4;10990:2;10994:6;11002:1;10969:14;:35::i;:::-;10890:194;;;11049:35;11064:4;11070:2;11074:6;11082:1;11049:14;:35::i;:::-;10598:1210;;;11142:5;;;;11138:52;;-1:-1:-1;;;;;11170:13:0;;;;;;:9;:13;;;;;:20;;-1:-1:-1;;11170:20:0;11186:4;11170:20;;;11138:52;11252:13;11235;11245:2;11235:9;:13::i;:::-;:30;;11227:88;;;;-1:-1:-1;;;11227:88:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;11352:12:0;;;;;;:8;:12;;;;;11367:3;11352:18;;11389:35;;11404:4;;11361:2;;11414:6;;11389:14;:35::i;:::-;11445:25;11473:44;11513:3;11473:35;11490:17;;11473:12;;:16;;:35;;;;:::i;:44::-;11445:72;;11536:22;11561:13;11571:2;11561:9;:13::i;:::-;11536:38;-1:-1:-1;11593:18:0;11614:26;11536:38;11633:6;11614:18;:26::i;:::-;11593:47;;11679:17;11662:14;:34;:68;;;;;11713:17;11700:10;:30;11662:68;11659:134;;;11755:18;11766:6;11755:10;:18::i;:::-;10598:1210;;;;10343:1544;;;;11840:35;11855:4;11861:2;11865:6;11873:1;11840:14;:35::i;:::-;10017:1877;;;:::o;1369:190::-;1455:7;1491:12;1483:6;;;;1475:29;;;;-1:-1:-1;;;1475:29:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;1527:5:0;;;1369:190::o;1961:189::-;2047:7;2082:12;2075:5;2067:28;;;;-1:-1:-1;;;2067:28:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2106:9;2122:1;2118;:5;;;;;;;1961:189;-1:-1:-1;;;;;1961:189:0:o;1567:246::-;1625:7;1649:6;1645:47;;-1:-1:-1;1679:1:0;1672:8;;1645:47;1714:5;;;1718:1;1714;:5;:1;1738:5;;;;;:10;1730:56;;;;-1:-1:-1;;;1730:56:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1038:179;1096:7;1128:5;;;1152:6;;;;1144:46;;;;;-1:-1:-1;;;1144:46:0;;;;;;;;;;;;;;;;;;;;;;;;;;;11906:861;12017:13;;-1:-1:-1;;;;;12011:19:0;;;12017:13;;12011:19;12008:198;;;12067:19;;:31;;12091:6;12067:23;:31::i;:::-;12045:19;:53;12008:198;;;12125:13;;-1:-1:-1;;;;;12117:21:0;;;12125:13;;12117:21;12114:92;;;12175:19;;:31;;12199:6;12175:23;:31::i;:::-;12153:19;:53;12114:92;12217:18;12238:27;12261:3;12238:18;:6;12249;12238:10;:18::i;:27::-;12217:48;-1:-1:-1;12276:22:0;12301;:6;12217:48;12301:10;:22::i;:::-;12276:47;;12344:21;12368:28;12379:16;;12368:6;:10;;:28;;;;:::i;:::-;12344:52;;12407:16;12426:36;12445:16;;12426:14;:18;;:36;;;;:::i;:::-;-1:-1:-1;;;;;12504:18:0;;;;;;:12;:18;;;;;;12407:55;;-1:-1:-1;12504:37:0;;12527:13;12504:22;:37::i;:::-;-1:-1:-1;;;;;12483:18:0;;;;;;;:12;:18;;;;;;:58;;;;12571:16;;;;;;;:30;;12592:8;12571:20;:30::i;:::-;-1:-1:-1;;;;;12552:16:0;;;;;;;:12;:16;;;;;;;;;:49;;;;12627:34;;;;;;;12552:16;;12627:34;;;;;;;;;;;;;12685:14;;12682:77;;12719:40;;;;;;;;12742:3;;-1:-1:-1;;;;;12719:40:0;;;;;;;;;;;;12682:77;11906:861;;;;;;;;:::o;9839:170::-;9911:32;9928:14;:7;9940:1;9928:11;:14::i;:::-;9911:12;;;:16;:32::i;:::-;9896:12;:47;;;9973:28;;-1:-1:-1;;6779:54:0;9973:14;:28::i;:::-;9954:16;:47;-1:-1:-1;9839:170:0:o;1225:136::-;1283:7;1310:43;1314:1;1317;1310:43;;;;;;;;;;;;;;;;;:3;:43::i

Swarm Source

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