ETH Price: $3,105.87 (+0.07%)

Token

Ordigo Protocol (ORDIGO)
 

Overview

Max Total Supply

1,000,000,000 ORDIGO

Holders

237

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
501,031.362752592151134103 ORDIGO

Value
$0.00
0xb04a646f221c2b3e2a93663e378552508d9f2668
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:
OrdigoProtocol

Compiler Version
v0.8.19+commit.7dd6d404

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

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

//A gateway that allows you to enjoy the best of DeFi on BRC20 Chain and any chain from a single wallet.

//TG: https://t.me/ordigoprotocol
//Website: https://ordigoprotocol.io
//X: https://twitter.com/ordigoprotocol
//Medium: https://ordigo.medium.com 

// 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 OrdigoProtocol is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping (address => uint256) private _balances;
    mapping (address => mapping (address => uint256)) private _allowances;
    mapping (address => bool) private _isExcludedFromFee;
    address payable private constant _taxWallet = payable(0x8CC1aCa8B025Ebad010E43fA1A13D8618Ce82DDF);
    address private constant nullAddress = address(0xdead);

    uint256 private constant _initialBuyTax=20;
    uint256 private constant _initialSellTax=25;
    uint256 private _finalBuyTax=15;
    uint256 private _finalSellTax=20;
    uint256 private constant _reduceBuyTaxAt=30;
    uint256 private constant _reduceSellTaxAt=45;
    uint256 private constant _preventSwapBefore=40;
    uint256 private _buyCount=0;

    uint8 private constant _decimals = 18;
    uint256 private constant _tTotal = 1000000000 * 10**_decimals;
    string private constant _name = unicode"Ordigo Protocol";
    string private constant _symbol = unicode"ORDIGO";
    uint256 public _maxTxAmount = 10000000 * 10**_decimals;
    uint256 public _maxWalletSize = 10000000 * 10**_decimals;
    uint256 public constant _taxSwapThreshold= 1000000 * 10**_decimals;
    uint256 public constant _maxTaxSwap= 10000000 * 10**_decimals;

    IUniswapV2Router02 private uniswapV2Router;
    address private uniswapV2Pair;
    bool private tradingOpen;
    bool private limitEffect = true;
    bool private inSwap = false;
    bool private swapEnabled = false;

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

    constructor () {
        uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory())
            .createPair(address(this), uniswapV2Router.WETH()
        );
        _balances[_msgSender()] = _tTotal;
        _isExcludedFromFee[owner()] = true;
        _isExcludedFromFee[_taxWallet]= true;
        _isExcludedFromFee[address(this)] = 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) && spender != address(0), "ERC20: approve the zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0) && to != address(0), "ERC20: transfer the zero address");
        require(amount > 0, "Transfer amount must be greater than zero");
        uint256 taxAmount=0;

        if (from == uniswapV2Pair && to != address(uniswapV2Router) && ! _isExcludedFromFee[to] ) {
            if (limitEffect) {
                require(amount <= _maxTxAmount, "Exceeds the _maxTxAmount.");
                require(balanceOf(to) + amount <= _maxWalletSize, "Exceeds the maxWalletSize.");
            } 
            _buyCount++;
        }
        
        if ( to == uniswapV2Pair && from!= address(this) ){
            taxAmount = amount.mul 
            ((_buyCount>_reduceSellTaxAt)
                ?_finalSellTax:_initialSellTax).div(100
            );
        } else if (from == uniswapV2Pair && to!= address(this) ){
            taxAmount = amount.mul
            ((_buyCount>_reduceBuyTaxAt)
                ?_finalBuyTax:_initialBuyTax).div(100
            );
        }

        uint256 contractTokenBalance = balanceOf(address(this));
        if (
            !inSwap && 
            to == uniswapV2Pair && 
            swapEnabled && 
            contractTokenBalance>_taxSwapThreshold && 
            _buyCount>_preventSwapBefore
        ){
            swapTokensForEth((amount>_maxTaxSwap)?_maxTaxSwap:amount);
            uint256 contractETHBalance = address(this).balance;
            if(contractETHBalance > 0) {
                sendETHToFee(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 sendETHToFee(uint256 amount) private {
        _taxWallet.transfer(amount);
    }

    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 launch() external onlyOwner {
        require(!tradingOpen,"trading already open");
        uint256 tokenAmount = balanceOf(address(this)).sub(_tTotal.mul(_initialBuyTax).div(100));
        _approve(address(this), address(uniswapV2Router), _tTotal);
        uniswapV2Router.addLiquidityETH{value: address(this).balance} (
            address(this),
            tokenAmount,
            0,
            0,
            owner(),
            block.timestamp
        );
        IERC20(uniswapV2Pair).approve(address(uniswapV2Router), type(uint).max); 
        swapEnabled = true;
        tradingOpen = true;
    }

    function toggleLimits () external onlyOwner returns (bool){
        limitEffect = false;
        return true;
    }
    
    function optimzationTax (uint256 _value) external onlyOwner returns (bool) {
        require(_value <= 15 && tradingOpen, "Exceeds value");
        _finalBuyTax = _value;
        _finalSellTax = _value;
        return true;
    }

    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":"_maxTaxSwap","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_maxWalletSize","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_taxSwapThreshold","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":[],"name":"launch","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"optimzationTax","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"toggleLimits","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","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"}]

6080604052600f60045560146005556000600655620000216012600a620005a7565b620000309062989680620005bf565b600755620000416012600a620005a7565b620000509062989680620005bf565b600855600a805462ffffff60a81b1916600160a81b1790553480156200007557600080fd5b50600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600980546001600160a01b031916737a250d5630b4cf539739df2c5dacb4c659f2488d9081179091556200010b903090620000f56012600a620005a7565b6200010590633b9aca00620005bf565b620003bf565b600960009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200015f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620001859190620005d9565b6001600160a01b031663c9c6539630600960009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001e8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200020e9190620005d9565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200025c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002829190620005d9565b600a80546001600160a01b0319166001600160a01b0392909216919091178155620002b090601290620005a7565b620002c090633b9aca00620005bf565b336000908152600160208190526040822092909255600390620002eb6000546001600160a01b031690565b6001600160a01b0316815260208082019290925260409081016000908120805494151560ff1995861617905560039092527ff5f3b49c0418c2033341631dde105fbbe6ba9b062bd35fcd8c50e770c31712e5805484166001908117909155308352912080549092161790556200035e3390565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef620003986012600a620005a7565b620003a890633b9aca00620005bf565b60405190815260200160405180910390a362000604565b6001600160a01b03831615801590620003e057506001600160a01b03821615155b620004315760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f206164647265737300604482015260640160405180910390fd5b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004e9578160001904821115620004cd57620004cd62000492565b80851615620004db57918102915b93841c9390800290620004ad565b509250929050565b6000826200050257506001620005a1565b816200051157506000620005a1565b81600181146200052a5760028114620005355762000555565b6001915050620005a1565b60ff84111562000549576200054962000492565b50506001821b620005a1565b5060208310610133831016604e8410600b84101617156200057a575081810a620005a1565b620005868383620004a8565b80600019048211156200059d576200059d62000492565b0290505b92915050565b6000620005b860ff841683620004f1565b9392505050565b8082028115828204841417620005a157620005a162000492565b600060208284031215620005ec57600080fd5b81516001600160a01b0381168114620005b857600080fd5b61159880620006146000396000f3fe60806040526004361061010d5760003560e01c8063715018a61161009557806395d89b411161006457806395d89b41146102d2578063a9059cbb14610301578063bf474bed14610321578063cb4ac08714610336578063dd62ed3e1461035657600080fd5b8063715018a6146102695780637d1db4a51461027e5780638da5cb5b146102945780638f9a55c0146102bc57600080fd5b806314228b0b116100dc57806314228b0b146101cd57806318160ddd146101e257806323b872dd146101f7578063313ce5671461021757806370a082311461023357600080fd5b806301339c211461011957806306fdde0314610130578063095ea7b31461017a5780630faee56f146101aa57600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5061012e61039c565b005b34801561013c57600080fd5b5060408051808201909152600f81526e13dc991a59dbc8141c9bdd1bd8dbdb608a1b60208201525b604051610171919061114e565b60405180910390f35b34801561018657600080fd5b5061019a6101953660046111b4565b6105ef565b6040519015158152602001610171565b3480156101b657600080fd5b506101bf610606565b604051908152602001610171565b3480156101d957600080fd5b5061019a610622565b3480156101ee57600080fd5b506101bf610660565b34801561020357600080fd5b5061019a6102123660046111e0565b610681565b34801561022357600080fd5b5060405160128152602001610171565b34801561023f57600080fd5b506101bf61024e366004611221565b6001600160a01b031660009081526001602052604090205490565b34801561027557600080fd5b5061012e6106e5565b34801561028a57600080fd5b506101bf60075481565b3480156102a057600080fd5b506000546040516001600160a01b039091168152602001610171565b3480156102c857600080fd5b506101bf60085481565b3480156102de57600080fd5b506040805180820190915260068152654f524449474f60d01b6020820152610164565b34801561030d57600080fd5b5061019a61031c3660046111b4565b610759565b34801561032d57600080fd5b506101bf610766565b34801561034257600080fd5b5061019a61035136600461123e565b61077f565b34801561036257600080fd5b506101bf610371366004611257565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000546001600160a01b031633146103cf5760405162461bcd60e51b81526004016103c690611290565b60405180910390fd5b600a54600160a01b900460ff16156104205760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b60448201526064016103c6565b600061046b610455606461044f601461043b6012600a6113bf565b61044990633b9aca006113ce565b9061080e565b90610897565b30600090815260016020526040902054906108d9565b60095490915061049f9030906001600160a01b031661048c6012600a6113bf565b61049a90633b9aca006113ce565b61091b565b6009546001600160a01b031663f305d7194730846000806104c86000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610530573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061055591906113e5565b5050600a5460095460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156105ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d29190611413565b5050600a805463ff0000ff60a01b1916630100000160a01b179055565b60006105fc33848461091b565b5060015b92915050565b6106126012600a6113bf565b61061f90629896806113ce565b81565b600080546001600160a01b0316331461064d5760405162461bcd60e51b81526004016103c690611290565b50600a805460ff60a81b19169055600190565b600061066e6012600a6113bf565b61067c90633b9aca006113ce565b905090565b600061068e8484846109e8565b6106db843361049a8560405180606001604052806028815260200161153b602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ec8565b5060019392505050565b6000546001600160a01b0316331461070f5760405162461bcd60e51b81526004016103c690611290565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105fc3384846109e8565b6107726012600a6113bf565b61061f90620f42406113ce565b600080546001600160a01b031633146107aa5760405162461bcd60e51b81526004016103c690611290565b600f82111580156107c45750600a54600160a01b900460ff165b6108005760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b60448201526064016103c6565b506004819055600555600190565b60008260000361082057506000610600565b600061082c83856113ce565b9050826108398583611435565b146108905760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103c6565b9392505050565b600061089083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f02565b600061089083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ec8565b6001600160a01b0383161580159061093b57506001600160a01b03821615155b6109875760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f20616464726573730060448201526064016103c6565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610a0857506001600160a01b03821615155b610a545760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f206164647265737360448201526064016103c6565b60008111610ab65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103c6565b600a546000906001600160a01b038581169116148015610ae457506009546001600160a01b03848116911614155b8015610b0957506001600160a01b03831660009081526003602052604090205460ff16155b15610c0357600a54600160a81b900460ff1615610bed57600754821115610b725760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103c6565b60085482610b95856001600160a01b031660009081526001602052604090205490565b610b9f9190611457565b1115610bed5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103c6565b60068054906000610bfd8361146a565b91905055505b600a546001600160a01b038481169116148015610c2957506001600160a01b0384163014155b15610c5957610c52606461044f602d60065411610c47576019610c4b565b6005545b859061080e565b9050610caa565b600a546001600160a01b038581169116148015610c7f57506001600160a01b0383163014155b15610caa57610ca7606461044f601e60065411610c9d576014610c4b565b600454859061080e565b90505b30600090815260016020526040902054600a54600160b01b900460ff16158015610ce15750600a546001600160a01b038581169116145b8015610cf65750600a54600160b81b900460ff165b8015610d195750610d096012600a6113bf565b610d1690620f42406113ce565b81115b8015610d2757506028600654115b15610d8457610d72610d3b6012600a6113bf565b610d4890629896806113ce565b8411610d545783610f30565b610d606012600a6113bf565b610d6d90629896806113ce565b610f30565b478015610d8257610d82476110aa565b505b8115610dfe5730600090815260016020526040902054610da490836110ef565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610df59086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054610e2190846108d9565b6001600160a01b038616600090815260016020526040902055610e66610e4784846108d9565b6001600160a01b038616600090815260016020526040902054906110ef565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610eb086866108d9565b60405190815260200160405180910390a35050505050565b60008184841115610eec5760405162461bcd60e51b81526004016103c6919061114e565b506000610ef98486611483565b95945050505050565b60008183610f235760405162461bcd60e51b81526004016103c6919061114e565b506000610ef98486611435565b600a805460ff60b01b1916600160b01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f7857610f78611496565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610fd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff591906114ac565b8160018151811061100857611008611496565b6001600160a01b03928316602091820292909201015260095461102e913091168461091b565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906110679085906000908690309042906004016114c9565b600060405180830381600087803b15801561108157600080fd5b505af1158015611095573d6000803e3d6000fd5b5050600a805460ff60b01b1916905550505050565b604051738cc1aca8b025ebad010e43fa1a13d8618ce82ddf9082156108fc029083906000818181858888f193505050501580156110eb573d6000803e3d6000fd5b5050565b6000806110fc8385611457565b9050838110156108905760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103c6565b600060208083528351808285015260005b8181101561117b5785810183015185820160400152820161115f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146111b157600080fd5b50565b600080604083850312156111c757600080fd5b82356111d28161119c565b946020939093013593505050565b6000806000606084860312156111f557600080fd5b83356112008161119c565b925060208401356112108161119c565b929592945050506040919091013590565b60006020828403121561123357600080fd5b81356108908161119c565b60006020828403121561125057600080fd5b5035919050565b6000806040838503121561126a57600080fd5b82356112758161119c565b915060208301356112858161119c565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113165781600019048211156112fc576112fc6112c5565b8085161561130957918102915b93841c93908002906112e0565b509250929050565b60008261132d57506001610600565b8161133a57506000610600565b8160018114611350576002811461135a57611376565b6001915050610600565b60ff84111561136b5761136b6112c5565b50506001821b610600565b5060208310610133831016604e8410600b8410161715611399575081810a610600565b6113a383836112db565b80600019048211156113b7576113b76112c5565b029392505050565b600061089060ff84168361131e565b8082028115828204841417610600576106006112c5565b6000806000606084860312156113fa57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561142557600080fd5b8151801515811461089057600080fd5b60008261145257634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115610600576106006112c5565b60006001820161147c5761147c6112c5565b5060010190565b81810381811115610600576106006112c5565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156114be57600080fd5b81516108908161119c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115195784516001600160a01b0316835293830193918301916001016114f4565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203c022758155551bfd2f2f8c4354b6e9b349d6b52e7fc00f5b17be4f9e002aa9864736f6c63430008130033

Deployed Bytecode

0x60806040526004361061010d5760003560e01c8063715018a61161009557806395d89b411161006457806395d89b41146102d2578063a9059cbb14610301578063bf474bed14610321578063cb4ac08714610336578063dd62ed3e1461035657600080fd5b8063715018a6146102695780637d1db4a51461027e5780638da5cb5b146102945780638f9a55c0146102bc57600080fd5b806314228b0b116100dc57806314228b0b146101cd57806318160ddd146101e257806323b872dd146101f7578063313ce5671461021757806370a082311461023357600080fd5b806301339c211461011957806306fdde0314610130578063095ea7b31461017a5780630faee56f146101aa57600080fd5b3661011457005b600080fd5b34801561012557600080fd5b5061012e61039c565b005b34801561013c57600080fd5b5060408051808201909152600f81526e13dc991a59dbc8141c9bdd1bd8dbdb608a1b60208201525b604051610171919061114e565b60405180910390f35b34801561018657600080fd5b5061019a6101953660046111b4565b6105ef565b6040519015158152602001610171565b3480156101b657600080fd5b506101bf610606565b604051908152602001610171565b3480156101d957600080fd5b5061019a610622565b3480156101ee57600080fd5b506101bf610660565b34801561020357600080fd5b5061019a6102123660046111e0565b610681565b34801561022357600080fd5b5060405160128152602001610171565b34801561023f57600080fd5b506101bf61024e366004611221565b6001600160a01b031660009081526001602052604090205490565b34801561027557600080fd5b5061012e6106e5565b34801561028a57600080fd5b506101bf60075481565b3480156102a057600080fd5b506000546040516001600160a01b039091168152602001610171565b3480156102c857600080fd5b506101bf60085481565b3480156102de57600080fd5b506040805180820190915260068152654f524449474f60d01b6020820152610164565b34801561030d57600080fd5b5061019a61031c3660046111b4565b610759565b34801561032d57600080fd5b506101bf610766565b34801561034257600080fd5b5061019a61035136600461123e565b61077f565b34801561036257600080fd5b506101bf610371366004611257565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b6000546001600160a01b031633146103cf5760405162461bcd60e51b81526004016103c690611290565b60405180910390fd5b600a54600160a01b900460ff16156104205760405162461bcd60e51b81526020600482015260146024820152733a3930b234b7339030b63932b0b23c9037b832b760611b60448201526064016103c6565b600061046b610455606461044f601461043b6012600a6113bf565b61044990633b9aca006113ce565b9061080e565b90610897565b30600090815260016020526040902054906108d9565b60095490915061049f9030906001600160a01b031661048c6012600a6113bf565b61049a90633b9aca006113ce565b61091b565b6009546001600160a01b031663f305d7194730846000806104c86000546001600160a01b031690565b60405160e088901b6001600160e01b03191681526001600160a01b03958616600482015260248101949094526044840192909252606483015290911660848201524260a482015260c40160606040518083038185885af1158015610530573d6000803e3d6000fd5b50505050506040513d601f19601f8201168201806040525081019061055591906113e5565b5050600a5460095460405163095ea7b360e01b81526001600160a01b03918216600482015260001960248201529116915063095ea7b3906044016020604051808303816000875af11580156105ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105d29190611413565b5050600a805463ff0000ff60a01b1916630100000160a01b179055565b60006105fc33848461091b565b5060015b92915050565b6106126012600a6113bf565b61061f90629896806113ce565b81565b600080546001600160a01b0316331461064d5760405162461bcd60e51b81526004016103c690611290565b50600a805460ff60a81b19169055600190565b600061066e6012600a6113bf565b61067c90633b9aca006113ce565b905090565b600061068e8484846109e8565b6106db843361049a8560405180606001604052806028815260200161153b602891396001600160a01b038a1660009081526002602090815260408083203384529091529020549190610ec8565b5060019392505050565b6000546001600160a01b0316331461070f5760405162461bcd60e51b81526004016103c690611290565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b60006105fc3384846109e8565b6107726012600a6113bf565b61061f90620f42406113ce565b600080546001600160a01b031633146107aa5760405162461bcd60e51b81526004016103c690611290565b600f82111580156107c45750600a54600160a01b900460ff165b6108005760405162461bcd60e51b815260206004820152600d60248201526c457863656564732076616c756560981b60448201526064016103c6565b506004819055600555600190565b60008260000361082057506000610600565b600061082c83856113ce565b9050826108398583611435565b146108905760405162461bcd60e51b815260206004820152602160248201527f536166654d6174683a206d756c7469706c69636174696f6e206f766572666c6f6044820152607760f81b60648201526084016103c6565b9392505050565b600061089083836040518060400160405280601a81526020017f536166654d6174683a206469766973696f6e206279207a65726f000000000000815250610f02565b600061089083836040518060400160405280601e81526020017f536166654d6174683a207375627472616374696f6e206f766572666c6f770000815250610ec8565b6001600160a01b0383161580159061093b57506001600160a01b03821615155b6109875760405162461bcd60e51b815260206004820152601f60248201527f45524332303a20617070726f766520746865207a65726f20616464726573730060448201526064016103c6565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b03831615801590610a0857506001600160a01b03821615155b610a545760405162461bcd60e51b815260206004820181905260248201527f45524332303a207472616e7366657220746865207a65726f206164647265737360448201526064016103c6565b60008111610ab65760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016103c6565b600a546000906001600160a01b038581169116148015610ae457506009546001600160a01b03848116911614155b8015610b0957506001600160a01b03831660009081526003602052604090205460ff16155b15610c0357600a54600160a81b900460ff1615610bed57600754821115610b725760405162461bcd60e51b815260206004820152601960248201527f4578636565647320746865205f6d61785478416d6f756e742e0000000000000060448201526064016103c6565b60085482610b95856001600160a01b031660009081526001602052604090205490565b610b9f9190611457565b1115610bed5760405162461bcd60e51b815260206004820152601a60248201527f4578636565647320746865206d617857616c6c657453697a652e00000000000060448201526064016103c6565b60068054906000610bfd8361146a565b91905055505b600a546001600160a01b038481169116148015610c2957506001600160a01b0384163014155b15610c5957610c52606461044f602d60065411610c47576019610c4b565b6005545b859061080e565b9050610caa565b600a546001600160a01b038581169116148015610c7f57506001600160a01b0383163014155b15610caa57610ca7606461044f601e60065411610c9d576014610c4b565b600454859061080e565b90505b30600090815260016020526040902054600a54600160b01b900460ff16158015610ce15750600a546001600160a01b038581169116145b8015610cf65750600a54600160b81b900460ff165b8015610d195750610d096012600a6113bf565b610d1690620f42406113ce565b81115b8015610d2757506028600654115b15610d8457610d72610d3b6012600a6113bf565b610d4890629896806113ce565b8411610d545783610f30565b610d606012600a6113bf565b610d6d90629896806113ce565b610f30565b478015610d8257610d82476110aa565b505b8115610dfe5730600090815260016020526040902054610da490836110ef565b30600081815260016020526040908190209290925590516001600160a01b038716907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef90610df59086815260200190565b60405180910390a35b6001600160a01b038516600090815260016020526040902054610e2190846108d9565b6001600160a01b038616600090815260016020526040902055610e66610e4784846108d9565b6001600160a01b038616600090815260016020526040902054906110ef565b6001600160a01b0380861660008181526001602052604090209290925586167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610eb086866108d9565b60405190815260200160405180910390a35050505050565b60008184841115610eec5760405162461bcd60e51b81526004016103c6919061114e565b506000610ef98486611483565b95945050505050565b60008183610f235760405162461bcd60e51b81526004016103c6919061114e565b506000610ef98486611435565b600a805460ff60b01b1916600160b01b1790556040805160028082526060820183526000926020830190803683370190505090503081600081518110610f7857610f78611496565b6001600160a01b03928316602091820292909201810191909152600954604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa158015610fd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff591906114ac565b8160018151811061100857611008611496565b6001600160a01b03928316602091820292909201015260095461102e913091168461091b565b60095460405163791ac94760e01b81526001600160a01b039091169063791ac947906110679085906000908690309042906004016114c9565b600060405180830381600087803b15801561108157600080fd5b505af1158015611095573d6000803e3d6000fd5b5050600a805460ff60b01b1916905550505050565b604051738cc1aca8b025ebad010e43fa1a13d8618ce82ddf9082156108fc029083906000818181858888f193505050501580156110eb573d6000803e3d6000fd5b5050565b6000806110fc8385611457565b9050838110156108905760405162461bcd60e51b815260206004820152601b60248201527f536166654d6174683a206164646974696f6e206f766572666c6f77000000000060448201526064016103c6565b600060208083528351808285015260005b8181101561117b5785810183015185820160400152820161115f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b03811681146111b157600080fd5b50565b600080604083850312156111c757600080fd5b82356111d28161119c565b946020939093013593505050565b6000806000606084860312156111f557600080fd5b83356112008161119c565b925060208401356112108161119c565b929592945050506040919091013590565b60006020828403121561123357600080fd5b81356108908161119c565b60006020828403121561125057600080fd5b5035919050565b6000806040838503121561126a57600080fd5b82356112758161119c565b915060208301356112858161119c565b809150509250929050565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156113165781600019048211156112fc576112fc6112c5565b8085161561130957918102915b93841c93908002906112e0565b509250929050565b60008261132d57506001610600565b8161133a57506000610600565b8160018114611350576002811461135a57611376565b6001915050610600565b60ff84111561136b5761136b6112c5565b50506001821b610600565b5060208310610133831016604e8410600b8410161715611399575081810a610600565b6113a383836112db565b80600019048211156113b7576113b76112c5565b029392505050565b600061089060ff84168361131e565b8082028115828204841417610600576106006112c5565b6000806000606084860312156113fa57600080fd5b8351925060208401519150604084015190509250925092565b60006020828403121561142557600080fd5b8151801515811461089057600080fd5b60008261145257634e487b7160e01b600052601260045260246000fd5b500490565b80820180821115610600576106006112c5565b60006001820161147c5761147c6112c5565b5060010190565b81810381811115610600576106006112c5565b634e487b7160e01b600052603260045260246000fd5b6000602082840312156114be57600080fd5b81516108908161119c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156115195784516001600160a01b0316835293830193918301916001016114f4565b50506001600160a01b0396909616606085015250505060800152939250505056fe45524332303a207472616e7366657220616d6f756e74206578636565647320616c6c6f77616e6365a26469706673582212203c022758155551bfd2f2f8c4354b6e9b349d6b52e7fc00f5b17be4f9e002aa9864736f6c63430008130033

Deployed Bytecode Sourcemap

3729:7462:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10148:631;;;;;;;;;;;;;:::i;:::-;;5959:83;;;;;;;;;;-1:-1:-1;6029:5:0;;;;;;;;;;;;-1:-1:-1;;;6029:5:0;;;;5959:83;;;;;;;:::i;:::-;;;;;;;;6792:161;;;;;;;;;;-1:-1:-1;6792:161:0;;;;;:::i;:::-;;:::i;:::-;;;1188:14:1;;1181:22;1163:41;;1151:2;1136:18;6792:161:0;1023:187:1;4970:61:0;;;;;;;;;;;;;:::i;:::-;;;1361:25:1;;;1349:2;1334:18;4970:61:0;1215:177:1;10787:118:0;;;;;;;;;;;;;:::i;6236:95::-;;;;;;;;;;;;;:::i;6961:313::-;;;;;;;;;;-1:-1:-1;6961:313:0;;;;;:::i;:::-;;:::i;6145:83::-;;;;;;;;;;-1:-1:-1;6145:83:0;;4577:2;2000:36:1;;1988:2;1973:18;6145:83:0;1858:184:1;6339:119:0;;;;;;;;;;-1:-1:-1;6339:119:0;;;;;:::i;:::-;-1:-1:-1;;;;;6432:18:0;6405:7;6432:18;;;:9;:18;;;;;;;6339:119;2812:148;;;;;;;;;;;;;:::i;4773:54::-;;;;;;;;;;;;;;;;2598:79;;;;;;;;;;-1:-1:-1;2636:7:0;2663:6;2598:79;;-1:-1:-1;;;;;2663:6:0;;;2445:51:1;;2433:2;2418:18;2598:79:0;2299:203:1;4834:56:0;;;;;;;;;;;;;;;;6050:87;;;;;;;;;;-1:-1:-1;6122:7:0;;;;;;;;;;;;-1:-1:-1;;;6122:7:0;;;;6050:87;;6466:167;;;;;;;;;;-1:-1:-1;6466:167:0;;;;;:::i;:::-;;:::i;4897:66::-;;;;;;;;;;;;;:::i;10917:234::-;;;;;;;;;;-1:-1:-1;10917:234:0;;;;;:::i;:::-;;:::i;6641:143::-;;;;;;;;;;-1:-1:-1;6641:143:0;;;;;:::i;:::-;-1:-1:-1;;;;;6749:18:0;;;6722:7;6749:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6641:143;10148:631;2725:6;;-1:-1:-1;;;;;2725:6:0;435:10;2725:22;2717:67;;;;-1:-1:-1;;;2717:67:0;;;;;;;:::i;:::-;;;;;;;;;10205:11:::1;::::0;-1:-1:-1;;;10205:11:0;::::1;;;10204:12;10196:44;;;::::0;-1:-1:-1;;;10196:44:0;;3648:2:1;10196:44:0::1;::::0;::::1;3630:21:1::0;3687:2;3667:18;;;3660:30;-1:-1:-1;;;3706:18:1;;;3699:50;3766:18;;10196:44:0::1;3446:344:1::0;10196:44:0::1;10251:19;10273:66;10302:36;10334:3;10302:27;4216:2;4634:13;4577:2;4634;:13;:::i;:::-;4621:26;::::0;:10:::1;:26;:::i;:::-;10302:11:::0;::::1;:27::i;:::-;:31:::0;::::1;:36::i;:::-;10291:4;6405:7:::0;6432:18;;;:9;:18;;;;;;10273:28;::::1;:66::i;:::-;10382:15;::::0;10251:88;;-1:-1:-1;10350:58:0::1;::::0;10367:4:::1;::::0;-1:-1:-1;;;;;10382:15:0::1;4634:13;4577:2;4634;:13;:::i;:::-;4621:26;::::0;:10:::1;:26;:::i;:::-;10350:8;:58::i;:::-;10419:15;::::0;-1:-1:-1;;;;;10419:15:0::1;:31;10458:21;10504:4;10524:11:::0;10419:15:::1;::::0;10582:7:::1;2636::::0;2663:6;-1:-1:-1;;;;;2663:6:0;;2598:79;10582:7:::1;10419:211;::::0;::::1;::::0;;;-1:-1:-1;;;;;;10419:211:0;;;-1:-1:-1;;;;;5842:15:1;;;10419:211:0::1;::::0;::::1;5824:34:1::0;5874:18;;;5867:34;;;;5917:18;;;5910:34;;;;5960:18;;;5953:34;6024:15;;;6003:19;;;5996:44;10604:15:0::1;6056:19:1::0;;;6049:35;5758:19;;10419:211:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10648:13:0::1;::::0;10679:15:::1;::::0;10641:71:::1;::::0;-1:-1:-1;;;10641:71:0;;-1:-1:-1;;;;;10679:15:0;;::::1;10641:71;::::0;::::1;6580:51:1::0;-1:-1:-1;;6647:18:1;;;6640:34;10648:13:0;::::1;::::0;-1:-1:-1;10641:29:0::1;::::0;6553:18:1;;10641:71:0::1;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;-1:-1:-1::0;;10724:11:0::1;:18:::0;;-1:-1:-1;;;;10753:18:0;-1:-1:-1;;;10753:18:0;;;10148:631::o;6792:161::-;6867:4;6884:39;435:10;6907:7;6916:6;6884:8;:39::i;:::-;-1:-1:-1;6941:4:0;6792:161;;;;;:::o;4970:61::-;5018:13;4577:2;5018;:13;:::i;:::-;5007:24;;:8;:24;:::i;:::-;4970:61;:::o;10787:118::-;10840:4;2725:6;;-1:-1:-1;;;;;2725:6:0;435:10;2725:22;2717:67;;;;-1:-1:-1;;;2717:67:0;;;;;;;:::i;:::-;-1:-1:-1;10856:11:0::1;:19:::0;;-1:-1:-1;;;;10856:19:0::1;::::0;;;10787:118;:::o;6236:95::-;6289:7;4634:13;4577:2;4634;:13;:::i;:::-;4621:26;;:10;:26;:::i;:::-;6309:14;;6236:95;:::o;6961:313::-;7059:4;7076:36;7086:6;7094:9;7105:6;7076:9;:36::i;:::-;7123:121;7132:6;435:10;7154:89;7192:6;7154:89;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;7154:19:0;;;;;;:11;:19;;;;;;;;435:10;7154:33;;;;;;;;;;:37;:89::i;7123:121::-;-1:-1:-1;7262:4:0;6961:313;;;;;:::o;2812:148::-;2725:6;;-1:-1:-1;;;;;2725:6:0;435:10;2725:22;2717:67;;;;-1:-1:-1;;;2717:67:0;;;;;;;:::i;:::-;2919:1:::1;2903:6:::0;;2882:40:::1;::::0;-1:-1:-1;;;;;2903:6:0;;::::1;::::0;2882:40:::1;::::0;2919:1;;2882:40:::1;2950:1;2933:19:::0;;-1:-1:-1;;;;;;2933:19:0::1;::::0;;2812:148::o;6466:167::-;6544:4;6561:42;435:10;6585:9;6596:6;6561:9;:42::i;4897:66::-;4950:13;4577:2;4950;:13;:::i;:::-;4940:23;;:7;:23;:::i;10917:234::-;10986:4;2725:6;;-1:-1:-1;;;;;2725:6:0;435:10;2725:22;2717:67;;;;-1:-1:-1;;;2717:67:0;;;;;;;:::i;:::-;11021:2:::1;11011:6;:12;;:27;;;;-1:-1:-1::0;11027:11:0::1;::::0;-1:-1:-1;;;11027:11:0;::::1;;;11011:27;11003:53;;;::::0;-1:-1:-1;;;11003:53:0;;7169:2:1;11003:53:0::1;::::0;::::1;7151:21:1::0;7208:2;7188:18;;;7181:30;-1:-1:-1;;;7227:18:1;;;7220:43;7280:18;;11003:53:0::1;6967:337:1::0;11003:53:0::1;-1:-1:-1::0;11067:12:0::1;:21:::0;;;11099:13:::1;:22:::0;11139:4:::1;::::0;10917:234::o;1690:246::-;1748:7;1772:1;1777;1772:6;1768:47;;-1:-1:-1;1802:1:0;1795:8;;1768:47;1825:9;1837:5;1841:1;1837;:5;:::i;:::-;1825:17;-1:-1:-1;1870:1:0;1861:5;1865:1;1825:17;1861:5;:::i;:::-;:10;1853:56;;;;-1:-1:-1;;;1853:56:0;;7733:2:1;1853:56:0;;;7715:21:1;7772:2;7752:18;;;7745:30;7811:34;7791:18;;;7784:62;-1:-1:-1;;;7862:18:1;;;7855:31;7903:19;;1853:56:0;7531:397:1;1853:56:0;1927:1;1690:246;-1:-1:-1;;;1690:246:0:o;1944:132::-;2002:7;2029:39;2033:1;2036;2029:39;;;;;;;;;;;;;;;;;:3;:39::i;1348:136::-;1406:7;1433:43;1437:1;1440;1433:43;;;;;;;;;;;;;;;;;:3;:43::i;7282:276::-;-1:-1:-1;;;;;7375:19:0;;;;;;:44;;-1:-1:-1;;;;;;7398:21:0;;;;7375:44;7367:88;;;;-1:-1:-1;;;7367:88:0;;8135:2:1;7367:88:0;;;8117:21:1;8174:2;8154:18;;;8147:30;8213:33;8193:18;;;8186:61;8264:18;;7367:88:0;7933:355:1;7367:88:0;-1:-1:-1;;;;;7466:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7518:32;;1361:25:1;;;7518:32:0;;1334:18:1;7518:32:0;;;;;;;7282:276;;;:::o;7566:1983::-;-1:-1:-1;;;;;7654:18:0;;;;;;:38;;-1:-1:-1;;;;;;7676:16:0;;;;7654:38;7646:83;;;;-1:-1:-1;;;7646:83:0;;8495:2:1;7646:83:0;;;8477:21:1;;;8514:18;;;8507:30;8573:34;8553:18;;;8546:62;8625:18;;7646:83:0;8293:356:1;7646:83:0;7757:1;7748:6;:10;7740:64;;;;-1:-1:-1;;;7740:64:0;;8856:2:1;7740:64:0;;;8838:21:1;8895:2;8875:18;;;8868:30;8934:34;8914:18;;;8907:62;-1:-1:-1;;;8985:18:1;;;8978:39;9034:19;;7740:64:0;8654:405:1;7740:64:0;7859:13;;7815:17;;-1:-1:-1;;;;;7851:21:0;;;7859:13;;7851:21;:55;;;;-1:-1:-1;7890:15:0;;-1:-1:-1;;;;;7876:30:0;;;7890:15;;7876:30;;7851:55;:83;;;;-1:-1:-1;;;;;;7912:22:0;;;;;;:18;:22;;;;;;;;7910:24;7851:83;7847:353;;;7956:11;;-1:-1:-1;;;7956:11:0;;;;7952:210;;;8006:12;;7996:6;:22;;7988:60;;;;-1:-1:-1;;;7988:60:0;;9266:2:1;7988:60:0;;;9248:21:1;9305:2;9285:18;;;9278:30;9344:27;9324:18;;;9317:55;9389:18;;7988:60:0;9064:349:1;7988:60:0;8101:14;;8091:6;8075:13;8085:2;-1:-1:-1;;;;;6432:18:0;6405:7;6432:18;;;:9;:18;;;;;;;6339:119;8075:13;:22;;;;:::i;:::-;:40;;8067:79;;;;-1:-1:-1;;;8067:79:0;;9750:2:1;8067:79:0;;;9732:21:1;9789:2;9769:18;;;9762:30;9828:28;9808:18;;;9801:56;9874:18;;8067:79:0;9548:350:1;8067:79:0;8177:9;:11;;;:9;:11;;;:::i;:::-;;;;;;7847:353;8231:13;;-1:-1:-1;;;;;8225:19:0;;;8231:13;;8225:19;:43;;;;-1:-1:-1;;;;;;8248:20:0;;8263:4;8248:20;;8225:43;8220:431;;;8297:126;8405:3;8297:103;4444:2;8324:9;;:26;8323:76;;4266:2;8323:76;;;8370:13;;8323:76;8297:6;;:10;:103::i;:126::-;8285:138;;8220:431;;;8453:13;;-1:-1:-1;;;;;8445:21:0;;;8453:13;;8445:21;:43;;;;-1:-1:-1;;;;;;8470:18:0;;8483:4;8470:18;;8445:43;8441:210;;;8517:122;8621:3;8517:99;4393:2;8543:9;;:25;8542:73;;4216:2;8542:73;;;8588:12;;8517:6;;:10;:99::i;:122::-;8505:134;;8441:210;8712:4;8663:28;6432:18;;;:9;:18;;;;;;8748:6;;-1:-1:-1;;;8748:6:0;;;;8747:7;:44;;;;-1:-1:-1;8778:13:0;;-1:-1:-1;;;;;8772:19:0;;;8778:13;;8772:19;8747:44;:73;;;;-1:-1:-1;8809:11:0;;-1:-1:-1;;;8809:11:0;;;;8747:73;:129;;;;-1:-1:-1;4950:13:0;4577:2;4950;:13;:::i;:::-;4940:23;;:7;:23;:::i;:::-;8838:20;:38;8747:129;:175;;;;;4497:2;8894:9;;:28;8747:175;8729:464;;;8948:57;5018:13;4577:2;5018;:13;:::i;:::-;5007:24;;:8;:24;:::i;:::-;8966:6;:18;8965:39;;8998:6;8948:16;:57::i;8965:39::-;5018:13;4577:2;5018;:13;:::i;:::-;5007:24;;:8;:24;:::i;:::-;8948:16;:57::i;:::-;9049:21;9088:22;;9085:97;;9131:35;9144:21;9131:12;:35::i;:::-;8933:260;8729:464;9208:11;;9205:161;;9276:4;9258:24;;;;:9;:24;;;;;;:39;;9287:9;9258:28;:39::i;:::-;9251:4;9233:24;;;;:9;:24;;;;;;;:64;;;;9315:39;;-1:-1:-1;;;;;9315:39:0;;;;;;;9344:9;1361:25:1;;1349:2;1334:18;;1215:177;9315:39:0;;;;;;;;9205:161;-1:-1:-1;;;;;9392:15:0;;;;;;:9;:15;;;;;;:27;;9412:6;9392:19;:27::i;:::-;-1:-1:-1;;;;;9376:15:0;;;;;;:9;:15;;;;;:43;9444:40;9462:21;:6;9473:9;9462:10;:21::i;:::-;-1:-1:-1;;;;;9444:13:0;;;;;;:9;:13;;;;;;;:17;:40::i;:::-;-1:-1:-1;;;;;9430:13:0;;;;;;;:9;:13;;;;;:54;;;;9500:41;;;9519:21;:6;9530:9;9519:10;:21::i;:::-;9500:41;;1361:25:1;;;1349:2;1334:18;9500:41:0;;;;;;;7635:1914;;7566:1983;;;:::o;1492:190::-;1578:7;1614:12;1606:6;;;;1598:29;;;;-1:-1:-1;;;1598:29:0;;;;;;;;:::i;:::-;-1:-1:-1;1638:9:0;1650:5;1654:1;1650;:5;:::i;:::-;1638:17;1492:190;-1:-1:-1;;;;;1492:190:0:o;2084:189::-;2170:7;2205:12;2198:5;2190:28;;;;-1:-1:-1;;;2190:28:0;;;;;;;;:::i;:::-;-1:-1:-1;2229:9:0;2241:5;2245:1;2241;:5;:::i;9657:483::-;5301:6;:13;;-1:-1:-1;;;;5301:13:0;-1:-1:-1;;;5301:13:0;;;9759:16:::1;::::0;;9773:1:::1;9759:16:::0;;;;;::::1;::::0;;-1:-1:-1;;9759:16:0::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;9759:16:0::1;9735:40;;9804:4;9786;9791:1;9786:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9786:23:0;;::::1;:7;::::0;;::::1;::::0;;;;;;:23;;;;9830:15:::1;::::0;:22:::1;::::0;;-1:-1:-1;;;9830:22:0;;;;:15;;;::::1;::::0;:20:::1;::::0;:22:::1;::::0;;::::1;::::0;9786:7;;9830:22;;;;;:15;:22:::1;;;;;;;;;::::0;::::1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;9820:4;9825:1;9820:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;9820:32:0;;::::1;:7;::::0;;::::1;::::0;;;;;:32;9895:15:::1;::::0;9863:62:::1;::::0;9880:4:::1;::::0;9895:15:::1;9913:11:::0;9863:8:::1;:62::i;:::-;9936:15;::::0;:196:::1;::::0;-1:-1:-1;;;9936:196:0;;-1:-1:-1;;;;;9936:15:0;;::::1;::::0;:66:::1;::::0;:196:::1;::::0;10017:11;;9936:15:::1;::::0;10059:4;;10086::::1;::::0;10106:15:::1;::::0;9936:196:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5337:6:0;:14;;-1:-1:-1;;;;5337:14:0;;;-1:-1:-1;;;;9657:483:0:o;9557:92::-;9614:27;;4063:42;;9614:27;;;;;9634:6;;9614:27;;;;9634:6;4063:42;9614:27;;;;;;;;;;;;;;;;;;;;;9557:92;:::o;1161:179::-;1219:7;;1251:5;1255:1;1251;:5;:::i;:::-;1239:17;;1280:1;1275;:6;;1267:46;;;;-1:-1:-1;;;1267:46:0;;11883:2:1;1267:46:0;;;11865:21:1;11922:2;11902:18;;;11895:30;11961:29;11941:18;;;11934:57;12008:18;;1267:46:0;11681:351:1;14:548;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:180::-;2566:6;2619:2;2607:9;2598:7;2594:23;2590:32;2587:52;;;2635:1;2632;2625:12;2587:52;-1:-1:-1;2658:23:1;;2507:180;-1:-1:-1;2507:180:1:o;2692:388::-;2760:6;2768;2821:2;2809:9;2800:7;2796:23;2792:32;2789:52;;;2837:1;2834;2827:12;2789:52;2876:9;2863:23;2895:31;2920:5;2895:31;:::i;:::-;2945:5;-1:-1:-1;3002:2:1;2987:18;;2974:32;3015:33;2974:32;3015:33;:::i;:::-;3067:7;3057:17;;;2692:388;;;;;:::o;3085:356::-;3287:2;3269:21;;;3306:18;;;3299:30;3365:34;3360:2;3345:18;;3338:62;3432:2;3417:18;;3085:356::o;3795:127::-;3856:10;3851:3;3847:20;3844:1;3837:31;3887:4;3884:1;3877:15;3911:4;3908:1;3901:15;3927:422;4016:1;4059:5;4016:1;4073:270;4094:7;4084:8;4081:21;4073:270;;;4153:4;4149:1;4145:6;4141:17;4135:4;4132:27;4129:53;;;4162:18;;:::i;:::-;4212:7;4202:8;4198:22;4195:55;;;4232:16;;;;4195:55;4311:22;;;;4271:15;;;;4073:270;;;4077:3;3927:422;;;;;:::o;4354:806::-;4403:5;4433:8;4423:80;;-1:-1:-1;4474:1:1;4488:5;;4423:80;4522:4;4512:76;;-1:-1:-1;4559:1:1;4573:5;;4512:76;4604:4;4622:1;4617:59;;;;4690:1;4685:130;;;;4597:218;;4617:59;4647:1;4638:10;;4661:5;;;4685:130;4722:3;4712:8;4709:17;4706:43;;;4729:18;;:::i;:::-;-1:-1:-1;;4785:1:1;4771:16;;4800:5;;4597:218;;4899:2;4889:8;4886:16;4880:3;4874:4;4871:13;4867:36;4861:2;4851:8;4848:16;4843:2;4837:4;4834:12;4830:35;4827:77;4824:159;;;-1:-1:-1;4936:19:1;;;4968:5;;4824:159;5015:34;5040:8;5034:4;5015:34;:::i;:::-;5085:6;5081:1;5077:6;5073:19;5064:7;5061:32;5058:58;;;5096:18;;:::i;:::-;5134:20;;4354:806;-1:-1:-1;;;4354:806:1:o;5165:140::-;5223:5;5252:47;5293:4;5283:8;5279:19;5273:4;5252:47;:::i;5310:168::-;5383:9;;;5414;;5431:15;;;5425:22;;5411:37;5401:71;;5452:18;;:::i;6095:306::-;6183:6;6191;6199;6252:2;6240:9;6231:7;6227:23;6223:32;6220:52;;;6268:1;6265;6258:12;6220:52;6297:9;6291:16;6281:26;;6347:2;6336:9;6332:18;6326:25;6316:35;;6391:2;6380:9;6376:18;6370:25;6360:35;;6095:306;;;;;:::o;6685:277::-;6752:6;6805:2;6793:9;6784:7;6780:23;6776:32;6773:52;;;6821:1;6818;6811:12;6773:52;6853:9;6847:16;6906:5;6899:13;6892:21;6885:5;6882:32;6872:60;;6928:1;6925;6918:12;7309:217;7349:1;7375;7365:132;;7419:10;7414:3;7410:20;7407:1;7400:31;7454:4;7451:1;7444:15;7482:4;7479:1;7472:15;7365:132;-1:-1:-1;7511:9:1;;7309:217::o;9418:125::-;9483:9;;;9504:10;;;9501:36;;;9517:18;;:::i;9903:135::-;9942:3;9963:17;;;9960:43;;9983:18;;:::i;:::-;-1:-1:-1;10030:1:1;10019:13;;9903:135::o;10043:128::-;10110:9;;;10131:11;;;10128:37;;;10145:18;;:::i;10308:127::-;10369:10;10364:3;10360:20;10357:1;10350:31;10400:4;10397:1;10390:15;10424:4;10421:1;10414:15;10440:251;10510:6;10563:2;10551:9;10542:7;10538:23;10534:32;10531:52;;;10579:1;10576;10569:12;10531:52;10611:9;10605:16;10630:31;10655:5;10630:31;:::i;10696:980::-;10958:4;11006:3;10995:9;10991:19;11037:6;11026:9;11019:25;11063:2;11101:6;11096:2;11085:9;11081:18;11074:34;11144:3;11139:2;11128:9;11124:18;11117:31;11168:6;11203;11197:13;11234:6;11226;11219:22;11272:3;11261:9;11257:19;11250:26;;11311:2;11303:6;11299:15;11285:29;;11332:1;11342:195;11356:6;11353:1;11350:13;11342:195;;;11421:13;;-1:-1:-1;;;;;11417:39:1;11405:52;;11512:15;;;;11477:12;;;;11453:1;11371:9;11342:195;;;-1:-1:-1;;;;;;;11593:32:1;;;;11588:2;11573:18;;11566:60;-1:-1:-1;;;11657:3:1;11642:19;11635:35;11554:3;10696:980;-1:-1:-1;;;10696:980:1:o

Swarm Source

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