ETH Price: $2,497.40 (+1.16%)

Token

Monie Bot (MONIE)
 

Overview

Max Total Supply

500,000 MONIE

Holders

48

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Filtered by Token Holder
xzer.eth
Balance
2,466.608086813 MONIE

Value
$0.00
0xf6de02022de4f4ae1441c208fd2c456b8dcf4b95
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:
MonieBot

Compiler Version
v0.8.23+commit.f704f362

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-12-14
*/

//SPDX-License-Identifier: Unlicensed

/**
Website:        https://moniebot.com
Telegram:       https://t.me/moniebotportal
Vault:          https://t.me/+0pmVJQuRPgMwMTZk
Twitter:        https://x.com/monie_bot
*/

pragma solidity 0.8.23;

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

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

}

contract Ownable is Context {
    address private _owner;
    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 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 MonieBot is Context, IERC20, Ownable {
    using SafeMath for uint256;
    string private constant _name = unicode"Monie Bot";
    string private constant _symbol = unicode"MONIE";

    mapping (address => uint256) private _balances;
    IUniswapV2Router02 private uniswapV2Router;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    uint256 private constant _tTotal = 500_000 * 10 ** 9;
    uint256 public _buyFees=15;
    uint256 public _sellFees=20;
    uint public finalBuyFees = 5;
    uint public finalSellFees = 5;
    uint256 private _preventSwapBefore=12;
    uint256 private _buyCount=0;
    uint256 private _swapThreshold = _tTotal / 1000;
    uint256 private _maxTaxSwap = _tTotal / 100;
    uint8 private constant _decimals = 9;

    uint256 public _maxWallet = _tTotal * 2 / 100;
    address private uniswapV2Pair;
    bool private inSwap = false;
    bool private swapEnabled = false;

    address payable _taxWallet;
    modifier lockTheSwap {
        inSwap = true;
        _;
        inSwap = false;
    }
    bool public tradingEnabled;

    constructor () {
        _taxWallet = payable(_msgSender());
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _isExcludedFromFee[address(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D)] = true;
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[address(this)] = true;
        _balances[_msgSender()] = _tTotal;
        emit Transfer(address(0), _msgSender(), _tTotal);
    }

    function name() public pure returns (string memory) {
        return _name;
    }

    function symbol() public pure returns (string memory) {
        return _symbol;
    }

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

    function totalSupply() public pure override returns (uint256) {
        return _tTotal;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    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 {
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        uint256 taxAmount=0;
        if (!_isExcludedFromFee[from] && !_isExcludedFromFee[to]) {
            require(tradingEnabled, "Trade is not live ");

            taxAmount = amount.mul(_buyFees).div(100);

            if (from == uniswapV2Pair) {
                require(balanceOf(to) + amount <= _maxWallet, "Max wallet");
                _buyCount++;
            }

            if (to != uniswapV2Pair) {
                require(balanceOf(to) + amount <= _maxWallet, "Max wallet");
            }


            if(to == uniswapV2Pair){
                taxAmount = amount.mul(_sellFees).div(100);
            }

            uint256 contractTokenBalance = balanceOf(address(this));
            if (!inSwap && to == uniswapV2Pair && swapEnabled && contractTokenBalance>_swapThreshold && _buyCount>_preventSwapBefore) {
                swapTokensForEth(min(amount,min(contractTokenBalance,_maxTaxSwap)));
                uint256 contractETHBalance = address(this).balance;
                if(contractETHBalance > 0) {
                     _taxWallet.transfer(address(this).balance);
                }
            }
        }

        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(from, address(this),taxAmount);
        }
        _balances[from]=_balances[from].sub(amount);
        _balances[to]=_balances[to].add(amount.sub(taxAmount));
        emit Transfer(from, to, amount.sub(taxAmount));
    }

    function min(uint256 a, uint256 b) private pure returns (uint256){
      return (a>b)?b:a;
    }

    function swapTokensForEth(uint256 tokenAmount) private lockTheSwap {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = uniswapV2Router.WETH();
        _approve(address(this), address(uniswapV2Router), tokenAmount);
        uniswapV2Router.swapExactTokensForETHSupportingFeeOnTransferTokens(
            tokenAmount,
            0,
            path,
            address(this),
            block.timestamp
        );
    }

    function excludeFromFees(address account, bool status) external onlyOwner {
        _isExcludedFromFee[account] = status;
    }

    function removeLimits() external onlyOwner{
        _maxWallet=_tTotal;
        _buyFees = finalBuyFees;
        _sellFees = finalSellFees;
    }

    function setBuyFees(uint fee) external onlyOwner {
        _buyFees = fee;
        require(fee <= 20, "Max 20% fees allowed");
    }

    function setSellFees(uint fee) external onlyOwner {
        _sellFees = fee;
        require(fee <= 20, "Max 20% fees allowed");
    }

    function setSwapEnabled(bool status) external onlyOwner {
        swapEnabled = status;
    }

    function setMaxWallet(uint amount) external onlyOwner {
        require(amount >= _tTotal / 1000, "Max wallet size can't be lower than 0.1%");
        _maxWallet = amount;
    }

    function makeMonie() external onlyOwner() {
        swapEnabled = true;
        tradingEnabled = true;
    }

    function setMarketingWallet(address payable wallet) external onlyOwner {
        _taxWallet = wallet;
    }

    receive() external payable {}
}

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":"_buyFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWallet","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_sellFees","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":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"},{"internalType":"bool","name":"status","type":"bool"}],"name":"excludeFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"finalBuyFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"finalSellFees","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"makeMonie","outputs":[],"stateMutability":"nonpayable","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":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"fee","type":"uint256"}],"name":"setBuyFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address payable","name":"wallet","type":"address"}],"name":"setMarketingWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"setMaxWallet","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"fee","type":"uint256"}],"name":"setSellFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"bool","name":"status","type":"bool"}],"name":"setSwapEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"pure","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"},{"stateMutability":"payable","type":"receive"}]

6080604052600f600555601460065560056007556005600855600c6009555f600a556103e86601c6bf526340006200003891906200032a565b600b556200004f60646601c6bf526340006200032a565b600c556064620000686601c6bf5263400060026200034a565b6200007491906200032a565b600d55600e805461ffff60a01b1916905534801562000091575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600f80546001600160a01b0319908116331790915560028054737a250d5630b4cf539739df2c5dacb4c659f2488d9216821790555f819052600460208181527f1fc5acd025f7cc5cf2691b667dba808b5a149bf27192c208fc66f1f0ec4222d7805460ff191660011790556040805163c45a015560e01b8152905163c45a01559382810193928290030181865afa15801562000170573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019062000196919062000374565b6001600160a01b031663c9c653963060025f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001f6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200021c919062000374565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801562000267573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906200028d919062000374565b600e80546001600160a01b0319166001600160a01b039283161790555f80549091168152600460209081526040808320805460ff199081166001908117909255308552828520805490911682179055338085529083528184206601c6bf5263400090819055915191825292917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a3620003a3565b5f826200034557634e487b7160e01b5f52601260045260245ffd5b500490565b80820281158282048414176200036e57634e487b7160e01b5f52601160045260245ffd5b92915050565b5f6020828403121562000385575f80fd5b81516001600160a01b03811681146200039c575f80fd5b9392505050565b6113ac80620003b15f395ff3fe608060405260043610610163575f3560e01c806382247ec0116100cd578063ae72e25611610087578063dd62ed3e11610062578063dd62ed3e1461041b578063de7cf7991461045f578063e01af92c14610474578063e4d1a87414610493575f80fd5b8063ae72e256146103c8578063c0246668146103dd578063dcf7aef3146103fc575f80fd5b806382247ec01461030e5780638da5cb5b1461032357806395927c251461034957806395d89b41146103685780639f470cd014610395578063a9059cbb146103a9575f80fd5b80634ada218b1161011e5780634ada218b146102525780635d0044ca146102725780635d098b381461029357806370a08231146102b2578063715018a6146102e6578063751039fc146102fa575f80fd5b80627388c11461016e57806306fdde0314610196578063095ea7b3146101d057806318160ddd146101ff57806323b872dd14610218578063313ce56714610237575f80fd5b3661016a57005b5f80fd5b348015610179575f80fd5b5061018360075481565b6040519081526020015b60405180910390f35b3480156101a1575f80fd5b50604080518082019091526009815268135bdb9a5948109bdd60ba1b60208201525b60405161018d9190611060565b3480156101db575f80fd5b506101ef6101ea3660046110c0565b6104a8565b604051901515815260200161018d565b34801561020a575f80fd5b506601c6bf52634000610183565b348015610223575f80fd5b506101ef6102323660046110ea565b6104be565b348015610242575f80fd5b506040516009815260200161018d565b34801561025d575f80fd5b50600f546101ef90600160a01b900460ff1681565b34801561027d575f80fd5b5061029161028c366004611128565b610525565b005b34801561029e575f80fd5b506102916102ad36600461113f565b6105cf565b3480156102bd575f80fd5b506101836102cc36600461113f565b6001600160a01b03165f9081526001602052604090205490565b3480156102f1575f80fd5b5061029161061a565b348015610305575f80fd5b5061029161068b565b348015610319575f80fd5b50610183600d5481565b34801561032e575f80fd5b505f546040516001600160a01b03909116815260200161018d565b348015610354575f80fd5b50610291610363366004611128565b6106cd565b348015610373575f80fd5b506040805180820190915260058152644d4f4e494560d81b60208201526101c3565b3480156103a0575f80fd5b50610291610746565b3480156103b4575f80fd5b506101ef6103c33660046110c0565b610797565b3480156103d3575f80fd5b5061018360085481565b3480156103e8575f80fd5b506102916103f736600461116e565b6107a3565b348015610407575f80fd5b50610291610416366004611128565b6107f6565b348015610426575f80fd5b506101836104353660046111a1565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b34801561046a575f80fd5b5061018360065481565b34801561047f575f80fd5b5061029161048e3660046111d8565b61086c565b34801561049e575f80fd5b5061018360055481565b5f6104b43384846108b3565b5060015b92915050565b5f6104ca848484610913565b61051b84336105168560405180606001604052806028815260200161134f602891396001600160a01b038a165f9081526003602090815260408083203384529091529020549190610d13565b6108b3565b5060019392505050565b5f546001600160a01b031633146105575760405162461bcd60e51b815260040161054e906111f1565b60405180910390fd5b61056a6103e86601c6bf5263400061123a565b8110156105ca5760405162461bcd60e51b815260206004820152602860248201527f4d61782077616c6c65742073697a652063616e2774206265206c6f776572207460448201526768616e20302e312560c01b606482015260840161054e565b600d55565b5f546001600160a01b031633146105f85760405162461bcd60e51b815260040161054e906111f1565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b031633146106435760405162461bcd60e51b815260040161054e906111f1565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106b45760405162461bcd60e51b815260040161054e906111f1565b6601c6bf52634000600d55600754600555600854600655565b5f546001600160a01b031633146106f65760405162461bcd60e51b815260040161054e906111f1565b600681905560148111156107435760405162461bcd60e51b815260206004820152601460248201527313585e080c8c09481999595cc8185b1b1bddd95960621b604482015260640161054e565b50565b5f546001600160a01b0316331461076f5760405162461bcd60e51b815260040161054e906111f1565b600e805460ff60a81b1916600160a81b179055600f805460ff60a01b1916600160a01b179055565b5f6104b4338484610913565b5f546001600160a01b031633146107cc5760405162461bcd60e51b815260040161054e906111f1565b6001600160a01b03919091165f908152600460205260409020805460ff1916911515919091179055565b5f546001600160a01b0316331461081f5760405162461bcd60e51b815260040161054e906111f1565b600581905560148111156107435760405162461bcd60e51b815260206004820152601460248201527313585e080c8c09481999595cc8185b1b1bddd95960621b604482015260640161054e565b5f546001600160a01b031633146108955760405162461bcd60e51b815260040161054e906111f1565b600e8054911515600160a81b0260ff60a81b19909216919091179055565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383165f9081526004602052604081205460ff1615801561095357506001600160a01b0383165f9081526004602052604090205460ff16155b15610bd657600f54600160a01b900460ff166109a65760405162461bcd60e51b815260206004820152601260248201527102a3930b2329034b9903737ba103634bb32960751b604482015260640161054e565b6109c660646109c060055485610d4b90919063ffffffff16565b90610dd0565b600e549091506001600160a01b0390811690851603610a5b57600d5482610a01856001600160a01b03165f9081526001602052604090205490565b610a0b9190611259565b1115610a465760405162461bcd60e51b815260206004820152600a60248201526913585e081dd85b1b195d60b21b604482015260640161054e565b600a8054905f610a558361126c565b91905055505b600e546001600160a01b03848116911614610ad757600d5482610a92856001600160a01b03165f9081526001602052604090205490565b610a9c9190611259565b1115610ad75760405162461bcd60e51b815260206004820152600a60248201526913585e081dd85b1b195d60b21b604482015260640161054e565b600e546001600160a01b0390811690841603610b0a57610b0760646109c060065485610d4b90919063ffffffff16565b90505b305f90815260016020526040902054600e54600160a01b900460ff16158015610b405750600e546001600160a01b038581169116145b8015610b555750600e54600160a81b900460ff165b8015610b625750600b5481115b8015610b715750600954600a54115b15610bd457610b93610b8e84610b8984600c54610e11565b610e11565b610e25565b478015610bd257600f546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610bd0573d5f803e3d5ffd5b505b505b505b8015610c4e57305f90815260016020526040902054610bf59082610f95565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c459085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610c709083610ff3565b6001600160a01b0385165f90815260016020526040902055610cb3610c958383610ff3565b6001600160a01b0385165f9081526001602052604090205490610f95565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610cfc8585610ff3565b60405190815260200160405180910390a350505050565b5f8184841115610d365760405162461bcd60e51b815260040161054e9190611060565b505f610d428486611284565b95945050505050565b5f825f03610d5a57505f6104b8565b5f610d658385611297565b905082610d72858361123a565b14610dc95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161054e565b9392505050565b5f610dc983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611034565b5f818311610e1f5782610dc9565b50919050565b600e805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610e6b57610e6b6112ae565b6001600160a01b03928316602091820292909201810191909152600254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ec2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ee691906112c2565b81600181518110610ef957610ef96112ae565b6001600160a01b039283166020918202929092010152600254610f1f91309116846108b3565b60025460405163791ac94760e01b81526001600160a01b039091169063791ac94790610f579085905f908690309042906004016112dd565b5f604051808303815f87803b158015610f6e575f80fd5b505af1158015610f80573d5f803e3d5ffd5b5050600e805460ff60a01b1916905550505050565b5f80610fa18385611259565b905083811015610dc95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161054e565b5f610dc983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d13565b5f81836110545760405162461bcd60e51b815260040161054e9190611060565b505f610d42848661123a565b5f602080835283518060208501525f5b8181101561108c57858101830151858201604001528201611070565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610743575f80fd5b5f80604083850312156110d1575f80fd5b82356110dc816110ac565b946020939093013593505050565b5f805f606084860312156110fc575f80fd5b8335611107816110ac565b92506020840135611117816110ac565b929592945050506040919091013590565b5f60208284031215611138575f80fd5b5035919050565b5f6020828403121561114f575f80fd5b8135610dc9816110ac565b80358015158114611169575f80fd5b919050565b5f806040838503121561117f575f80fd5b823561118a816110ac565b91506111986020840161115a565b90509250929050565b5f80604083850312156111b2575f80fd5b82356111bd816110ac565b915060208301356111cd816110ac565b809150509250929050565b5f602082840312156111e8575f80fd5b610dc98261115a565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b5f8261125457634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156104b8576104b8611226565b5f6001820161127d5761127d611226565b5060010190565b818103818111156104b8576104b8611226565b80820281158282048414176104b8576104b8611226565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156112d2575f80fd5b8151610dc9816110ac565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561132d5784516001600160a01b031683529383019391830191600101611308565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207962e0bfb1d4805f9145b16d3ce9b4a056653d02701365e1990f235ab8fc8c1164736f6c63430008170033

Deployed Bytecode

0x608060405260043610610163575f3560e01c806382247ec0116100cd578063ae72e25611610087578063dd62ed3e11610062578063dd62ed3e1461041b578063de7cf7991461045f578063e01af92c14610474578063e4d1a87414610493575f80fd5b8063ae72e256146103c8578063c0246668146103dd578063dcf7aef3146103fc575f80fd5b806382247ec01461030e5780638da5cb5b1461032357806395927c251461034957806395d89b41146103685780639f470cd014610395578063a9059cbb146103a9575f80fd5b80634ada218b1161011e5780634ada218b146102525780635d0044ca146102725780635d098b381461029357806370a08231146102b2578063715018a6146102e6578063751039fc146102fa575f80fd5b80627388c11461016e57806306fdde0314610196578063095ea7b3146101d057806318160ddd146101ff57806323b872dd14610218578063313ce56714610237575f80fd5b3661016a57005b5f80fd5b348015610179575f80fd5b5061018360075481565b6040519081526020015b60405180910390f35b3480156101a1575f80fd5b50604080518082019091526009815268135bdb9a5948109bdd60ba1b60208201525b60405161018d9190611060565b3480156101db575f80fd5b506101ef6101ea3660046110c0565b6104a8565b604051901515815260200161018d565b34801561020a575f80fd5b506601c6bf52634000610183565b348015610223575f80fd5b506101ef6102323660046110ea565b6104be565b348015610242575f80fd5b506040516009815260200161018d565b34801561025d575f80fd5b50600f546101ef90600160a01b900460ff1681565b34801561027d575f80fd5b5061029161028c366004611128565b610525565b005b34801561029e575f80fd5b506102916102ad36600461113f565b6105cf565b3480156102bd575f80fd5b506101836102cc36600461113f565b6001600160a01b03165f9081526001602052604090205490565b3480156102f1575f80fd5b5061029161061a565b348015610305575f80fd5b5061029161068b565b348015610319575f80fd5b50610183600d5481565b34801561032e575f80fd5b505f546040516001600160a01b03909116815260200161018d565b348015610354575f80fd5b50610291610363366004611128565b6106cd565b348015610373575f80fd5b506040805180820190915260058152644d4f4e494560d81b60208201526101c3565b3480156103a0575f80fd5b50610291610746565b3480156103b4575f80fd5b506101ef6103c33660046110c0565b610797565b3480156103d3575f80fd5b5061018360085481565b3480156103e8575f80fd5b506102916103f736600461116e565b6107a3565b348015610407575f80fd5b50610291610416366004611128565b6107f6565b348015610426575f80fd5b506101836104353660046111a1565b6001600160a01b039182165f90815260036020908152604080832093909416825291909152205490565b34801561046a575f80fd5b5061018360065481565b34801561047f575f80fd5b5061029161048e3660046111d8565b61086c565b34801561049e575f80fd5b5061018360055481565b5f6104b43384846108b3565b5060015b92915050565b5f6104ca848484610913565b61051b84336105168560405180606001604052806028815260200161134f602891396001600160a01b038a165f9081526003602090815260408083203384529091529020549190610d13565b6108b3565b5060019392505050565b5f546001600160a01b031633146105575760405162461bcd60e51b815260040161054e906111f1565b60405180910390fd5b61056a6103e86601c6bf5263400061123a565b8110156105ca5760405162461bcd60e51b815260206004820152602860248201527f4d61782077616c6c65742073697a652063616e2774206265206c6f776572207460448201526768616e20302e312560c01b606482015260840161054e565b600d55565b5f546001600160a01b031633146105f85760405162461bcd60e51b815260040161054e906111f1565b600f80546001600160a01b0319166001600160a01b0392909216919091179055565b5f546001600160a01b031633146106435760405162461bcd60e51b815260040161054e906111f1565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f546001600160a01b031633146106b45760405162461bcd60e51b815260040161054e906111f1565b6601c6bf52634000600d55600754600555600854600655565b5f546001600160a01b031633146106f65760405162461bcd60e51b815260040161054e906111f1565b600681905560148111156107435760405162461bcd60e51b815260206004820152601460248201527313585e080c8c09481999595cc8185b1b1bddd95960621b604482015260640161054e565b50565b5f546001600160a01b0316331461076f5760405162461bcd60e51b815260040161054e906111f1565b600e805460ff60a81b1916600160a81b179055600f805460ff60a01b1916600160a01b179055565b5f6104b4338484610913565b5f546001600160a01b031633146107cc5760405162461bcd60e51b815260040161054e906111f1565b6001600160a01b03919091165f908152600460205260409020805460ff1916911515919091179055565b5f546001600160a01b0316331461081f5760405162461bcd60e51b815260040161054e906111f1565b600581905560148111156107435760405162461bcd60e51b815260206004820152601460248201527313585e080c8c09481999595cc8185b1b1bddd95960621b604482015260640161054e565b5f546001600160a01b031633146108955760405162461bcd60e51b815260040161054e906111f1565b600e8054911515600160a81b0260ff60a81b19909216919091179055565b6001600160a01b038381165f8181526003602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383165f9081526004602052604081205460ff1615801561095357506001600160a01b0383165f9081526004602052604090205460ff16155b15610bd657600f54600160a01b900460ff166109a65760405162461bcd60e51b815260206004820152601260248201527102a3930b2329034b9903737ba103634bb32960751b604482015260640161054e565b6109c660646109c060055485610d4b90919063ffffffff16565b90610dd0565b600e549091506001600160a01b0390811690851603610a5b57600d5482610a01856001600160a01b03165f9081526001602052604090205490565b610a0b9190611259565b1115610a465760405162461bcd60e51b815260206004820152600a60248201526913585e081dd85b1b195d60b21b604482015260640161054e565b600a8054905f610a558361126c565b91905055505b600e546001600160a01b03848116911614610ad757600d5482610a92856001600160a01b03165f9081526001602052604090205490565b610a9c9190611259565b1115610ad75760405162461bcd60e51b815260206004820152600a60248201526913585e081dd85b1b195d60b21b604482015260640161054e565b600e546001600160a01b0390811690841603610b0a57610b0760646109c060065485610d4b90919063ffffffff16565b90505b305f90815260016020526040902054600e54600160a01b900460ff16158015610b405750600e546001600160a01b038581169116145b8015610b555750600e54600160a81b900460ff165b8015610b625750600b5481115b8015610b715750600954600a54115b15610bd457610b93610b8e84610b8984600c54610e11565b610e11565b610e25565b478015610bd257600f546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610bd0573d5f803e3d5ffd5b505b505b505b8015610c4e57305f90815260016020526040902054610bf59082610f95565b305f81815260016020526040908190209290925590516001600160a01b038616907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610c459085815260200190565b60405180910390a35b6001600160a01b0384165f90815260016020526040902054610c709083610ff3565b6001600160a01b0385165f90815260016020526040902055610cb3610c958383610ff3565b6001600160a01b0385165f9081526001602052604090205490610f95565b6001600160a01b038085165f8181526001602052604090209290925585167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610cfc8585610ff3565b60405190815260200160405180910390a350505050565b5f8184841115610d365760405162461bcd60e51b815260040161054e9190611060565b505f610d428486611284565b95945050505050565b5f825f03610d5a57505f6104b8565b5f610d658385611297565b905082610d72858361123a565b14610dc95760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b606482015260840161054e565b9392505050565b5f610dc983836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611034565b5f818311610e1f5782610dc9565b50919050565b600e805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610e6b57610e6b6112ae565b6001600160a01b03928316602091820292909201810191909152600254604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610ec2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ee691906112c2565b81600181518110610ef957610ef96112ae565b6001600160a01b039283166020918202929092010152600254610f1f91309116846108b3565b60025460405163791ac94760e01b81526001600160a01b039091169063791ac94790610f579085905f908690309042906004016112dd565b5f604051808303815f87803b158015610f6e575f80fd5b505af1158015610f80573d5f803e3d5ffd5b5050600e805460ff60a01b1916905550505050565b5f80610fa18385611259565b905083811015610dc95760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f770000000000604482015260640161054e565b5f610dc983836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610d13565b5f81836110545760405162461bcd60e51b815260040161054e9190611060565b505f610d42848661123a565b5f602080835283518060208501525f5b8181101561108c57858101830151858201604001528201611070565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610743575f80fd5b5f80604083850312156110d1575f80fd5b82356110dc816110ac565b946020939093013593505050565b5f805f606084860312156110fc575f80fd5b8335611107816110ac565b92506020840135611117816110ac565b929592945050506040919091013590565b5f60208284031215611138575f80fd5b5035919050565b5f6020828403121561114f575f80fd5b8135610dc9816110ac565b80358015158114611169575f80fd5b919050565b5f806040838503121561117f575f80fd5b823561118a816110ac565b91506111986020840161115a565b90509250929050565b5f80604083850312156111b2575f80fd5b82356111bd816110ac565b915060208301356111cd816110ac565b809150509250929050565b5f602082840312156111e8575f80fd5b610dc98261115a565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b5f52601160045260245ffd5b5f8261125457634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156104b8576104b8611226565b5f6001820161127d5761127d611226565b5060010190565b818103818111156104b8576104b8611226565b80820281158282048414176104b8576104b8611226565b634e487b7160e01b5f52603260045260245ffd5b5f602082840312156112d2575f80fd5b8151610dc9816110ac565b5f60a08201878352602087602085015260a0604085015281875180845260c0860191506020890193505f5b8181101561132d5784516001600160a01b031683529383019391830191600101611308565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212207962e0bfb1d4805f9145b16d3ce9b4a056653d02701365e1990f235ab8fc8c1164736f6c63430008170033

Deployed Bytecode Sourcemap

3662:6602:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4225:28;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;4225:28:0;;;;;;;;5426:83;;;;;;;;;;-1:-1:-1;5496:5:0;;;;;;;;;;;;-1:-1:-1;;;5496:5:0;;;;5426:83;;;;;;;:::i;6259:161::-;;;;;;;;;;-1:-1:-1;6259:161:0;;;;;:::i;:::-;;:::i;:::-;;;1370:14:1;;1363:22;1345:41;;1333:2;1318:18;6259:161:0;1205:187:1;5703:95:0;;;;;;;;;;-1:-1:-1;4134:17:0;5703:95;;6428:313;;;;;;;;;;-1:-1:-1;6428:313:0;;;;;:::i;:::-;;:::i;5612:83::-;;;;;;;;;;-1:-1:-1;5612:83:0;;4513:1;2000:36:1;;1988:2;1973:18;5612:83:0;1858:184:1;4815:26:0;;;;;;;;;;-1:-1:-1;4815:26:0;;;;-1:-1:-1;;;4815:26:0;;;;;;9808:180;;;;;;;;;;-1:-1:-1;9808:180:0;;;;;:::i;:::-;;:::i;:::-;;10115:109;;;;;;;;;;-1:-1:-1;10115:109:0;;;;;:::i;:::-;;:::i;5806:119::-;;;;;;;;;;-1:-1:-1;5806:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5899:18:0;5872:7;5899:18;;;:9;:18;;;;;;;5806:119;2743:148;;;;;;;;;;;;;:::i;9260:149::-;;;;;;;;;;;;;:::i;4523:45::-;;;;;;;;;;;;;;;;2529:79;;;;;;;;;;-1:-1:-1;2567:7:0;2594:6;2529:79;;-1:-1:-1;;;;;2594:6:0;;;2890:51:1;;2878:2;2863:18;2529:79:0;2744:203:1;9560:137:0;;;;;;;;;;-1:-1:-1;9560:137:0;;;;;:::i;:::-;;:::i;5517:87::-;;;;;;;;;;-1:-1:-1;5589:7:0;;;;;;;;;;;;-1:-1:-1;;;5589:7:0;;;;5517:87;;9996:111;;;;;;;;;;;;;:::i;5933:167::-;;;;;;;;;;-1:-1:-1;5933:167:0;;;;;:::i;:::-;;:::i;4260:29::-;;;;;;;;;;;;;;;;9123:129;;;;;;;;;;-1:-1:-1;9123:129:0;;;;;:::i;:::-;;:::i;9417:135::-;;;;;;;;;;-1:-1:-1;9417:135:0;;;;;:::i;:::-;;:::i;6108:143::-;;;;;;;;;;-1:-1:-1;6108:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6216:18:0;;;6189:7;6216:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6108:143;4191:27;;;;;;;;;;;;;;;;9705:95;;;;;;;;;;-1:-1:-1;9705:95:0;;;;;:::i;:::-;;:::i;4158:26::-;;;;;;;;;;;;;;;;6259:161;6334:4;6351:39;364:10;6374:7;6383:6;6351:8;:39::i;:::-;-1:-1:-1;6408:4:0;6259:161;;;;;:::o;6428:313::-;6526:4;6543:36;6553:6;6561:9;6572:6;6543:9;:36::i;:::-;6590:121;6599:6;364:10;6621:89;6659:6;6621:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6621:19:0;;;;;;:11;:19;;;;;;;;364:10;6621:33;;;;;;;;;;:37;:89::i;:::-;6590:8;:121::i;:::-;-1:-1:-1;6729:4:0;6428:313;;;;;:::o;9808:180::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;;;;;;;;;9891:14:::1;9901:4;4134:17;9891:14;:::i;:::-;9881:6;:24;;9873:77;;;::::0;-1:-1:-1;;;9873:77:0;;4932:2:1;9873:77:0::1;::::0;::::1;4914:21:1::0;4971:2;4951:18;;;4944:30;5010:34;4990:18;;;4983:62;-1:-1:-1;;;5061:18:1;;;5054:38;5109:19;;9873:77:0::1;4730:404:1::0;9873:77:0::1;9961:10;:19:::0;9808:180::o;10115:109::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;10197:10:::1;:19:::0;;-1:-1:-1;;;;;;10197:19:0::1;-1:-1:-1::0;;;;;10197:19:0;;;::::1;::::0;;;::::1;::::0;;10115:109::o;2743:148::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;2850:1:::1;2834:6:::0;;2813:40:::1;::::0;-1:-1:-1;;;;;2834:6:0;;::::1;::::0;2813:40:::1;::::0;2850:1;;2813:40:::1;2881:1;2864:19:::0;;-1:-1:-1;;;;;;2864:19:0::1;::::0;;2743:148::o;9260:149::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;4134:17:::1;9313:10;:18:::0;9353:12:::1;::::0;9342:8:::1;:23:::0;-1:-1:-1;9388:13:0;9376:9:::1;:25:::0;9260:149::o;9560:137::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;9621:9:::1;:15:::0;;;9662:2:::1;9655:9:::0;::::1;;9647:42;;;::::0;-1:-1:-1;;;9647:42:0;;5341:2:1;9647:42:0::1;::::0;::::1;5323:21:1::0;5380:2;5360:18;;;5353:30;-1:-1:-1;;;5399:18:1;;;5392:50;5459:18;;9647:42:0::1;5139:344:1::0;9647:42:0::1;9560:137:::0;:::o;9996:111::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;10049:11:::1;:18:::0;;-1:-1:-1;;;;10049:18:0::1;-1:-1:-1::0;;;10049:18:0::1;::::0;;10078:14:::1;:21:::0;;-1:-1:-1;;;;10078:21:0::1;-1:-1:-1::0;;;10078:21:0::1;::::0;;9996:111::o;5933:167::-;6011:4;6028:42;364:10;6052:9;6063:6;6028:9;:42::i;9123:129::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;9208:27:0;;;::::1;;::::0;;;:18:::1;:27;::::0;;;;:36;;-1:-1:-1;;9208:36:0::1;::::0;::::1;;::::0;;;::::1;::::0;;9123:129::o;9417:135::-;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;9477:8:::1;:14:::0;;;9517:2:::1;9510:9:::0;::::1;;9502:42;;;::::0;-1:-1:-1;;;9502:42:0;;5341:2:1;9502:42:0::1;::::0;::::1;5323:21:1::0;5380:2;5360:18;;;5353:30;-1:-1:-1;;;5399:18:1;;;5392:50;5459:18;;9502:42:0::1;5139:344:1::0;9705:95:0;2656:6;;-1:-1:-1;;;;;2656:6:0;364:10;2656:22;2648:67;;;;-1:-1:-1;;;2648:67:0;;;;;;;:::i;:::-;9772:11:::1;:20:::0;;;::::1;;-1:-1:-1::0;;;9772:20:0::1;-1:-1:-1::0;;;;9772:20:0;;::::1;::::0;;;::::1;::::0;;9705:95::o;6749:177::-;-1:-1:-1;;;;;6834:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;6886:32;;160:25:1;;;6886:32:0;;133:18:1;6886:32:0;;;;;;;6749:177;;;:::o;6934:1584::-;-1:-1:-1;;;;;7049:24:0;;7014:17;7049:24;;;:18;:24;;;;;;;;7048:25;:52;;;;-1:-1:-1;;;;;;7078:22:0;;;;;;:18;:22;;;;;;;;7077:23;7048:52;7044:1118;;;7125:14;;-1:-1:-1;;;7125:14:0;;;;7117:45;;;;-1:-1:-1;;;7117:45:0;;5690:2:1;7117:45:0;;;5672:21:1;5729:2;5709:18;;;5702:30;-1:-1:-1;;;5748:18:1;;;5741:48;5806:18;;7117:45:0;5488:342:1;7117:45:0;7191:29;7216:3;7191:20;7202:8;;7191:6;:10;;:20;;;;:::i;:::-;:24;;:29::i;:::-;7249:13;;7179:41;;-1:-1:-1;;;;;;7249:13:0;;;7241:21;;;;7237:151;;7317:10;;7307:6;7291:13;7301:2;-1:-1:-1;;;;;5899:18:0;5872:7;5899:18;;;:9;:18;;;;;;;5806:119;7291:13;:22;;;;:::i;:::-;:36;;7283:59;;;;-1:-1:-1;;;7283:59:0;;6167:2:1;7283:59:0;;;6149:21:1;6206:2;6186:18;;;6179:30;-1:-1:-1;;;6225:18:1;;;6218:40;6275:18;;7283:59:0;5965:334:1;7283:59:0;7361:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7237:151;7414:13;;-1:-1:-1;;;;;7408:19:0;;;7414:13;;7408:19;7404:119;;7482:10;;7472:6;7456:13;7466:2;-1:-1:-1;;;;;5899:18:0;5872:7;5899:18;;;:9;:18;;;;;;;5806:119;7456:13;:22;;;;:::i;:::-;:36;;7448:59;;;;-1:-1:-1;;;7448:59:0;;6167:2:1;7448:59:0;;;6149:21:1;6206:2;6186:18;;;6179:30;-1:-1:-1;;;6225:18:1;;;6218:40;6275:18;;7448:59:0;5965:334:1;7448:59:0;7550:13;;-1:-1:-1;;;;;7550:13:0;;;7544:19;;;;7541:100;;7595:30;7621:3;7595:21;7606:9;;7595:6;:10;;:21;;;;:::i;:30::-;7583:42;;7541:100;7706:4;7657:28;5899:18;;;:9;:18;;;;;;7732:6;;-1:-1:-1;;;7732:6:0;;;;7731:7;:30;;;;-1:-1:-1;7748:13:0;;-1:-1:-1;;;;;7742:19:0;;;7748:13;;7742:19;7731:30;:45;;;;-1:-1:-1;7765:11:0;;-1:-1:-1;;;7765:11:0;;;;7731:45;:84;;;;;7801:14;;7780:20;:35;7731:84;:116;;;;;7829:18;;7819:9;;:28;7731:116;7727:424;;;7868:67;7885:49;7889:6;7896:37;7900:20;7921:11;;7896:3;:37::i;:::-;7885:3;:49::i;:::-;7868:16;:67::i;:::-;7983:21;8026:22;;8023:113;;8074:10;;:42;;-1:-1:-1;;;;;8074:10:0;;;;8094:21;8074:42;;;;;:10;:42;:10;:42;8094:21;8074:10;:42;;;;;;;;;;;;;;;;;;;;;8023:113;7849:302;7727:424;7102:1060;7044:1118;8177:11;;8174:161;;8245:4;8227:24;;;;:9;:24;;;;;;:39;;8256:9;8227:28;:39::i;:::-;8220:4;8202:24;;;;:9;:24;;;;;;;:64;;;;8284:39;;-1:-1:-1;;;;;8284:39:0;;;;;;;8313:9;160:25:1;;148:2;133:18;;14:177;8284:39:0;;;;;;;;8174:161;-1:-1:-1;;;;;8361:15:0;;;;;;:9;:15;;;;;;:27;;8381:6;8361:19;:27::i;:::-;-1:-1:-1;;;;;8345:15:0;;;;;;:9;:15;;;;;:43;8413:40;8431:21;:6;8442:9;8431:10;:21::i;:::-;-1:-1:-1;;;;;8413:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;8399:13:0;;;;;;;:9;:13;;;;;:54;;;;8469:41;;;8488:21;:6;8499:9;8488:10;:21::i;:::-;8469:41;;160:25:1;;;148:2;133:18;8469:41:0;;;;;;;7003:1515;6934:1584;;;:::o;1421:190::-;1507:7;1543:12;1535:6;;;;1527:29;;;;-1:-1:-1;;;1527:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1567:9:0;1579:5;1583:1;1579;:5;:::i;:::-;1567:17;1421:190;-1:-1:-1;;;;;1421:190:0:o;1619:246::-;1677:7;1701:1;1706;1701:6;1697:47;;-1:-1:-1;1731:1:0;1724:8;;1697:47;1754:9;1766:5;1770:1;1766;:5;:::i;:::-;1754:17;-1:-1:-1;1799:1:0;1790:5;1794:1;1754:17;1790:5;:::i;:::-;:10;1782:56;;;;-1:-1:-1;;;1782:56:0;;6952:2:1;1782:56:0;;;6934:21:1;6991:2;6971:18;;;6964:30;7030:34;7010:18;;;7003:62;-1:-1:-1;;;7081:18:1;;;7074:31;7122:19;;1782:56:0;6750:397:1;1782:56:0;1856:1;1619:246;-1:-1:-1;;;1619:246:0:o;1873:132::-;1931:7;1958:39;1962:1;1965;1958:39;;;;;;;;;;;;;;;;;:3;:39::i;8526:98::-;8583:7;8610:1;8608;:3;8607:9;;8615:1;8607:9;;;-1:-1:-1;8613:1:0;8526:98;-1:-1:-1;8526:98:0:o;8632:483::-;4751:6;:13;;-1:-1:-1;;;;4751:13:0;-1:-1:-1;;;4751:13:0;;;8734:16:::1;::::0;;8748:1:::1;8734:16:::0;;;;;::::1;::::0;;-1:-1:-1;;8734:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;8734:16:0::1;8710:40;;8779:4;8761;8766:1;8761:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8761:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;8805:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;8805:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;8761:7;;8805:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;8795:4;8800:1;8795:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;8795:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;8870:15:::1;::::0;8838:62:::1;::::0;8855:4:::1;::::0;8870:15:::1;8888:11:::0;8838:8:::1;:62::i;:::-;8911:15;::::0;:196:::1;::::0;-1:-1:-1;;;8911:196:0;;-1:-1:-1;;;;;8911:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;8992:11;;8911:15:::1;::::0;9034:4;;9061::::1;::::0;9081:15:::1;::::0;8911:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;4787:6:0;:14;;-1:-1:-1;;;;4787:14:0;;;-1:-1:-1;;;;8632:483:0:o;1090:179::-;1148:7;;1180:5;1184:1;1180;:5;:::i;:::-;1168:17;;1209:1;1204;:6;;1196:46;;;;-1:-1:-1;;;1196:46:0;;8859:2:1;1196:46:0;;;8841:21:1;8898:2;8878:18;;;8871:30;8937:29;8917:18;;;8910:57;8984:18;;1196:46:0;8657:351:1;1277:136:0;1335:7;1362:43;1366:1;1369;1362:43;;;;;;;;;;;;;;;;;:3;:43::i;2013:189::-;2099:7;2134:12;2127:5;2119:28;;;;-1:-1:-1;;;2119:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2158:9:0;2170:5;2174:1;2170;:5;:::i;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;885:315;953:6;961;1014:2;1002:9;993:7;989:23;985:32;982:52;;;1030:1;1027;1020:12;982:52;1069:9;1056:23;1088:31;1113:5;1088:31;:::i;:::-;1138:5;1190:2;1175:18;;;;1162:32;;-1:-1:-1;;;885:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:180::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;-1:-1:-1;2198:23:1;;2047:180;-1:-1:-1;2047:180:1:o;2232:255::-;2299:6;2352:2;2340:9;2331:7;2327:23;2323:32;2320:52;;;2368:1;2365;2358:12;2320:52;2407:9;2394:23;2426:31;2451:5;2426:31;:::i;2952:160::-;3017:20;;3073:13;;3066:21;3056:32;;3046:60;;3102:1;3099;3092:12;3046:60;2952:160;;;:::o;3117:315::-;3182:6;3190;3243:2;3231:9;3222:7;3218:23;3214:32;3211:52;;;3259:1;3256;3249:12;3211:52;3298:9;3285:23;3317:31;3342:5;3317:31;:::i;:::-;3367:5;-1:-1:-1;3391:35:1;3422:2;3407:18;;3391:35;:::i;:::-;3381:45;;3117:315;;;;;:::o;3437:388::-;3505:6;3513;3566:2;3554:9;3545:7;3541:23;3537:32;3534:52;;;3582:1;3579;3572:12;3534:52;3621:9;3608:23;3640:31;3665:5;3640:31;:::i;:::-;3690:5;-1:-1:-1;3747:2:1;3732:18;;3719:32;3760:33;3719:32;3760:33;:::i;:::-;3812:7;3802:17;;;3437:388;;;;;:::o;3830:180::-;3886:6;3939:2;3927:9;3918:7;3914:23;3910:32;3907:52;;;3955:1;3952;3945:12;3907:52;3978:26;3994:9;3978:26;:::i;4015:356::-;4217:2;4199:21;;;4236:18;;;4229:30;4295:34;4290:2;4275:18;;4268:62;4362:2;4347:18;;4015:356::o;4376:127::-;4437:10;4432:3;4428:20;4425:1;4418:31;4468:4;4465:1;4458:15;4492:4;4489:1;4482:15;4508:217;4548:1;4574;4564:132;;4618:10;4613:3;4609:20;4606:1;4599:31;4653:4;4650:1;4643:15;4681:4;4678:1;4671:15;4564:132;-1:-1:-1;4710:9:1;;4508:217::o;5835:125::-;5900:9;;;5921:10;;;5918:36;;;5934:18;;:::i;6304:135::-;6343:3;6364:17;;;6361:43;;6384:18;;:::i;:::-;-1:-1:-1;6431:1:1;6420:13;;6304:135::o;6444:128::-;6511:9;;;6532:11;;;6529:37;;;6546:18;;:::i;6577:168::-;6650:9;;;6681;;6698:15;;;6692:22;;6678:37;6668:71;;6719:18;;:::i;7284:127::-;7345:10;7340:3;7336:20;7333:1;7326:31;7376:4;7373:1;7366:15;7400:4;7397:1;7390:15;7416:251;7486:6;7539:2;7527:9;7518:7;7514:23;7510:32;7507:52;;;7555:1;7552;7545:12;7507:52;7587:9;7581:16;7606:31;7631:5;7606:31;:::i;7672:980::-;7934:4;7982:3;7971:9;7967:19;8013:6;8002:9;7995:25;8039:2;8077:6;8072:2;8061:9;8057:18;8050:34;8120:3;8115:2;8104:9;8100:18;8093:31;8144:6;8179;8173:13;8210:6;8202;8195:22;8248:3;8237:9;8233:19;8226:26;;8287:2;8279:6;8275:15;8261:29;;8308:1;8318:195;8332:6;8329:1;8326:13;8318:195;;;8397:13;;-1:-1:-1;;;;;8393:39:1;8381:52;;8488:15;;;;8453:12;;;;8429:1;8347:9;8318:195;;;-1:-1:-1;;;;;;;8569:32:1;;;;8564:2;8549:18;;8542:60;-1:-1:-1;;;8633:3:1;8618:19;8611:35;8530:3;7672:980;-1:-1:-1;;;7672:980:1:o

Swarm Source

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