ETH Price: $2,376.11 (-3.24%)

Token

Courage The Cowardly Dog (COURAGE)
 

Overview

Max Total Supply

4,206,900,000,000 COURAGE

Holders

52

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
45,412,863,762.741708094860107657 COURAGE

Value
$0.00
0xc4ba5e96206529f80ad85340ff49e3be512b7710
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:
CourageTheCowardlyDog

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2023-05-09
*/

/* SPDX-License-Identifier: MIT */

/*
    W: https://couragethecowardlydog.network/ 
    T: https://twitter.com/CourageERC
*/

/* 
    Courage The Cowardly Dog
    TG: https://t.me/CouragePortal
*/

pragma solidity <= 0.8.18 > 0.8.0;

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

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

interface IERC20 {
    function totalSupply() external view returns (uint256);

    function balanceOf(address account) external view returns (uint256);

    function transfer(address recipient, uint256 amount) external returns (bool);

    function allowance(address owner, address spender) external view returns (uint256);

    function approve(address spender, uint256 amount) external returns (bool);

    function transferFrom(
        address sender,
        address recipient,
        uint256 amount
    ) external returns (bool);

    event Transfer(address indexed from, address indexed to, uint256 value);

    event Approval(address indexed owner, address indexed spender, uint256 value);
}

interface IERC20Metadata is IERC20 {

    function name() external view returns (string memory);

    function symbol() external view returns (string memory);

    function decimals() external view returns (uint8);
}


contract ERC20 is Context, IERC20, IERC20Metadata {
    mapping (address => uint256) internal _balances;

    mapping (address => mapping (address => uint256)) internal _allowances;

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    constructor (string memory name_, string memory symbol_) {
        _name = name_;
        _symbol = symbol_;
    }


    function name() public view virtual override returns (string memory) {
        return _name;
    }

    function symbol() public view virtual override returns (string memory) {
        return _symbol;
    }

    function decimals() public view virtual override returns (uint8) {
        return 18;
    }

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

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

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

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

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

    function transferFrom(address sender, address recipient, uint256 amount) public virtual override returns (bool) {
        _transfer(sender, recipient, amount);

        uint256 currentAllowance = _allowances[sender][_msgSender()];
        require(currentAllowance >= amount, "ERC20: transfer amount exceeds allowance");
        _approve(sender, _msgSender(), currentAllowance - amount);

        return true;
    }

    function increaseAllowance(address spender, uint256 addedValue) public virtual returns (bool) {
        _approve(_msgSender(), spender, _allowances[_msgSender()][spender] + addedValue);
        return true;
    }

    function decreaseAllowance(address spender, uint256 subtractedValue) public virtual returns (bool) {
        uint256 currentAllowance = _allowances[_msgSender()][spender];
        require(currentAllowance >= subtractedValue, "ERC20: decreased allowance below zero");
        _approve(_msgSender(), spender, currentAllowance - subtractedValue);

        return true;
    }

    function _transfer(address sender, address recipient, uint256 amount) internal virtual {
        require(sender != address(0), "ERC20: transfer from the zero address");
        require(recipient != address(0), "ERC20: transfer to the zero address");

        _beforeTokenTransfer(sender, recipient, amount);

        uint256 senderBalance = _balances[sender];
        require(senderBalance >= amount, "ERC20: transfer amount exceeds balance");
        _balances[sender] = senderBalance - amount;
        _balances[recipient] += amount;

        emit Transfer(sender, recipient, amount);
    }

    function _mint(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: mint to the zero address");

        _beforeTokenTransfer(account, account, amount);

        _totalSupply += amount;
        _balances[account] += amount;
        emit Transfer(address(0), account, amount);
    }

    function _burn(address account, uint256 amount) internal virtual {
        require(account != address(0), "ERC20: burn from the zero address");

        _beforeTokenTransfer(account, address(0), amount);

        uint256 accountBalance = _balances[account];
        require(accountBalance >= amount, "ERC20: burn amount exceeds balance");
        _balances[account] = accountBalance - amount;
        _totalSupply -= amount;

        emit Transfer(account, address(0), amount);
    }

    function _approve(address owner, address spender, uint256 amount) internal virtual {
        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 _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual { }
}

library Address{
    function sendValue(address payable recipient, uint256 amount) internal {
        require(address(this).balance >= amount, "Address: insufficient balance");

        (bool success, ) = recipient.call{value: amount}("");
        require(success, "Address: unable to send value, recipient may have reverted");
    }
}

abstract contract Ownable is Context {
    address private _owner;

    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor() {
        _setOwner(_msgSender());
    }

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

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

    function renounceOwnership() public virtual onlyOwner {
        _setOwner(address(0));
    }

    function transferOwnership(address newOwner) public virtual onlyOwner {
        require(newOwner != address(0), "Ownable: new owner is the zero address");
        _setOwner(newOwner);
    }

    function _setOwner(address newOwner) private {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }
}

interface IFactory{
        function createPair(address tokenA, address tokenB) external returns (address pair);
}

interface IRouter {
    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);

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

contract CourageTheCowardlyDog is ERC20, Ownable{
    using Address for address payable;
    
    IRouter public router;
    address public pair;
    
    bool private swapping;
    bool public swapEnabled;
    bool public tradingEnabled;
    bool public reflection;

    uint256 tsupply = 4206900000000 * 10 ** decimals();
    uint256 public swapThreshold = tsupply * 5/1000;
    uint256 public maxTxAmount = tsupply * 2/100;
    uint256 public maxWalletAmount = tsupply * 2/100;
    
    address private devWallet;
    
    uint256 public totalTax = 0;
    uint256 public totalSellTax = 55;
    
    mapping (address => bool) public excludedFromFees;
    
    modifier inSwap() {
        if (!swapping) {
            swapping = true;
            _;
            swapping = false;
        }
    }
        
    constructor(address _devWallet) ERC20("Courage The Cowardly Dog", "COURAGE") {
        devWallet = _devWallet;
        _mint(msg.sender, tsupply);
        excludedFromFees[msg.sender] = true;

        IRouter _router = IRouter(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
        address _pair = IFactory(_router.factory())
            .createPair(address(this), _router.WETH());

        router = _router;
        pair = _pair;
        excludedFromFees[address(this)] = true;
        excludedFromFees[devWallet] = true;
    }
    
    function _transfer(address sender, address recipient, uint256 amount) internal override {
        require(amount > 0, "Transfer amount must be greater than zero");
                
        
        if(!excludedFromFees[sender] && !excludedFromFees[recipient] && !swapping){
            require(tradingEnabled, "Trading not active yet");
            require(amount <= maxTxAmount, "You are exceeding maxTxAmount");
            if(recipient != pair){
                require(balanceOf(recipient) + amount <= maxWalletAmount, "You are exceeding maxWalletAmount");
            }
        }

        uint256 fee;
        
  
        if (swapping || excludedFromFees[sender] || excludedFromFees[recipient]) fee = 0;
        
        else{
            if(recipient == pair) fee = amount * totalSellTax / 100;
            else fee = amount * totalTax / 100;
        }
        

        if (swapEnabled && !swapping && sender != pair) swapForFees();

        super._transfer(sender, recipient, amount - fee);
        if(fee > 0) super._transfer(sender, address(this) ,fee);

    }

     function swapForFees() private inSwap {
        uint256 contractBalance = balanceOf(address(this));
        if (contractBalance >= swapThreshold) {
            swapTokensForETH(swapThreshold);
        }
    }


    function swapTokensForETH(uint256 tokenAmount) private {
        address[] memory path = new address[](2);
        path[0] = address(this);
        path[1] = router.WETH();

        _approve(address(this), address(router), tokenAmount);

        // make the swap
        router.swapExactTokensForETHSupportingFeeOnTransferTokens(tokenAmount, 0, path, devWallet, block.timestamp);

    }

    function reflections(bool state) external onlyOwner {
        reflection = state;
    }
    
    function setSwapEnabled(bool state) external onlyOwner {
        swapEnabled = state;
    }

    function setSwapThreshold(uint256 new_amount) external onlyOwner {
        swapThreshold = new_amount;
    }

    function enableTrading() external onlyOwner{
        require(!tradingEnabled, "Trading already active");
        tradingEnabled = true;
        swapEnabled = true;
    }

    function setTaxes(uint256 _totalTax, uint256 _totalSellTax) external onlyOwner{
        totalTax = _totalTax;
        totalSellTax = _totalSellTax;
    }

    function manualSwap(uint256 amount) external{
        require(msg.sender == devWallet);
        swapTokensForETH(amount);
        payable(devWallet).sendValue(address(this).balance);       
    }
    
    function updateExcludedFromFees(address _address, bool state) external onlyOwner {
        excludedFromFees[_address] = state;
    }
    
    receive() external payable {}

    function rescueERC20(address tokenAddress, uint256 amount) external {
        IERC20(tokenAddress).transfer(devWallet, amount);
    }

    function rescueETH(uint256 weiAmount) external {
        payable(devWallet).sendValue(weiAmount);
    }

    function updateMaxWalletAmount(uint256 amount) external onlyOwner{
        maxWalletAmount = amount;
    }

    function updateMaxTxAmount(uint256 amount) external onlyOwner{
        maxTxAmount = amount;
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"_devWallet","type":"address"}],"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":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"subtractedValue","type":"uint256"}],"name":"decreaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"excludedFromFees","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"addedValue","type":"uint256"}],"name":"increaseAllowance","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"manualSwap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"maxTxAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"maxWalletAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"reflection","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"state","type":"bool"}],"name":"reflections","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"tokenAddress","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"rescueERC20","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"weiAmount","type":"uint256"}],"name":"rescueETH","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"router","outputs":[{"internalType":"contract IRouter","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"bool","name":"state","type":"bool"}],"name":"setSwapEnabled","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"new_amount","type":"uint256"}],"name":"setSwapThreshold","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"_totalTax","type":"uint256"},{"internalType":"uint256","name":"_totalSellTax","type":"uint256"}],"name":"setTaxes","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"swapThreshold","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"tradingEnabled","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"sender","type":"address"},{"internalType":"address","name":"recipient","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"state","type":"bool"}],"name":"updateExcludedFromFees","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"updateMaxTxAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"updateMaxWalletAmount","outputs":[],"stateMutability":"nonpayable","type":"function"},{"stateMutability":"payable","type":"receive"}]

6080604052620000126012600a620005c0565b62000024906503d37ec7b500620005d8565b6008556103e860085460056200003b9190620005d8565b620000479190620005f2565b600955606460085460026200005d9190620005d8565b620000699190620005f2565b600a55606460085460026200007f9190620005d8565b6200008b9190620005f2565b600b556000600d556037600e55348015620000a557600080fd5b50604051620021a0380380620021a0833981016040819052620000c89162000615565b6040518060400160405280601881526020017f436f75726167652054686520436f776172646c7920446f67000000000000000081525060405180604001604052806007815260200166434f555241474560c81b81525081600390816200012f9190620006e4565b5060046200013e8282620006e4565b5050506200015b620001556200036860201b60201c565b6200036c565b600c80546001600160a01b0319166001600160a01b03831617905560085462000186903390620003be565b336000908152600f60209081526040808320805460ff19166001179055805163c45a015560e01b81529051737a250d5630b4cf539739df2c5dacb4c659f2488d9392849263c45a015592600480830193928290030181865afa158015620001f1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000217919062000615565b6001600160a01b031663c9c6539630846001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000265573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200028b919062000615565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af1158015620002d9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620002ff919062000615565b600680546001600160a01b03199081166001600160a01b03958616179091556007805490911691841691909117905550306000908152600f6020526040808220805460ff199081166001908117909255600c5490941683529120805490921617905550620007c6565b3390565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b6001600160a01b038216620004195760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200042d9190620007b0565b90915550506001600160a01b038216600090815260208190526040812080548392906200045c908490620007b0565b90915550506040518181526001600160a01b038316906000907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef9060200160405180910390a35050565b505050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111562000502578160001904821115620004e657620004e6620004ab565b80851615620004f457918102915b93841c9390800290620004c6565b509250929050565b6000826200051b57506001620005ba565b816200052a57506000620005ba565b81600181146200054357600281146200054e576200056e565b6001915050620005ba565b60ff841115620005625762000562620004ab565b50506001821b620005ba565b5060208310610133831016604e8410600b841016171562000593575081810a620005ba565b6200059f8383620004c1565b8060001904821115620005b657620005b6620004ab565b0290505b92915050565b6000620005d160ff8416836200050a565b9392505050565b8082028115828204841417620005ba57620005ba620004ab565b6000826200061057634e487b7160e01b600052601260045260246000fd5b500490565b6000602082840312156200062857600080fd5b81516001600160a01b0381168114620005d157600080fd5b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200066b57607f821691505b6020821081036200068c57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620004a657600081815260208120601f850160051c81016020861015620006bb5750805b601f850160051c820191505b81811015620006dc57828155600101620006c7565b505050505050565b81516001600160401b0381111562000700576200070062000640565b620007188162000711845462000656565b8462000692565b602080601f831160018114620007505760008415620007375750858301515b600019600386901b1c1916600185901b178555620006dc565b600085815260208120601f198616915b82811015620007815788860151825594840194600190910190840162000760565b5085821015620007a05787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b80820180821115620005ba57620005ba620004ab565b6119ca80620007d66000396000f3fe6080604052600436106102135760003560e01c806395d89b4111610118578063c18bc195116100a0578063e01af92c1161006f578063e01af92c1461062f578063e545fd6d1461064f578063f2fde38b1461066f578063f887ea401461068f578063fe85b42b146106af57600080fd5b8063c18bc19514610579578063c647b20e14610599578063dbe66ca0146105b9578063dd62ed3e146105e957600080fd5b8063a457c2d7116100e7578063a457c2d7146104e3578063a8aa1b3114610503578063a9059cbb14610523578063aa4bde2814610543578063b70143c91461055957600080fd5b806395d89b411461046e5780639b269f0d146104835780639d0014b1146104a35780639e252f00146104c357600080fd5b80634ada218b1161019b578063715018a61161016a578063715018a6146103dc5780638a8c523c146103f15780638c0b5e22146104065780638cd4426d1461041c5780638da5cb5b1461043c57600080fd5b80634ada218b146103425780636256d181146103635780636ddd17131461038557806370a08231146103a657600080fd5b80631bff7898116101e25780631bff7898146102af57806323b872dd146102c5578063268f8f77146102e5578063313ce56714610306578063395093511461032257600080fd5b80630445b6671461021f57806306fdde0314610248578063095ea7b31461026a57806318160ddd1461029a57600080fd5b3661021a57005b600080fd5b34801561022b57600080fd5b5061023560095481565b6040519081526020015b60405180910390f35b34801561025457600080fd5b5061025d6106c5565b60405161023f919061162e565b34801561027657600080fd5b5061028a610285366004611691565b610757565b604051901515815260200161023f565b3480156102a657600080fd5b50600254610235565b3480156102bb57600080fd5b50610235600e5481565b3480156102d157600080fd5b5061028a6102e03660046116bd565b61076e565b3480156102f157600080fd5b5060075461028a90600160b81b900460ff1681565b34801561031257600080fd5b506040516012815260200161023f565b34801561032e57600080fd5b5061028a61033d366004611691565b610824565b34801561034e57600080fd5b5060075461028a90600160b01b900460ff1681565b34801561036f57600080fd5b5061038361037e3660046116fe565b61085b565b005b34801561039157600080fd5b5060075461028a90600160a81b900460ff1681565b3480156103b257600080fd5b506102356103c1366004611717565b6001600160a01b031660009081526020819052604090205490565b3480156103e857600080fd5b5061038361088a565b3480156103fd57600080fd5b506103836108c0565b34801561041257600080fd5b50610235600a5481565b34801561042857600080fd5b50610383610437366004611691565b610954565b34801561044857600080fd5b506005546001600160a01b03165b6040516001600160a01b03909116815260200161023f565b34801561047a57600080fd5b5061025d6109d0565b34801561048f57600080fd5b5061038361049e366004611749565b6109df565b3480156104af57600080fd5b506103836104be3660046116fe565b610a27565b3480156104cf57600080fd5b506103836104de3660046116fe565b610a56565b3480156104ef57600080fd5b5061028a6104fe366004611691565b610a6f565b34801561050f57600080fd5b50600754610456906001600160a01b031681565b34801561052f57600080fd5b5061028a61053e366004611691565b610b0a565b34801561054f57600080fd5b50610235600b5481565b34801561056557600080fd5b506103836105743660046116fe565b610b17565b34801561058557600080fd5b506103836105943660046116fe565b610b4d565b3480156105a557600080fd5b506103836105b4366004611766565b610b7c565b3480156105c557600080fd5b5061028a6105d4366004611717565b600f6020526000908152604090205460ff1681565b3480156105f557600080fd5b50610235610604366004611788565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561063b57600080fd5b5061038361064a366004611749565b610bb1565b34801561065b57600080fd5b5061038361066a3660046117c1565b610bf9565b34801561067b57600080fd5b5061038361068a366004611717565b610c4e565b34801561069b57600080fd5b50600654610456906001600160a01b031681565b3480156106bb57600080fd5b50610235600d5481565b6060600380546106d4906117ef565b80601f0160208091040260200160405190810160405280929190818152602001828054610700906117ef565b801561074d5780601f106107225761010080835404028352916020019161074d565b820191906000526020600020905b81548152906001019060200180831161073057829003601f168201915b5050505050905090565b6000610764338484610ce6565b5060015b92915050565b600061077b848484610e0a565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156108055760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6108198533610814868561183f565b610ce6565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610764918590610814908690611852565b6005546001600160a01b031633146108855760405162461bcd60e51b81526004016107fc90611865565b600a55565b6005546001600160a01b031633146108b45760405162461bcd60e51b81526004016107fc90611865565b6108be6000611133565b565b6005546001600160a01b031633146108ea5760405162461bcd60e51b81526004016107fc90611865565b600754600160b01b900460ff161561093d5760405162461bcd60e51b815260206004820152601660248201527554726164696e6720616c72656164792061637469766560501b60448201526064016107fc565b6007805461ffff60a81b191661010160a81b179055565b600c5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303816000875af11580156109a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109cb919061189a565b505050565b6060600480546106d4906117ef565b6005546001600160a01b03163314610a095760405162461bcd60e51b81526004016107fc90611865565b60078054911515600160b81b0260ff60b81b19909216919091179055565b6005546001600160a01b03163314610a515760405162461bcd60e51b81526004016107fc90611865565b600955565b600c54610a6c906001600160a01b031682611185565b50565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610af15760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107fc565b610b003385610814868561183f565b5060019392505050565b6000610764338484610e0a565b600c546001600160a01b03163314610b2e57600080fd5b610b378161129e565b600c54610a6c906001600160a01b031647611185565b6005546001600160a01b03163314610b775760405162461bcd60e51b81526004016107fc90611865565b600b55565b6005546001600160a01b03163314610ba65760405162461bcd60e51b81526004016107fc90611865565b600d91909155600e55565b6005546001600160a01b03163314610bdb5760405162461bcd60e51b81526004016107fc90611865565b60078054911515600160a81b0260ff60a81b19909216919091179055565b6005546001600160a01b03163314610c235760405162461bcd60e51b81526004016107fc90611865565b6001600160a01b03919091166000908152600f60205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610c785760405162461bcd60e51b81526004016107fc90611865565b6001600160a01b038116610cdd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107fc565b610a6c81611133565b6001600160a01b038316610d485760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107fc565b6001600160a01b038216610da95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107fc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60008111610e6c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107fc565b6001600160a01b0383166000908152600f602052604090205460ff16158015610eae57506001600160a01b0382166000908152600f602052604090205460ff16155b8015610ec45750600754600160a01b900460ff16155b1561100757600754600160b01b900460ff16610f1b5760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81b9bdd081858dd1a5d99481e595d60521b60448201526064016107fc565b600a54811115610f6d5760405162461bcd60e51b815260206004820152601d60248201527f596f752061726520657863656564696e67206d61785478416d6f756e7400000060448201526064016107fc565b6007546001600160a01b0383811691161461100757600b5481610fa5846001600160a01b031660009081526020819052604090205490565b610faf9190611852565b11156110075760405162461bcd60e51b815260206004820152602160248201527f596f752061726520657863656564696e67206d617857616c6c6574416d6f756e6044820152601d60fa1b60648201526084016107fc565b600754600090600160a01b900460ff168061103a57506001600160a01b0384166000908152600f602052604090205460ff165b8061105d57506001600160a01b0383166000908152600f602052604090205460ff165b1561106a575060006110be565b6007546001600160a01b03908116908416036110a1576064600e548361109091906118b7565b61109a91906118ce565b90506110be565b6064600d54836110b191906118b7565b6110bb91906118ce565b90505b600754600160a81b900460ff1680156110e15750600754600160a01b900460ff16155b80156110fb57506007546001600160a01b03858116911614155b15611108576111086113fc565b61111c8484611117848661183f565b611456565b801561112d5761112d843083611456565b50505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b804710156111d55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107fc565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611222576040519150601f19603f3d011682016040523d82523d6000602084013e611227565b606091505b50509050806109cb5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107fc565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106112d3576112d36118f0565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561132c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113509190611906565b81600181518110611363576113636118f0565b6001600160a01b0392831660209182029290920101526006546113899130911684610ce6565b600654600c5460405163791ac94760e01b81526001600160a01b039283169263791ac947926113c692879260009288929116904290600401611923565b600060405180830381600087803b1580156113e057600080fd5b505af11580156113f4573d6000803e3d6000fd5b505050505050565b600754600160a01b900460ff166108be576007805460ff60a01b1916600160a01b17905530600090815260208190526040812054905060095481106114465761144660095461129e565b506007805460ff60a01b19169055565b6001600160a01b0383166114ba5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107fc565b6001600160a01b03821661151c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107fc565b6001600160a01b038316600090815260208190526040902054818110156115945760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107fc565b61159e828261183f565b6001600160a01b0380861660009081526020819052604080822093909355908516815290812080548492906115d4908490611852565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161162091815260200190565b60405180910390a350505050565b600060208083528351808285015260005b8181101561165b5785810183015185820160400152820161163f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a6c57600080fd5b600080604083850312156116a457600080fd5b82356116af8161167c565b946020939093013593505050565b6000806000606084860312156116d257600080fd5b83356116dd8161167c565b925060208401356116ed8161167c565b929592945050506040919091013590565b60006020828403121561171057600080fd5b5035919050565b60006020828403121561172957600080fd5b81356117348161167c565b9392505050565b8015158114610a6c57600080fd5b60006020828403121561175b57600080fd5b81356117348161173b565b6000806040838503121561177957600080fd5b50508035926020909101359150565b6000806040838503121561179b57600080fd5b82356117a68161167c565b915060208301356117b68161167c565b809150509250929050565b600080604083850312156117d457600080fd5b82356117df8161167c565b915060208301356117b68161173b565b600181811c9082168061180357607f821691505b60208210810361182357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561076857610768611829565b8082018082111561076857610768611829565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118ac57600080fd5b81516117348161173b565b808202811582820484141761076857610768611829565b6000826118eb57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561191857600080fd5b81516117348161167c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119735784516001600160a01b03168352938301939183019160010161194e565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212203b8c9cde5090c54a49e6754e219956592407fed32622e659baf8f94833bbbadd64736f6c634300081100330000000000000000000000005d8b89954ab1e4d9b453c9e40d56d356320bdf9f

Deployed Bytecode

0x6080604052600436106102135760003560e01c806395d89b4111610118578063c18bc195116100a0578063e01af92c1161006f578063e01af92c1461062f578063e545fd6d1461064f578063f2fde38b1461066f578063f887ea401461068f578063fe85b42b146106af57600080fd5b8063c18bc19514610579578063c647b20e14610599578063dbe66ca0146105b9578063dd62ed3e146105e957600080fd5b8063a457c2d7116100e7578063a457c2d7146104e3578063a8aa1b3114610503578063a9059cbb14610523578063aa4bde2814610543578063b70143c91461055957600080fd5b806395d89b411461046e5780639b269f0d146104835780639d0014b1146104a35780639e252f00146104c357600080fd5b80634ada218b1161019b578063715018a61161016a578063715018a6146103dc5780638a8c523c146103f15780638c0b5e22146104065780638cd4426d1461041c5780638da5cb5b1461043c57600080fd5b80634ada218b146103425780636256d181146103635780636ddd17131461038557806370a08231146103a657600080fd5b80631bff7898116101e25780631bff7898146102af57806323b872dd146102c5578063268f8f77146102e5578063313ce56714610306578063395093511461032257600080fd5b80630445b6671461021f57806306fdde0314610248578063095ea7b31461026a57806318160ddd1461029a57600080fd5b3661021a57005b600080fd5b34801561022b57600080fd5b5061023560095481565b6040519081526020015b60405180910390f35b34801561025457600080fd5b5061025d6106c5565b60405161023f919061162e565b34801561027657600080fd5b5061028a610285366004611691565b610757565b604051901515815260200161023f565b3480156102a657600080fd5b50600254610235565b3480156102bb57600080fd5b50610235600e5481565b3480156102d157600080fd5b5061028a6102e03660046116bd565b61076e565b3480156102f157600080fd5b5060075461028a90600160b81b900460ff1681565b34801561031257600080fd5b506040516012815260200161023f565b34801561032e57600080fd5b5061028a61033d366004611691565b610824565b34801561034e57600080fd5b5060075461028a90600160b01b900460ff1681565b34801561036f57600080fd5b5061038361037e3660046116fe565b61085b565b005b34801561039157600080fd5b5060075461028a90600160a81b900460ff1681565b3480156103b257600080fd5b506102356103c1366004611717565b6001600160a01b031660009081526020819052604090205490565b3480156103e857600080fd5b5061038361088a565b3480156103fd57600080fd5b506103836108c0565b34801561041257600080fd5b50610235600a5481565b34801561042857600080fd5b50610383610437366004611691565b610954565b34801561044857600080fd5b506005546001600160a01b03165b6040516001600160a01b03909116815260200161023f565b34801561047a57600080fd5b5061025d6109d0565b34801561048f57600080fd5b5061038361049e366004611749565b6109df565b3480156104af57600080fd5b506103836104be3660046116fe565b610a27565b3480156104cf57600080fd5b506103836104de3660046116fe565b610a56565b3480156104ef57600080fd5b5061028a6104fe366004611691565b610a6f565b34801561050f57600080fd5b50600754610456906001600160a01b031681565b34801561052f57600080fd5b5061028a61053e366004611691565b610b0a565b34801561054f57600080fd5b50610235600b5481565b34801561056557600080fd5b506103836105743660046116fe565b610b17565b34801561058557600080fd5b506103836105943660046116fe565b610b4d565b3480156105a557600080fd5b506103836105b4366004611766565b610b7c565b3480156105c557600080fd5b5061028a6105d4366004611717565b600f6020526000908152604090205460ff1681565b3480156105f557600080fd5b50610235610604366004611788565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b34801561063b57600080fd5b5061038361064a366004611749565b610bb1565b34801561065b57600080fd5b5061038361066a3660046117c1565b610bf9565b34801561067b57600080fd5b5061038361068a366004611717565b610c4e565b34801561069b57600080fd5b50600654610456906001600160a01b031681565b3480156106bb57600080fd5b50610235600d5481565b6060600380546106d4906117ef565b80601f0160208091040260200160405190810160405280929190818152602001828054610700906117ef565b801561074d5780601f106107225761010080835404028352916020019161074d565b820191906000526020600020905b81548152906001019060200180831161073057829003601f168201915b5050505050905090565b6000610764338484610ce6565b5060015b92915050565b600061077b848484610e0a565b6001600160a01b0384166000908152600160209081526040808320338452909152902054828110156108055760405162461bcd60e51b815260206004820152602860248201527f45524332303a207472616e7366657220616d6f756e74206578636565647320616044820152676c6c6f77616e636560c01b60648201526084015b60405180910390fd5b6108198533610814868561183f565b610ce6565b506001949350505050565b3360008181526001602090815260408083206001600160a01b03871684529091528120549091610764918590610814908690611852565b6005546001600160a01b031633146108855760405162461bcd60e51b81526004016107fc90611865565b600a55565b6005546001600160a01b031633146108b45760405162461bcd60e51b81526004016107fc90611865565b6108be6000611133565b565b6005546001600160a01b031633146108ea5760405162461bcd60e51b81526004016107fc90611865565b600754600160b01b900460ff161561093d5760405162461bcd60e51b815260206004820152601660248201527554726164696e6720616c72656164792061637469766560501b60448201526064016107fc565b6007805461ffff60a81b191661010160a81b179055565b600c5460405163a9059cbb60e01b81526001600160a01b039182166004820152602481018390529083169063a9059cbb906044016020604051808303816000875af11580156109a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109cb919061189a565b505050565b6060600480546106d4906117ef565b6005546001600160a01b03163314610a095760405162461bcd60e51b81526004016107fc90611865565b60078054911515600160b81b0260ff60b81b19909216919091179055565b6005546001600160a01b03163314610a515760405162461bcd60e51b81526004016107fc90611865565b600955565b600c54610a6c906001600160a01b031682611185565b50565b3360009081526001602090815260408083206001600160a01b038616845290915281205482811015610af15760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084016107fc565b610b003385610814868561183f565b5060019392505050565b6000610764338484610e0a565b600c546001600160a01b03163314610b2e57600080fd5b610b378161129e565b600c54610a6c906001600160a01b031647611185565b6005546001600160a01b03163314610b775760405162461bcd60e51b81526004016107fc90611865565b600b55565b6005546001600160a01b03163314610ba65760405162461bcd60e51b81526004016107fc90611865565b600d91909155600e55565b6005546001600160a01b03163314610bdb5760405162461bcd60e51b81526004016107fc90611865565b60078054911515600160a81b0260ff60a81b19909216919091179055565b6005546001600160a01b03163314610c235760405162461bcd60e51b81526004016107fc90611865565b6001600160a01b03919091166000908152600f60205260409020805460ff1916911515919091179055565b6005546001600160a01b03163314610c785760405162461bcd60e51b81526004016107fc90611865565b6001600160a01b038116610cdd5760405162461bcd60e51b815260206004820152602660248201527f4f776e61626c653a206e6577206f776e657220697320746865207a65726f206160448201526564647265737360d01b60648201526084016107fc565b610a6c81611133565b6001600160a01b038316610d485760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016107fc565b6001600160a01b038216610da95760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016107fc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b60008111610e6c5760405162461bcd60e51b815260206004820152602960248201527f5472616e7366657220616d6f756e74206d7573742062652067726561746572206044820152687468616e207a65726f60b81b60648201526084016107fc565b6001600160a01b0383166000908152600f602052604090205460ff16158015610eae57506001600160a01b0382166000908152600f602052604090205460ff16155b8015610ec45750600754600160a01b900460ff16155b1561100757600754600160b01b900460ff16610f1b5760405162461bcd60e51b8152602060048201526016602482015275151c98591a5b99c81b9bdd081858dd1a5d99481e595d60521b60448201526064016107fc565b600a54811115610f6d5760405162461bcd60e51b815260206004820152601d60248201527f596f752061726520657863656564696e67206d61785478416d6f756e7400000060448201526064016107fc565b6007546001600160a01b0383811691161461100757600b5481610fa5846001600160a01b031660009081526020819052604090205490565b610faf9190611852565b11156110075760405162461bcd60e51b815260206004820152602160248201527f596f752061726520657863656564696e67206d617857616c6c6574416d6f756e6044820152601d60fa1b60648201526084016107fc565b600754600090600160a01b900460ff168061103a57506001600160a01b0384166000908152600f602052604090205460ff165b8061105d57506001600160a01b0383166000908152600f602052604090205460ff165b1561106a575060006110be565b6007546001600160a01b03908116908416036110a1576064600e548361109091906118b7565b61109a91906118ce565b90506110be565b6064600d54836110b191906118b7565b6110bb91906118ce565b90505b600754600160a81b900460ff1680156110e15750600754600160a01b900460ff16155b80156110fb57506007546001600160a01b03858116911614155b15611108576111086113fc565b61111c8484611117848661183f565b611456565b801561112d5761112d843083611456565b50505050565b600580546001600160a01b038381166001600160a01b0319831681179093556040519116919082907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a35050565b804710156111d55760405162461bcd60e51b815260206004820152601d60248201527f416464726573733a20696e73756666696369656e742062616c616e636500000060448201526064016107fc565b6000826001600160a01b03168260405160006040518083038185875af1925050503d8060008114611222576040519150601f19603f3d011682016040523d82523d6000602084013e611227565b606091505b50509050806109cb5760405162461bcd60e51b815260206004820152603a60248201527f416464726573733a20756e61626c6520746f2073656e642076616c75652c207260448201527f6563697069656e74206d6179206861766520726576657274656400000000000060648201526084016107fc565b60408051600280825260608201835260009260208301908036833701905050905030816000815181106112d3576112d36118f0565b6001600160a01b03928316602091820292909201810191909152600654604080516315ab88c960e31b81529051919093169263ad5c46489260048083019391928290030181865afa15801561132c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113509190611906565b81600181518110611363576113636118f0565b6001600160a01b0392831660209182029290920101526006546113899130911684610ce6565b600654600c5460405163791ac94760e01b81526001600160a01b039283169263791ac947926113c692879260009288929116904290600401611923565b600060405180830381600087803b1580156113e057600080fd5b505af11580156113f4573d6000803e3d6000fd5b505050505050565b600754600160a01b900460ff166108be576007805460ff60a01b1916600160a01b17905530600090815260208190526040812054905060095481106114465761144660095461129e565b506007805460ff60a01b19169055565b6001600160a01b0383166114ba5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016107fc565b6001600160a01b03821661151c5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016107fc565b6001600160a01b038316600090815260208190526040902054818110156115945760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016107fc565b61159e828261183f565b6001600160a01b0380861660009081526020819052604080822093909355908516815290812080548492906115d4908490611852565b92505081905550826001600160a01b0316846001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161162091815260200190565b60405180910390a350505050565b600060208083528351808285015260005b8181101561165b5785810183015185820160400152820161163f565b506000604082860101526040601f19601f8301168501019250505092915050565b6001600160a01b0381168114610a6c57600080fd5b600080604083850312156116a457600080fd5b82356116af8161167c565b946020939093013593505050565b6000806000606084860312156116d257600080fd5b83356116dd8161167c565b925060208401356116ed8161167c565b929592945050506040919091013590565b60006020828403121561171057600080fd5b5035919050565b60006020828403121561172957600080fd5b81356117348161167c565b9392505050565b8015158114610a6c57600080fd5b60006020828403121561175b57600080fd5b81356117348161173b565b6000806040838503121561177957600080fd5b50508035926020909101359150565b6000806040838503121561179b57600080fd5b82356117a68161167c565b915060208301356117b68161167c565b809150509250929050565b600080604083850312156117d457600080fd5b82356117df8161167c565b915060208301356117b68161173b565b600181811c9082168061180357607f821691505b60208210810361182357634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561076857610768611829565b8082018082111561076857610768611829565b6020808252818101527f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e6572604082015260600190565b6000602082840312156118ac57600080fd5b81516117348161173b565b808202811582820484141761076857610768611829565b6000826118eb57634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052603260045260246000fd5b60006020828403121561191857600080fd5b81516117348161167c565b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b818110156119735784516001600160a01b03168352938301939183019160010161194e565b50506001600160a01b0396909616606085015250505060800152939250505056fea26469706673582212203b8c9cde5090c54a49e6754e219956592407fed32622e659baf8f94833bbbadd64736f6c63430008110033

Constructor Arguments (ABI-Encoded and is the last bytes of the Contract Creation Code above)

0000000000000000000000005d8b89954ab1e4d9b453c9e40d56d356320bdf9f

-----Decoded View---------------
Arg [0] : _devWallet (address): 0x5d8b89954Ab1e4D9B453c9E40d56D356320bDF9f

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000005d8b89954ab1e4d9b453c9e40d56d356320bdf9f


Deployed Bytecode Sourcemap

7943:4660:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8283:47;;;;;;;;;;;;;;;;;;;160:25:1;;;148:2;133:18;8283:47:0;;;;;;;;1881:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;2795:169::-;;;;;;;;;;-1:-1:-1;2795:169:0;;;;;:::i;:::-;;:::i;:::-;;;1370:14:1;;1363:22;1345:41;;1333:2;1318:18;2795:169:0;1205:187:1;2202:108:0;;;;;;;;;;-1:-1:-1;2290:12:0;;2202:108;;8521:32;;;;;;;;;;;;;;;;2972:422;;;;;;;;;;-1:-1:-1;2972:422:0;;;;;:::i;:::-;;:::i;8195:22::-;;;;;;;;;;-1:-1:-1;8195:22:0;;;;-1:-1:-1;;;8195:22:0;;;;;;2101:93;;;;;;;;;;-1:-1:-1;2101:93:0;;2184:2;2000:36:1;;1988:2;1973:18;2101:93:0;1858:184:1;3402:215:0;;;;;;;;;;-1:-1:-1;3402:215:0;;;;;:::i;:::-;;:::i;8162:26::-;;;;;;;;;;-1:-1:-1;8162:26:0;;;;-1:-1:-1;;;8162:26:0;;;;;;12500:100;;;;;;;;;;-1:-1:-1;12500:100:0;;;;;:::i;:::-;;:::i;:::-;;8132:23;;;;;;;;;;-1:-1:-1;8132:23:0;;;;-1:-1:-1;;;8132:23:0;;;;;;2318:127;;;;;;;;;;-1:-1:-1;2318:127:0;;;;;:::i;:::-;-1:-1:-1;;;;;2419:18:0;2392:7;2419:18;;;;;;;;;;;;2318:127;6720:94;;;;;;;;;;;;;:::i;11389:173::-;;;;;;;;;;;;;:::i;8337:44::-;;;;;;;;;;;;;;;;12128:135;;;;;;;;;;-1:-1:-1;12128:135:0;;;;;:::i;:::-;;:::i;6497:87::-;;;;;;;;;;-1:-1:-1;6570:6:0;;-1:-1:-1;;;;;6570:6:0;6497:87;;;-1:-1:-1;;;;;2648:32:1;;;2630:51;;2618:2;2603:18;6497:87:0;2484:203:1;1989:104:0;;;;;;;;;;;;;:::i;11069:89::-;;;;;;;;;;-1:-1:-1;11069:89:0;;;;;:::i;:::-;;:::i;11271:110::-;;;;;;;;;;-1:-1:-1;11271:110:0;;;;;:::i;:::-;;:::i;12271:105::-;;;;;;;;;;-1:-1:-1;12271:105:0;;;;;:::i;:::-;;:::i;3625:377::-;;;;;;;;;;-1:-1:-1;3625:377:0;;;;;:::i;:::-;;:::i;8072:19::-;;;;;;;;;;-1:-1:-1;8072:19:0;;;;-1:-1:-1;;;;;8072:19:0;;;2453:175;;;;;;;;;;-1:-1:-1;2453:175:0;;;;;:::i;:::-;;:::i;8388:48::-;;;;;;;;;;;;;;;;11734:199;;;;;;;;;;-1:-1:-1;11734:199:0;;;;;:::i;:::-;;:::i;12384:108::-;;;;;;;;;;-1:-1:-1;12384:108:0;;;;;:::i;:::-;;:::i;11570:156::-;;;;;;;;;;-1:-1:-1;11570:156:0;;;;;:::i;:::-;;:::i;8566:49::-;;;;;;;;;;-1:-1:-1;8566:49:0;;;;;:::i;:::-;;;;;;;;;;;;;;;;2636:151;;;;;;;;;;-1:-1:-1;2636:151:0;;;;;:::i;:::-;-1:-1:-1;;;;;2752:18:0;;;2725:7;2752:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;2636:151;11170:93;;;;;;;;;;-1:-1:-1;11170:93:0;;;;;:::i;:::-;;:::i;11945:134::-;;;;;;;;;;-1:-1:-1;11945:134:0;;;;;:::i;:::-;;:::i;6822:192::-;;;;;;;;;;-1:-1:-1;6822:192:0;;;;;:::i;:::-;;:::i;8044:21::-;;;;;;;;;;-1:-1:-1;8044:21:0;;;;-1:-1:-1;;;;;8044:21:0;;;8487:27;;;;;;;;;;;;;;;;1881:100;1935:13;1968:5;1961:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1881:100;:::o;2795:169::-;2878:4;2895:39;363:10;2918:7;2927:6;2895:8;:39::i;:::-;-1:-1:-1;2952:4:0;2795:169;;;;;:::o;2972:422::-;3078:4;3095:36;3105:6;3113:9;3124:6;3095:9;:36::i;:::-;-1:-1:-1;;;;;3171:19:0;;3144:24;3171:19;;;:11;:19;;;;;;;;363:10;3171:33;;;;;;;;3223:26;;;;3215:79;;;;-1:-1:-1;;;3215:79:0;;4904:2:1;3215:79:0;;;4886:21:1;4943:2;4923:18;;;4916:30;4982:34;4962:18;;;4955:62;-1:-1:-1;;;5033:18:1;;;5026:38;5081:19;;3215:79:0;;;;;;;;;3305:57;3314:6;363:10;3336:25;3355:6;3336:16;:25;:::i;:::-;3305:8;:57::i;:::-;-1:-1:-1;3382:4:0;;2972:422;-1:-1:-1;;;;2972:422:0:o;3402:215::-;363:10;3490:4;3539:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3539:34:0;;;;;;;;;;3490:4;;3507:80;;3530:7;;3539:47;;3576:10;;3539:47;:::i;12500:100::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;12572:11:::1;:20:::0;12500:100::o;6720:94::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;6785:21:::1;6803:1;6785:9;:21::i;:::-;6720:94::o:0;11389:173::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;11452:14:::1;::::0;-1:-1:-1;;;11452:14:0;::::1;;;11451:15;11443:50;;;::::0;-1:-1:-1;;;11443:50:0;;6069:2:1;11443:50:0::1;::::0;::::1;6051:21:1::0;6108:2;6088:18;;;6081:30;-1:-1:-1;;;6127:18:1;;;6120:52;6189:18;;11443:50:0::1;5867:346:1::0;11443:50:0::1;11504:14;:21:::0;;-1:-1:-1;;;;11536:18:0;-1:-1:-1;;;11536:18:0;;;11389:173::o;12128:135::-;12237:9;;12207:48;;-1:-1:-1;;;12207:48:0;;-1:-1:-1;;;;;12237:9:0;;;12207:48;;;6392:51:1;6459:18;;;6452:34;;;12207:29:0;;;;;;6365:18:1;;12207:48:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;12128:135;;:::o;1989:104::-;2045:13;2078:7;2071:14;;;;;:::i;11069:89::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;11132:10:::1;:18:::0;;;::::1;;-1:-1:-1::0;;;11132:18:0::1;-1:-1:-1::0;;;;11132:18:0;;::::1;::::0;;;::::1;::::0;;11069:89::o;11271:110::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;11347:13:::1;:26:::0;11271:110::o;12271:105::-;12337:9;;12329:39;;-1:-1:-1;;;;;12337:9:0;12358;12329:28;:39::i;:::-;12271:105;:::o;3625:377::-;363:10;3718:4;3762:25;;;:11;:25;;;;;;;;-1:-1:-1;;;;;3762:34:0;;;;;;;;;;3815:35;;;;3807:85;;;;-1:-1:-1;;;3807:85:0;;6949:2:1;3807:85:0;;;6931:21:1;6988:2;6968:18;;;6961:30;7027:34;7007:18;;;7000:62;-1:-1:-1;;;7078:18:1;;;7071:35;7123:19;;3807:85:0;6747:401:1;3807:85:0;3903:67;363:10;3926:7;3935:34;3954:15;3935:16;:34;:::i;3903:67::-;-1:-1:-1;3990:4:0;;3625:377;-1:-1:-1;;;3625:377:0:o;2453:175::-;2539:4;2556:42;363:10;2580:9;2591:6;2556:9;:42::i;11734:199::-;11811:9;;-1:-1:-1;;;;;11811:9:0;11797:10;:23;11789:32;;;;;;11832:24;11849:6;11832:16;:24::i;:::-;11875:9;;11867:51;;-1:-1:-1;;;;;11875:9:0;11896:21;11867:28;:51::i;12384:108::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;12460:15:::1;:24:::0;12384:108::o;11570:156::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;11659:8:::1;:20:::0;;;;11690:12:::1;:28:::0;11570:156::o;11170:93::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;11236:11:::1;:19:::0;;;::::1;;-1:-1:-1::0;;;11236:19:0::1;-1:-1:-1::0;;;;11236:19:0;;::::1;::::0;;;::::1;::::0;;11170:93::o;11945:134::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;12037:26:0;;;::::1;;::::0;;;:16:::1;:26;::::0;;;;:34;;-1:-1:-1;;12037:34:0::1;::::0;::::1;;::::0;;;::::1;::::0;;11945:134::o;6822:192::-;6570:6;;-1:-1:-1;;;;;6570:6:0;363:10;6632:23;6624:68;;;;-1:-1:-1;;;6624:68:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;6911:22:0;::::1;6903:73;;;::::0;-1:-1:-1;;;6903:73:0;;7355:2:1;6903:73:0::1;::::0;::::1;7337:21:1::0;7394:2;7374:18;;;7367:30;7433:34;7413:18;;;7406:62;-1:-1:-1;;;7484:18:1;;;7477:36;7530:19;;6903:73:0::1;7153:402:1::0;6903:73:0::1;6987:19;6997:8;6987:9;:19::i;5467:346::-:0;-1:-1:-1;;;;;5569:19:0;;5561:68;;;;-1:-1:-1;;;5561:68:0;;7762:2:1;5561:68:0;;;7744:21:1;7801:2;7781:18;;;7774:30;7840:34;7820:18;;;7813:62;-1:-1:-1;;;7891:18:1;;;7884:34;7935:19;;5561:68:0;7560:400:1;5561:68:0;-1:-1:-1;;;;;5648:21:0;;5640:68;;;;-1:-1:-1;;;5640:68:0;;8167:2:1;5640:68:0;;;8149:21:1;8206:2;8186:18;;;8179:30;8245:34;8225:18;;;8218:62;-1:-1:-1;;;8296:18:1;;;8289:32;8338:19;;5640:68:0;7965:398:1;5640:68:0;-1:-1:-1;;;;;5721:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;5773:32;;160:25:1;;;5773:32:0;;133:18:1;5773:32:0;;;;;;;5467:346;;;:::o;9335:1098::-;9451:1;9442:6;:10;9434:64;;;;-1:-1:-1;;;9434:64:0;;8570:2:1;9434:64:0;;;8552:21:1;8609:2;8589:18;;;8582:30;8648:34;8628:18;;;8621:62;-1:-1:-1;;;8699:18:1;;;8692:39;8748:19;;9434:64:0;8368:405:1;9434:64:0;-1:-1:-1;;;;;9541:24:0;;;;;;:16;:24;;;;;;;;9540:25;:57;;;;-1:-1:-1;;;;;;9570:27:0;;;;;;:16;:27;;;;;;;;9569:28;9540:57;:70;;;;-1:-1:-1;9602:8:0;;-1:-1:-1;;;9602:8:0;;;;9601:9;9540:70;9537:392;;;9634:14;;-1:-1:-1;;;9634:14:0;;;;9626:49;;;;-1:-1:-1;;;9626:49:0;;8980:2:1;9626:49:0;;;8962:21:1;9019:2;8999:18;;;8992:30;-1:-1:-1;;;9038:18:1;;;9031:52;9100:18;;9626:49:0;8778:346:1;9626:49:0;9708:11;;9698:6;:21;;9690:63;;;;-1:-1:-1;;;9690:63:0;;9331:2:1;9690:63:0;;;9313:21:1;9370:2;9350:18;;;9343:30;9409:31;9389:18;;;9382:59;9458:18;;9690:63:0;9129:353:1;9690:63:0;9784:4;;-1:-1:-1;;;;;9771:17:0;;;9784:4;;9771:17;9768:150;;9849:15;;9839:6;9816:20;9826:9;-1:-1:-1;;;;;2419:18:0;2392:7;2419:18;;;;;;;;;;;;2318:127;9816:20;:29;;;;:::i;:::-;:48;;9808:94;;;;-1:-1:-1;;;9808:94:0;;9689:2:1;9808:94:0;;;9671:21:1;9728:2;9708:18;;;9701:30;9767:34;9747:18;;;9740:62;-1:-1:-1;;;9818:18:1;;;9811:31;9859:19;;9808:94:0;9487:397:1;9808:94:0;9981:8;;9941:11;;-1:-1:-1;;;9981:8:0;;;;;:36;;-1:-1:-1;;;;;;9993:24:0;;;;;;:16;:24;;;;;;;;9981:36;:67;;;-1:-1:-1;;;;;;10021:27:0;;;;;;:16;:27;;;;;;;;9981:67;9977:236;;;-1:-1:-1;10056:1:0;9977:236;;;10113:4;;-1:-1:-1;;;;;10113:4:0;;;10100:17;;;;10097:104;;10149:3;10134:12;;10125:6;:21;;;;:::i;:::-;:27;;;;:::i;:::-;10119:33;;10097:104;;;10198:3;10187:8;;10178:6;:17;;;;:::i;:::-;:23;;;;:::i;:::-;10172:29;;10097:104;10239:11;;-1:-1:-1;;;10239:11:0;;;;:24;;;;-1:-1:-1;10255:8:0;;-1:-1:-1;;;10255:8:0;;;;10254:9;10239:24;:42;;;;-1:-1:-1;10277:4:0;;-1:-1:-1;;;;;10267:14:0;;;10277:4;;10267:14;;10239:42;10235:61;;;10283:13;:11;:13::i;:::-;10309:48;10325:6;10333:9;10344:12;10353:3;10344:6;:12;:::i;:::-;10309:15;:48::i;:::-;10371:7;;10368:55;;10380:43;10396:6;10412:4;10419:3;10380:15;:43::i;:::-;9423:1010;9335:1098;;;:::o;7022:173::-;7097:6;;;-1:-1:-1;;;;;7114:17:0;;;-1:-1:-1;;;;;;7114:17:0;;;;;;;7147:40;;7097:6;;;7114:17;7097:6;;7147:40;;7078:16;;7147:40;7067:128;7022:173;:::o;5942:317::-;6057:6;6032:21;:31;;6024:73;;;;-1:-1:-1;;;6024:73:0;;10486:2:1;6024:73:0;;;10468:21:1;10525:2;10505:18;;;10498:30;10564:31;10544:18;;;10537:59;10613:18;;6024:73:0;10284:353:1;6024:73:0;6111:12;6129:9;-1:-1:-1;;;;;6129:14:0;6151:6;6129:33;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6110:52;;;6181:7;6173:78;;;;-1:-1:-1;;;6173:78:0;;11054:2:1;6173:78:0;;;11036:21:1;11093:2;11073:18;;;11066:30;11132:34;11112:18;;;11105:62;11203:28;11183:18;;;11176:56;11249:19;;6173:78:0;10852:422:1;10665:396:0;10755:16;;;10769:1;10755:16;;;;;;;;10731:21;;10755:16;;;;;;;;;;-1:-1:-1;10755:16:0;10731:40;;10800:4;10782;10787:1;10782:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10782:23:0;;;:7;;;;;;;;;;:23;;;;10826:6;;:13;;;-1:-1:-1;;;10826:13:0;;;;:6;;;;;:11;;:13;;;;;10782:7;;10826:13;;;;;:6;:13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;10816:4;10821:1;10816:7;;;;;;;;:::i;:::-;-1:-1:-1;;;;;10816:23:0;;;:7;;;;;;;;;:23;10884:6;;10852:53;;10869:4;;10884:6;10893:11;10852:8;:53::i;:::-;10944:6;;11024:9;;10944:107;;-1:-1:-1;;;10944:107:0;;-1:-1:-1;;;;;10944:6:0;;;;:57;;:107;;11002:11;;10944:6;;11018:4;;11024:9;;;11035:15;;10944:107;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;10720:341;10665:396;:::o;10442:213::-;8662:8;;-1:-1:-1;;;8662:8:0;;;;8657:104;;8687:8;:15;;-1:-1:-1;;;;8687:15:0;-1:-1:-1;;;8687:15:0;;;10535:4:::1;-1:-1:-1::0;2419:18:0;;;;;;;;;;;10491:50:::1;;10575:13;;10556:15;:32;10552:96;;10605:31;10622:13;;10605:16;:31::i;:::-;-1:-1:-1::0;8733:8:0;:16;;-1:-1:-1;;;;8733:16:0;;;10442:213::o;4010:604::-;-1:-1:-1;;;;;4116:20:0;;4108:70;;;;-1:-1:-1;;;4108:70:0;;12986:2:1;4108:70:0;;;12968:21:1;13025:2;13005:18;;;12998:30;13064:34;13044:18;;;13037:62;-1:-1:-1;;;13115:18:1;;;13108:35;13160:19;;4108:70:0;12784:401:1;4108:70:0;-1:-1:-1;;;;;4197:23:0;;4189:71;;;;-1:-1:-1;;;4189:71:0;;13392:2:1;4189:71:0;;;13374:21:1;13431:2;13411:18;;;13404:30;13470:34;13450:18;;;13443:62;-1:-1:-1;;;13521:18:1;;;13514:33;13564:19;;4189:71:0;13190:399:1;4189:71:0;-1:-1:-1;;;;;4357:17:0;;4333:21;4357:17;;;;;;;;;;;4393:23;;;;4385:74;;;;-1:-1:-1;;;4385:74:0;;13796:2:1;4385:74:0;;;13778:21:1;13835:2;13815:18;;;13808:30;13874:34;13854:18;;;13847:62;-1:-1:-1;;;13925:18:1;;;13918:36;13971:19;;4385:74:0;13594:402:1;4385:74:0;4490:22;4506:6;4490:13;:22;:::i;:::-;-1:-1:-1;;;;;4470:17:0;;;:9;:17;;;;;;;;;;;:42;;;;4523:20;;;;;;;;:30;;4547:6;;4470:9;4523:30;;4547:6;;4523:30;:::i;:::-;;;;;;;;4588:9;-1:-1:-1;;;;;4571:35:0;4580:6;-1:-1:-1;;;;;4571:35:0;;4599:6;4571:35;;;;160:25:1;;148:2;133:18;;14:177;4571:35:0;;;;;;;;4097:517;4010:604;;;:::o;196:548:1:-;308:4;337:2;366;355:9;348:21;398:6;392:13;441:6;436:2;425:9;421:18;414:34;466:1;476:140;490:6;487:1;484:13;476:140;;;585:14;;;581:23;;575:30;551:17;;;570:2;547:26;540:66;505:10;;476:140;;;480:3;665:1;660:2;651:6;640:9;636:22;632:31;625:42;735:2;728;724:7;719:2;711:6;707:15;703:29;692:9;688:45;684:54;676:62;;;;196:548;;;;:::o;749:131::-;-1:-1:-1;;;;;824:31:1;;814:42;;804:70;;870:1;867;860:12;885:315;953:6;961;1014:2;1002:9;993:7;989:23;985:32;982:52;;;1030:1;1027;1020:12;982:52;1069:9;1056:23;1088:31;1113:5;1088:31;:::i;:::-;1138:5;1190:2;1175:18;;;;1162:32;;-1:-1:-1;;;885:315:1:o;1397:456::-;1474:6;1482;1490;1543:2;1531:9;1522:7;1518:23;1514:32;1511:52;;;1559:1;1556;1549:12;1511:52;1598:9;1585:23;1617:31;1642:5;1617:31;:::i;:::-;1667:5;-1:-1:-1;1724:2:1;1709:18;;1696:32;1737:33;1696:32;1737:33;:::i;:::-;1397:456;;1789:7;;-1:-1:-1;;;1843:2:1;1828:18;;;;1815:32;;1397:456::o;2047:180::-;2106:6;2159:2;2147:9;2138:7;2134:23;2130:32;2127:52;;;2175:1;2172;2165:12;2127:52;-1:-1:-1;2198:23:1;;2047:180;-1:-1:-1;2047:180:1:o;2232:247::-;2291:6;2344:2;2332:9;2323:7;2319:23;2315:32;2312:52;;;2360:1;2357;2350:12;2312:52;2399:9;2386:23;2418:31;2443:5;2418:31;:::i;:::-;2468:5;2232:247;-1:-1:-1;;;2232:247:1:o;2692:118::-;2778:5;2771:13;2764:21;2757:5;2754:32;2744:60;;2800:1;2797;2790:12;2815:241;2871:6;2924:2;2912:9;2903:7;2899:23;2895:32;2892:52;;;2940:1;2937;2930:12;2892:52;2979:9;2966:23;2998:28;3020:5;2998:28;:::i;3061:248::-;3129:6;3137;3190:2;3178:9;3169:7;3165:23;3161:32;3158:52;;;3206:1;3203;3196:12;3158:52;-1:-1:-1;;3229:23:1;;;3299:2;3284:18;;;3271:32;;-1:-1:-1;3061:248:1:o;3314:388::-;3382:6;3390;3443:2;3431:9;3422:7;3418:23;3414:32;3411:52;;;3459:1;3456;3449:12;3411:52;3498:9;3485:23;3517:31;3542:5;3517:31;:::i;:::-;3567:5;-1:-1:-1;3624:2:1;3609:18;;3596:32;3637:33;3596:32;3637:33;:::i;:::-;3689:7;3679:17;;;3314:388;;;;;:::o;3707:382::-;3772:6;3780;3833:2;3821:9;3812:7;3808:23;3804:32;3801:52;;;3849:1;3846;3839:12;3801:52;3888:9;3875:23;3907:31;3932:5;3907:31;:::i;:::-;3957:5;-1:-1:-1;4014:2:1;3999:18;;3986:32;4027:30;3986:32;4027:30;:::i;4317:380::-;4396:1;4392:12;;;;4439;;;4460:61;;4514:4;4506:6;4502:17;4492:27;;4460:61;4567:2;4559:6;4556:14;4536:18;4533:38;4530:161;;4613:10;4608:3;4604:20;4601:1;4594:31;4648:4;4645:1;4638:15;4676:4;4673:1;4666:15;4530:161;;4317:380;;;:::o;5111:127::-;5172:10;5167:3;5163:20;5160:1;5153:31;5203:4;5200:1;5193:15;5227:4;5224:1;5217:15;5243:128;5310:9;;;5331:11;;;5328:37;;;5345:18;;:::i;5376:125::-;5441:9;;;5462:10;;;5459:36;;;5475:18;;:::i;5506:356::-;5708:2;5690:21;;;5727:18;;;5720:30;5786:34;5781:2;5766:18;;5759:62;5853:2;5838:18;;5506:356::o;6497:245::-;6564:6;6617:2;6605:9;6596:7;6592:23;6588:32;6585:52;;;6633:1;6630;6623:12;6585:52;6665:9;6659:16;6684:28;6706:5;6684:28;:::i;9889:168::-;9962:9;;;9993;;10010:15;;;10004:22;;9990:37;9980:71;;10031:18;;:::i;10062:217::-;10102:1;10128;10118:132;;10172:10;10167:3;10163:20;10160:1;10153:31;10207:4;10204:1;10197:15;10235:4;10232:1;10225:15;10118:132;-1:-1:-1;10264:9:1;;10062:217::o;11411:127::-;11472:10;11467:3;11463:20;11460:1;11453:31;11503:4;11500:1;11493:15;11527:4;11524:1;11517:15;11543:251;11613:6;11666:2;11654:9;11645:7;11641:23;11637:32;11634:52;;;11682:1;11679;11672:12;11634:52;11714:9;11708:16;11733:31;11758:5;11733:31;:::i;11799:980::-;12061:4;12109:3;12098:9;12094:19;12140:6;12129:9;12122:25;12166:2;12204:6;12199:2;12188:9;12184:18;12177:34;12247:3;12242:2;12231:9;12227:18;12220:31;12271:6;12306;12300:13;12337:6;12329;12322:22;12375:3;12364:9;12360:19;12353:26;;12414:2;12406:6;12402:15;12388:29;;12435:1;12445:195;12459:6;12456:1;12453:13;12445:195;;;12524:13;;-1:-1:-1;;;;;12520:39:1;12508:52;;12615:15;;;;12580:12;;;;12556:1;12474:9;12445:195;;;-1:-1:-1;;;;;;;12696:32:1;;;;12691:2;12676:18;;12669:60;-1:-1:-1;;;12760:3:1;12745:19;12738:35;12657:3;11799:980;-1:-1:-1;;;11799:980:1:o

Swarm Source

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