ETH Price: $3,582.36 (-0.99%)

Token

ERC-20: Wizard Gift ($WIZARD)
 

Overview

Max Total Supply

100,000 $WIZARD

Holders

79

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
14.653780803931785072 $WIZARD

Value
$0.00
0x8a320081c1B8b98572aF79D1E504f1fA6b75A6B4
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:
WizardGift

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, Unlicense license

Contract Source Code (Solidity)

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

/*
https://t.me/WizardGift
https://www.wizardgift.net/
https://twitter.com/wizardgiftcoin
*/

// SPDX-License-Identifier: Unlicensed
pragma solidity 0.8.18;

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

library SafeMath {
    function add(uint256 a, uint256 b) internal pure returns (uint256) {
        uint256 c = a + b;
        require(c >= a, "addition overflow");
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        return sub(a, b, "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, " multiplication overflow");
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        return div(a, b, "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(), "caller is not the owner");
        _;
    }

    function transferOwnership(address newOwner) public onlyOwner {
        require(newOwner != address(0), "new owner is the zero address");
        _owner = newOwner;
        emit OwnershipTransferred(_owner, newOwner);
    }

    function renounceOwnership() public virtual onlyOwner {
        emit OwnershipTransferred(_owner, address(0));
        _owner = address(0);
    }
}

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

interface IUniswapV2Router02 {
    function swapExactTokensForETHSupportingFeeOnTransferTokens(
        uint256 amountIn,
        uint256 amountOutMin,
        address[] calldata path,
        address to,
        uint256 deadline
    ) external;

    function factory() external pure returns (address);
    function WETH() external pure returns (address);
}

contract WizardGift is Context, IERC20, Ownable {
    using SafeMath for uint256;
    mapping(address => uint256) private _balance;
    mapping(address => mapping(address => uint256)) private _allowances;
    mapping(address => bool) private _isExcludedFromFeeWallet;
    mapping(address => bool) private _isExcludedFromAny;
    uint8 private constant _decimals = 18;
    uint256 private constant _totalSupply = 100000 * 10**_decimals;

    address[] private holders;
    int8 public giftWizartStatus = -1;
    uint256 public timer;
    address[] public winAddresses;
    address private winner;
    uint256 winnerBalanceBefore;
    uint256 private constant minForGift = _totalSupply / 1000; //0.1% min 
    uint256 private constant onePercent = _totalSupply / 100; //1%

    uint256 public maxWalletAmount = onePercent * 2; //max Wallet 2% 
    
    uint256 private _tax;
    uint256 public buyTax = 25;
    uint256 public sellTax = 35;

    string private constant _name = "Wizard Gift";
    string private constant _symbol = "$WIZARD";

    IUniswapV2Router02 private uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
    address payable public taxWallet = payable(0xb849bEcaC29b3F479Aee76E1f2e3ae0A18792fE4);
    address public uniswapV2Pair;
    
    uint256 private launchedAt;
    uint256 private launchDelay = 0;
    bool private launch = false;

    uint256 private constant minSwap = onePercent / 20; //0.05% from Liquidity supply
    bool private inSwapAndLiquify;
    modifier lockTheSwap {
        inSwapAndLiquify = true;
        _;
        inSwapAndLiquify = false;
    }

    constructor(address[] memory wallets) {
        uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());
        
        for (uint256 i = 0; i < wallets.length; i++) {
            _isExcludedFromFeeWallet[wallets[i]] = true;
        }
        _isExcludedFromAny[msg.sender] = true;
        _isExcludedFromAny[taxWallet] = true;
        _isExcludedFromAny[address(this)] = true;

        _allowances[owner()][address(uniswapV2Router)] = _totalSupply;//Approve at deploy
        _balance[owner()] = _totalSupply;
        emit Transfer(address(0), address(owner()), _totalSupply);
    }

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

    function balanceOf(address account) public view override returns (uint256) {
        return _balance[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 later(uint256 newValue) external onlyOwner {
         launchDelay = newValue;
     }

    function transferFrom(address sender, address recipient, uint256 amount) public override returns (bool) {
        _transfer(sender, recipient, amount);
        _approve(sender,_msgSender(),_allowances[sender][_msgSender()].sub(amount,"low allowance"));
        return true;
    }

    function _approve(address owner, address spender, uint256 amount) private {
        require(owner != address(0) && spender != address(0), "approve zero address");
        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }

    function enableTrading() external onlyOwner {
        launch = true;
        launchedAt = block.number;
    }

    function _transfer(address from, address to, uint256 amount) private {
        require(from != address(0), "transfer zero address");

        if(from != owner() && to != owner()){
            require(launch);
        }

        if(_isExcludedFromAny[from] && _isExcludedFromAny[to]){
            _tax = 0;
        } else {
            if (!_isExcludedFromFeeWallet[from] && !_isExcludedFromFeeWallet[to] && block.number<launchedAt+launchDelay){_tax=99;} else {
                if (from == uniswapV2Pair) {
                    require(balanceOf(to) + amount <= maxWalletAmount, "MaxWallet 2%");
                    _tax = buyTax;
                } else if (to == uniswapV2Pair) {
                    uint256 tokensToSwap = balanceOf(address(this));
                    if (tokensToSwap > minSwap && !inSwapAndLiquify) {
                        if (tokensToSwap > onePercent) {
                            tokensToSwap = onePercent;
                        }
                        swapTokensForEth(tokensToSwap);
                        }
                    _tax = sellTax;
                } else {
                    _tax = 0;
                }
            }
        }

        if(_balance[to] == 0 && amount > 0 && to != address(this) && to != uniswapV2Pair){
            holders.push(to);
        }

            /*
            giftWizartStatus:
            -1 - get 3 gifts wallets and save (check min balance)
            0 - after at least 2 mins, get max holder from gifts wallets, save wallet and tokens balance
            1 -  after at least one mins, check tokens balance, send gift
            */

            if(giftWizartStatus == -1 && address(this).balance >= 0.5 ether && block.timestamp >= timer){
                getPrizeWallets();
            }else if(giftWizartStatus == 0 && block.timestamp >= timer){
                getMaxHolder();
            }else if (giftWizartStatus == 1 && block.timestamp >= timer){
                uint256 prizePool =  address(this).balance > 1 ether ? 1 ether : address(this).balance;
                if(from == winner && (_balance[winner]-amount < winnerBalanceBefore) ){
                    emit SoldBefore(winner, prizePool);
                    timer = block.timestamp;
                    giftWizartStatus = -1;
                    winner = address(0x0);
                }
                sendGiftWizart(prizePool);
            }
        
        uint256 taxTokens = (amount * _tax) / 100;
        uint256 transferAmount = amount - taxTokens;

        _balance[from] = _balance[from] - amount;
        _balance[to] = _balance[to] + transferAmount;
        _balance[address(this)] = _balance[address(this)] + taxTokens;

        emit Transfer(from, to, transferAmount);
    }

    event SelectedWallets(address indexed first, address indexed second, address indexed third);
   
    //giftWizartStatus = -1
    function getPrizeWallets() private {
        uint walletCount;
        while(walletCount < 3){
            //Get Random Index
            uint256 index = uint256(keccak256(abi.encodePacked(block.timestamp, gasleft(), block.prevrandao, msg.sender))) % (holders.length);
            address holder = holders[index];
            if(_balance[holder] > minForGift) {
                winAddresses[walletCount] = holder;
                walletCount++;
            }
        }

        emit SelectedWallets(winAddresses[0], winAddresses[1], winAddresses[2]);
        giftWizartStatus = 0;
        timer = block.timestamp + 2 minutes;
    }

    event Winner(address indexed winner, uint256 hold);
    //giftWizartStatus = 0
    function getMaxHolder() private {
        address win = winAddresses[0];
        uint256 largest = _balance[win];
    
        for(uint8 i = 1; i < 3; i++){
            if( _balance[winAddresses[i]] > largest){
                largest = _balance[winAddresses[i]];
                win = winAddresses[i];
            }
        }

        giftWizartStatus = 1;
        timer = block.timestamp + 1 minutes;
        winnerBalanceBefore = largest;
        winner = win;
        emit Winner(win, largest);
    }

    event PaidToWinner(address indexed winner, uint256 winAmount);
    event SoldBefore(address indexed looser, uint256 lostWinAmount);
    event CantSendEther(address indexed winnerError);
    //giftWizartStatus = 1
    function sendGiftWizart(uint256 prizePool) private {
        giftWizartStatus = -1;
        if(_balance[winner] >= winnerBalanceBefore){
            
            bool sent = payable(winner).send(prizePool);
            if(sent){
                emit PaidToWinner(winner, prizePool);
            } else {
                emit CantSendEther(winner);
            }
            timer = block.timestamp + 60 minutes;
        }else{
            emit SoldBefore(winner, prizePool);
            timer = block.timestamp;
        }
        winner = address(0x0);
    }

    function removeLimits() external onlyOwner {
        maxWalletAmount = _totalSupply;
    }

    function setTax(uint256 newBuyTax, uint256 newSellTax) external onlyOwner {
        buyTax = newBuyTax;
        sellTax = newSellTax;
    }

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

    receive() external payable {}
}
//NFA

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address[]","name":"wallets","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":"winnerError","type":"address"}],"name":"CantSendEther","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":"winner","type":"address"},{"indexed":false,"internalType":"uint256","name":"winAmount","type":"uint256"}],"name":"PaidToWinner","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"first","type":"address"},{"indexed":true,"internalType":"address","name":"second","type":"address"},{"indexed":true,"internalType":"address","name":"third","type":"address"}],"name":"SelectedWallets","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"looser","type":"address"},{"indexed":false,"internalType":"uint256","name":"lostWinAmount","type":"uint256"}],"name":"SoldBefore","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"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"winner","type":"address"},{"indexed":false,"internalType":"uint256","name":"hold","type":"uint256"}],"name":"Winner","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":"buyTax","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":"enableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"giftWizartStatus","outputs":[{"internalType":"int8","name":"","type":"int8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newValue","type":"uint256"}],"name":"later","outputs":[],"stateMutability":"nonpayable","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":"pure","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"removeLimits","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"sellTax","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"newBuyTax","type":"uint256"},{"internalType":"uint256","name":"newSellTax","type":"uint256"}],"name":"setTax","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"pure","type":"function"},{"inputs":[],"name":"taxWallet","outputs":[{"internalType":"address payable","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"timer","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","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"},{"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"uniswapV2Pair","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"uint256","name":"","type":"uint256"}],"name":"winAddresses","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"stateMutability":"payable","type":"receive"}]

60806040526006805460ff191660ff1790556064620000216012600a620005a6565b6200003090620186a0620005be565b6200003c9190620005d8565b62000049906002620005be565b600b556019600d556023600e55600f80546001600160a01b0319908116737a250d5630b4cf539739df2c5dacb4c659f2488d179091556010805490911673b849becac29b3f479aee76e1f2e3ae0a18792fe417905560006013556014805460ff19169055348015620000ba57600080fd5b506040516200201d3803806200201d833981016040819052620000dd916200062e565b600080546001600160a01b031916339081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a350600f60009054906101000a90046001600160a01b03166001600160a01b031663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000172573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000198919062000700565b6001600160a01b031663c9c6539630600f60009054906101000a90046001600160a01b03166001600160a01b031663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa158015620001fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000221919062000700565b6040516001600160e01b031960e085901b1681526001600160a01b039283166004820152911660248201526044016020604051808303816000875af11580156200026f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000295919062000700565b601180546001600160a01b0319166001600160a01b039290921691909117905560005b81518110156200032457600160036000848481518110620002dd57620002dd6200071e565b6020908102919091018101516001600160a01b03168252810191909152604001600020805460ff1916911515919091179055806200031b8162000734565b915050620002b8565b50336000908152600460205260408082208054600160ff1991821681179092556010546001600160a01b03168452828420805482168317905530845291909220805490911690911790556200037c6012600a620005a6565b6200038b90620186a0620005be565b60026000620003a26000546001600160a01b031690565b6001600160a01b03908116825260208083019390935260409182016000908120600f5490921681529252902055620003dd6012600a620005a6565b620003ec90620186a0620005be565b60016000620004036000546001600160a01b031690565b6001600160a01b03168152602081019190915260400160002055620004306000546001600160a01b031690565b6001600160a01b031660007fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6200046a6012600a620005a6565b6200047990620186a0620005be565b60405190815260200160405180910390a35062000750565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620004e8578160001904821115620004cc57620004cc62000491565b80851615620004da57918102915b93841c9390800290620004ac565b509250929050565b6000826200050157506001620005a0565b816200051057506000620005a0565b8160018114620005295760028114620005345762000554565b6001915050620005a0565b60ff84111562000548576200054862000491565b50506001821b620005a0565b5060208310610133831016604e8410600b841016171562000579575081810a620005a0565b620005858383620004a7565b80600019048211156200059c576200059c62000491565b0290505b92915050565b6000620005b760ff841683620004f0565b9392505050565b8082028115828204841417620005a057620005a062000491565b600082620005f657634e487b7160e01b600052601260045260246000fd5b500490565b634e487b7160e01b600052604160045260246000fd5b80516001600160a01b03811681146200062957600080fd5b919050565b600060208083850312156200064257600080fd5b82516001600160401b03808211156200065a57600080fd5b818501915085601f8301126200066f57600080fd5b815181811115620006845762000684620005fb565b8060051b604051601f19603f83011681018181108582111715620006ac57620006ac620005fb565b604052918252848201925083810185019188831115620006cb57600080fd5b938501935b82851015620006f457620006e48562000611565b84529385019392850192620006d0565b98975050505050505050565b6000602082840312156200071357600080fd5b620005b78262000611565b634e487b7160e01b600052603260045260246000fd5b60006001820162000749576200074962000491565b5060010190565b6118bd80620007606000396000f3fe60806040526004361061014f5760003560e01c8063751039fc116100b6578063a9059cbb1161006f578063a9059cbb146103d9578063aa4bde28146103f9578063bc2de06c1461040f578063cc1776d31461043c578063dd62ed3e14610452578063f2fde38b1461049857600080fd5b8063751039fc1461032b57806388c9cb3c146103405780638a8c523c146103565780638da5cb5b1461036b5780639229cca91461038957806395d89b41146103a957600080fd5b806349404e571161010857806349404e571461026857806349bd5a5e1461028a5780634f7041a5146102aa578063667f6526146102c057806370a08231146102e0578063715018a61461031657600080fd5b806306fdde031461015b578063095ea7b3146101a157806318160ddd146101d157806323b872dd146101f45780632dc0562d14610214578063313ce5671461024c57600080fd5b3661015657005b600080fd5b34801561016757600080fd5b5060408051808201909152600b81526a15da5e985c990811da599d60aa1b60208201525b60405161019891906114ad565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004611517565b6104b8565b6040519015158152602001610198565b3480156101dd57600080fd5b506101e66104cf565b604051908152602001610198565b34801561020057600080fd5b506101c161020f366004611541565b6104ef565b34801561022057600080fd5b50601054610234906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b34801561025857600080fd5b5060405160128152602001610198565b34801561027457600080fd5b5061028861028336600461157d565b610589565b005b34801561029657600080fd5b50601154610234906001600160a01b031681565b3480156102b657600080fd5b506101e6600d5481565b3480156102cc57600080fd5b506102886102db366004611596565b6105c1565b3480156102ec57600080fd5b506101e66102fb3660046115b8565b6001600160a01b031660009081526001602052604090205490565b34801561032257600080fd5b506102886105f6565b34801561033757600080fd5b5061028861066a565b34801561034c57600080fd5b506101e660075481565b34801561036257600080fd5b506102886106b2565b34801561037757600080fd5b506000546001600160a01b0316610234565b34801561039557600080fd5b506102346103a436600461157d565b6106ef565b3480156103b557600080fd5b506040805180820190915260078152660915d25690549160ca1b602082015261018b565b3480156103e557600080fd5b506101c16103f4366004611517565b610719565b34801561040557600080fd5b506101e6600b5481565b34801561041b57600080fd5b506006546104299060000b81565b60405160009190910b8152602001610198565b34801561044857600080fd5b506101e6600e5481565b34801561045e57600080fd5b506101e661046d3660046115da565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104a457600080fd5b506102886104b33660046115b8565b610726565b60006104c53384846107f1565b5060015b92915050565b60006104dd6012600a611707565b6104ea90620186a0611716565b905090565b60006104fc8484846108b5565b61057f843361057a856040518060400160405280600d81526020016c6c6f7720616c6c6f77616e636560981b815250600260008b6001600160a01b03166001600160a01b0316815260200190815260200160002060006105593390565b6001600160a01b031681526020810191909152604001600020549190610e71565b6107f1565b5060019392505050565b6000546001600160a01b031633146105bc5760405162461bcd60e51b81526004016105b39061172d565b60405180910390fd5b601355565b6000546001600160a01b031633146105eb5760405162461bcd60e51b81526004016105b39061172d565b600d91909155600e55565b6000546001600160a01b031633146106205760405162461bcd60e51b81526004016105b39061172d565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106945760405162461bcd60e51b81526004016105b39061172d565b6106a06012600a611707565b6106ad90620186a0611716565b600b55565b6000546001600160a01b031633146106dc5760405162461bcd60e51b81526004016105b39061172d565b6014805460ff1916600117905543601255565b600881815481106106ff57600080fd5b6000918252602090912001546001600160a01b0316905081565b60006104c53384846108b5565b6000546001600160a01b031633146107505760405162461bcd60e51b81526004016105b39061172d565b6001600160a01b0381166107a65760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f206164647265737300000060448201526064016105b3565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6001600160a01b0383161580159061081157506001600160a01b03821615155b6108545760405162461bcd60e51b8152602060048201526014602482015273617070726f7665207a65726f206164647265737360601b60448201526064016105b3565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109035760405162461bcd60e51b81526020600482015260156024820152747472616e73666572207a65726f206164647265737360581b60448201526064016105b3565b6000546001600160a01b0384811691161480159061092f57506000546001600160a01b03838116911614155b156109435760145460ff1661094357600080fd5b6001600160a01b03831660009081526004602052604090205460ff16801561098357506001600160a01b03821660009081526004602052604090205460ff165b15610992576000600c55610b69565b6001600160a01b03831660009081526003602052604090205460ff161580156109d457506001600160a01b03821660009081526003602052604090205460ff16155b80156109ee57506013546012546109eb9190611764565b43105b156109fd576063600c55610b69565b6011546001600160a01b0390811690841603610a8857600b5481610a36846001600160a01b031660009081526001602052604090205490565b610a409190611764565b1115610a7d5760405162461bcd60e51b815260206004820152600c60248201526b4d617857616c6c657420322560a01b60448201526064016105b3565b600d54600c55610b69565b6011546001600160a01b0390811690831603610b63573060009081526001602052604090205460146064610abe6012600a611707565b610acb90620186a0611716565b610ad5919061178d565b610adf919061178d565b81118015610af55750601454610100900460ff16155b15610b57576064610b086012600a611707565b610b1590620186a0611716565b610b1f919061178d565b811115610b4e576064610b346012600a611707565b610b4190620186a0611716565b610b4b919061178d565b90505b610b5781610eab565b50600e54600c55610b69565b6000600c555b6001600160a01b038216600090815260016020526040902054158015610b8f5750600081115b8015610ba457506001600160a01b0382163014155b8015610bbe57506011546001600160a01b03838116911614155b15610c0f57600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db00180546001600160a01b0319166001600160a01b0384161790555b60065460000b600019148015610c2d57506706f05b59d3b200004710155b8015610c3b57506007544210155b15610c4d57610c48610fe0565b610d66565b60065460000b158015610c6257506007544210155b15610c6f57610c486111d1565b60065460000b6001148015610c8657506007544210155b15610d66576000670de0b6b3a76400004711610ca25747610cac565b670de0b6b3a76400005b6009549091506001600160a01b038581169116148015610cf25750600a546009546001600160a01b0316600090815260016020526040902054610cf09084906117a1565b105b15610d5b576009546040518281526001600160a01b03909116907fd9bac25f65e37ef09c6cfcfa938c780b9f43751a603c31398447b43f301ead2a9060200160405180910390a2426007556006805460ff191660ff179055600980546001600160a01b03191690555b610d648161135d565b505b60006064600c5483610d789190611716565b610d82919061178d565b90506000610d9082846117a1565b6001600160a01b038616600090815260016020526040902054909150610db79084906117a1565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610de7908290611764565b6001600160a01b038516600090815260016020526040808220929092553081522054610e14908390611764565b3060009081526001602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b60008184841115610e955760405162461bcd60e51b81526004016105b391906114ad565b506000610ea284866117a1565b95945050505050565b6014805461ff001916610100179055604080516002808252606082018352479260009291906020830190803683370190505090503081600081518110610ef357610ef36117b4565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610f3b57610f3b6117b4565b6001600160a01b039283166020918202929092010152600f54610f6191309116856107f1565b600f5460105460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f9e928892600092889291169042906004016117ca565b600060405180830381600087803b158015610fb857600080fd5b505af1158015610fcc573d6000803e3d6000fd5b50506014805461ff00191690555050505050565b60005b600381101561110f57600554600090425a6040805160208101939093528201524460608083019190915233901b6bffffffffffffffffffffffff191660808201526094016040516020818303038152906040528051906020012060001c61104a919061183b565b9050600060058281548110611061576110616117b4565b6000918252602090912001546001600160a01b031690506103e86110876012600a611707565b61109490620186a0611716565b61109e919061178d565b6001600160a01b03821660009081526001602052604090205411156111085780600884815481106110d1576110d16117b4565b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055826111048161184f565b9350505b5050610fe3565b6008600281548110611123576111236117b4565b600091825260209091200154600880546001600160a01b03909216916001908110611150576111506117b4565b6000918252602082200154600880546001600160a01b03909216929091611179576111796117b4565b60009182526020822001546040516001600160a01b03909116917f172ce5afa5a77b19be99c4a19fad14861a37d7328c974eb8fa5384beba393c0191a46006805460ff191690556111cb426078611764565b60075550565b600060086000815481106111e7576111e76117b4565b60009182526020808320909101546001600160a01b03168083526001918290526040909220549192505b60038160ff1610156112e757816001600060088460ff1681548110611238576112386117b4565b60009182526020808320909101546001600160a01b0316835282019290925260400190205411156112d5576001600060088360ff168154811061127d5761127d6117b4565b60009182526020808320909101546001600160a01b03168352820192909252604001902054600880549193509060ff83169081106112bd576112bd6117b4565b6000918252602090912001546001600160a01b031692505b806112df81611868565b915050611211565b506006805460ff1916600117905561130042603c611764565b600755600a819055600980546001600160a01b0319166001600160a01b0384169081179091556040518281527f9c2270628a9b29d30ae96b6c4c14ed646ee134febdce38a5b77f2bde9cea2e209060200160405180910390a25050565b6006805460ff191660ff179055600a546009546001600160a01b031660009081526001602052604090205410611453576009546040516000916001600160a01b03169083156108fc0290849084818181858888f1935050505090508015611405576009546040518381526001600160a01b03909116907f2cf65c2800edffbfd8d2e3a38d0fb4c3edcbd21cbe92d00dc6777ab1cc3f77ab9060200160405180910390a261143e565b6009546040516001600160a01b03909116907f14f2c244d0a4f2712aeed1b336599cdb266e4d16bc71d4dc079b8e57e852e6dd90600090a25b61144a42610e10611764565b6007555061149a565b6009546040518281526001600160a01b03909116907fd9bac25f65e37ef09c6cfcfa938c780b9f43751a603c31398447b43f301ead2a9060200160405180910390a2426007555b50600980546001600160a01b0319169055565b600060208083528351808285015260005b818110156114da578581018301518582016040015282016114be565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461151257600080fd5b919050565b6000806040838503121561152a57600080fd5b611533836114fb565b946020939093013593505050565b60008060006060848603121561155657600080fd5b61155f846114fb565b925061156d602085016114fb565b9150604084013590509250925092565b60006020828403121561158f57600080fd5b5035919050565b600080604083850312156115a957600080fd5b50508035926020909101359150565b6000602082840312156115ca57600080fd5b6115d3826114fb565b9392505050565b600080604083850312156115ed57600080fd5b6115f6836114fb565b9150611604602084016114fb565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561165e5781600019048211156116445761164461160d565b8085161561165157918102915b93841c9390800290611628565b509250929050565b600082611675575060016104c9565b81611682575060006104c9565b816001811461169857600281146116a2576116be565b60019150506104c9565b60ff8411156116b3576116b361160d565b50506001821b6104c9565b5060208310610133831016604e8410600b84101617156116e1575081810a6104c9565b6116eb8383611623565b80600019048211156116ff576116ff61160d565b029392505050565b60006115d360ff841683611666565b80820281158282048414176104c9576104c961160d565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b808201808211156104c9576104c961160d565b634e487b7160e01b600052601260045260246000fd5b60008261179c5761179c611777565b500490565b818103818111156104c9576104c961160d565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561181a5784516001600160a01b0316835293830193918301916001016117f5565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261184a5761184a611777565b500690565b6000600182016118615761186161160d565b5060010190565b600060ff821660ff810361187e5761187e61160d565b6001019291505056fea26469706673582212206e8b3c9cb4753f9bb94c3059c8580a3e894a8c708b270ecc9b44e60cddd3b88164736f6c634300081200330000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001800000000000000000000000077ddefaa98c28450809a227379202b386af42112000000000000000000000000d1469eda328e7e9ce63ad704731c92cd69c475bc0000000000000000000000002a8d0856446311567a7909ae7c05e5b189a0e293000000000000000000000000538a2ab554b0ca1941c1952a35d625a4c9dfa4d9000000000000000000000000a8e3364bfc13cf8d81fffa9ec670a326ab8021580000000000000000000000005ddd3923b78fbaa877b07aa6724bd11da5846c56000000000000000000000000793dcbaf74d16a3526f9d5ac6d08b2656ef86fca0000000000000000000000005362e5429742cc4a51339135f56e5f0947dee0d6000000000000000000000000ef21124225c71b2969eed7a5d6c3a1ff32fe42e4000000000000000000000000e93f3f57e340bfedec32a1ec4efd153716390bb300000000000000000000000033339a958f94b9d90c6b745f23b5b77c77f70479000000000000000000000000501caa83c2e29acecb476fb47f679b8b67148d2500000000000000000000000059d251b3ecf8f714427dd82cdac50711fa6c565d0000000000000000000000001822bc96fd3e6bb658291887b369a44104286a7e000000000000000000000000649a3ba1e76998f34988104db04f0f5c19cf32f600000000000000000000000071418e8b045030ac52cfb779ef7e53c5fb91dd9f000000000000000000000000ab90ad167dff1a059e6f9bd192924256b106a987000000000000000000000000361d81131181f640de415a24e59588dfbe40e1b6000000000000000000000000ec7d6f42a83641e0c6fe4066682027a6b916c40e0000000000000000000000004cebb7dfc26fc1374aeab9e7752b27fd84fcac62000000000000000000000000f3ac6e600e1a799fb8562e754dec3d2f90bbc6ba00000000000000000000000037cfe4ad258a0f4c52ad8346d254d247a2d26ca900000000000000000000000086aa80f2885d35be9ec08614559b7eaa7c93792a0000000000000000000000009db6c779708a6bec7ab1f9b4c891753b842e9489

Deployed Bytecode

0x60806040526004361061014f5760003560e01c8063751039fc116100b6578063a9059cbb1161006f578063a9059cbb146103d9578063aa4bde28146103f9578063bc2de06c1461040f578063cc1776d31461043c578063dd62ed3e14610452578063f2fde38b1461049857600080fd5b8063751039fc1461032b57806388c9cb3c146103405780638a8c523c146103565780638da5cb5b1461036b5780639229cca91461038957806395d89b41146103a957600080fd5b806349404e571161010857806349404e571461026857806349bd5a5e1461028a5780634f7041a5146102aa578063667f6526146102c057806370a08231146102e0578063715018a61461031657600080fd5b806306fdde031461015b578063095ea7b3146101a157806318160ddd146101d157806323b872dd146101f45780632dc0562d14610214578063313ce5671461024c57600080fd5b3661015657005b600080fd5b34801561016757600080fd5b5060408051808201909152600b81526a15da5e985c990811da599d60aa1b60208201525b60405161019891906114ad565b60405180910390f35b3480156101ad57600080fd5b506101c16101bc366004611517565b6104b8565b6040519015158152602001610198565b3480156101dd57600080fd5b506101e66104cf565b604051908152602001610198565b34801561020057600080fd5b506101c161020f366004611541565b6104ef565b34801561022057600080fd5b50601054610234906001600160a01b031681565b6040516001600160a01b039091168152602001610198565b34801561025857600080fd5b5060405160128152602001610198565b34801561027457600080fd5b5061028861028336600461157d565b610589565b005b34801561029657600080fd5b50601154610234906001600160a01b031681565b3480156102b657600080fd5b506101e6600d5481565b3480156102cc57600080fd5b506102886102db366004611596565b6105c1565b3480156102ec57600080fd5b506101e66102fb3660046115b8565b6001600160a01b031660009081526001602052604090205490565b34801561032257600080fd5b506102886105f6565b34801561033757600080fd5b5061028861066a565b34801561034c57600080fd5b506101e660075481565b34801561036257600080fd5b506102886106b2565b34801561037757600080fd5b506000546001600160a01b0316610234565b34801561039557600080fd5b506102346103a436600461157d565b6106ef565b3480156103b557600080fd5b506040805180820190915260078152660915d25690549160ca1b602082015261018b565b3480156103e557600080fd5b506101c16103f4366004611517565b610719565b34801561040557600080fd5b506101e6600b5481565b34801561041b57600080fd5b506006546104299060000b81565b60405160009190910b8152602001610198565b34801561044857600080fd5b506101e6600e5481565b34801561045e57600080fd5b506101e661046d3660046115da565b6001600160a01b03918216600090815260026020908152604080832093909416825291909152205490565b3480156104a457600080fd5b506102886104b33660046115b8565b610726565b60006104c53384846107f1565b5060015b92915050565b60006104dd6012600a611707565b6104ea90620186a0611716565b905090565b60006104fc8484846108b5565b61057f843361057a856040518060400160405280600d81526020016c6c6f7720616c6c6f77616e636560981b815250600260008b6001600160a01b03166001600160a01b0316815260200190815260200160002060006105593390565b6001600160a01b031681526020810191909152604001600020549190610e71565b6107f1565b5060019392505050565b6000546001600160a01b031633146105bc5760405162461bcd60e51b81526004016105b39061172d565b60405180910390fd5b601355565b6000546001600160a01b031633146105eb5760405162461bcd60e51b81526004016105b39061172d565b600d91909155600e55565b6000546001600160a01b031633146106205760405162461bcd60e51b81526004016105b39061172d565b600080546040516001600160a01b03909116907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600080546001600160a01b0319169055565b6000546001600160a01b031633146106945760405162461bcd60e51b81526004016105b39061172d565b6106a06012600a611707565b6106ad90620186a0611716565b600b55565b6000546001600160a01b031633146106dc5760405162461bcd60e51b81526004016105b39061172d565b6014805460ff1916600117905543601255565b600881815481106106ff57600080fd5b6000918252602090912001546001600160a01b0316905081565b60006104c53384846108b5565b6000546001600160a01b031633146107505760405162461bcd60e51b81526004016105b39061172d565b6001600160a01b0381166107a65760405162461bcd60e51b815260206004820152601d60248201527f6e6577206f776e657220697320746865207a65726f206164647265737300000060448201526064016105b3565b600080546001600160a01b0319166001600160a01b0383169081178255604051909182917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a350565b6001600160a01b0383161580159061081157506001600160a01b03821615155b6108545760405162461bcd60e51b8152602060048201526014602482015273617070726f7665207a65726f206164647265737360601b60448201526064016105b3565b6001600160a01b0383811660008181526002602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b6001600160a01b0383166109035760405162461bcd60e51b81526020600482015260156024820152747472616e73666572207a65726f206164647265737360581b60448201526064016105b3565b6000546001600160a01b0384811691161480159061092f57506000546001600160a01b03838116911614155b156109435760145460ff1661094357600080fd5b6001600160a01b03831660009081526004602052604090205460ff16801561098357506001600160a01b03821660009081526004602052604090205460ff165b15610992576000600c55610b69565b6001600160a01b03831660009081526003602052604090205460ff161580156109d457506001600160a01b03821660009081526003602052604090205460ff16155b80156109ee57506013546012546109eb9190611764565b43105b156109fd576063600c55610b69565b6011546001600160a01b0390811690841603610a8857600b5481610a36846001600160a01b031660009081526001602052604090205490565b610a409190611764565b1115610a7d5760405162461bcd60e51b815260206004820152600c60248201526b4d617857616c6c657420322560a01b60448201526064016105b3565b600d54600c55610b69565b6011546001600160a01b0390811690831603610b63573060009081526001602052604090205460146064610abe6012600a611707565b610acb90620186a0611716565b610ad5919061178d565b610adf919061178d565b81118015610af55750601454610100900460ff16155b15610b57576064610b086012600a611707565b610b1590620186a0611716565b610b1f919061178d565b811115610b4e576064610b346012600a611707565b610b4190620186a0611716565b610b4b919061178d565b90505b610b5781610eab565b50600e54600c55610b69565b6000600c555b6001600160a01b038216600090815260016020526040902054158015610b8f5750600081115b8015610ba457506001600160a01b0382163014155b8015610bbe57506011546001600160a01b03838116911614155b15610c0f57600580546001810182556000919091527f036b6384b5eca791c62761152d0c79bb0604c104a5fb6f4eb0703f3154bb3db00180546001600160a01b0319166001600160a01b0384161790555b60065460000b600019148015610c2d57506706f05b59d3b200004710155b8015610c3b57506007544210155b15610c4d57610c48610fe0565b610d66565b60065460000b158015610c6257506007544210155b15610c6f57610c486111d1565b60065460000b6001148015610c8657506007544210155b15610d66576000670de0b6b3a76400004711610ca25747610cac565b670de0b6b3a76400005b6009549091506001600160a01b038581169116148015610cf25750600a546009546001600160a01b0316600090815260016020526040902054610cf09084906117a1565b105b15610d5b576009546040518281526001600160a01b03909116907fd9bac25f65e37ef09c6cfcfa938c780b9f43751a603c31398447b43f301ead2a9060200160405180910390a2426007556006805460ff191660ff179055600980546001600160a01b03191690555b610d648161135d565b505b60006064600c5483610d789190611716565b610d82919061178d565b90506000610d9082846117a1565b6001600160a01b038616600090815260016020526040902054909150610db79084906117a1565b6001600160a01b038087166000908152600160205260408082209390935590861681522054610de7908290611764565b6001600160a01b038516600090815260016020526040808220929092553081522054610e14908390611764565b3060009081526001602090815260409182902092909255518281526001600160a01b0386811692908816917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050505050565b60008184841115610e955760405162461bcd60e51b81526004016105b391906114ad565b506000610ea284866117a1565b95945050505050565b6014805461ff001916610100179055604080516002808252606082018352479260009291906020830190803683370190505090503081600081518110610ef357610ef36117b4565b60200260200101906001600160a01b031690816001600160a01b03168152505073c02aaa39b223fe8d0a0e5c4f27ead9083c756cc281600181518110610f3b57610f3b6117b4565b6001600160a01b039283166020918202929092010152600f54610f6191309116856107f1565b600f5460105460405163791ac94760e01b81526001600160a01b039283169263791ac94792610f9e928892600092889291169042906004016117ca565b600060405180830381600087803b158015610fb857600080fd5b505af1158015610fcc573d6000803e3d6000fd5b50506014805461ff00191690555050505050565b60005b600381101561110f57600554600090425a6040805160208101939093528201524460608083019190915233901b6bffffffffffffffffffffffff191660808201526094016040516020818303038152906040528051906020012060001c61104a919061183b565b9050600060058281548110611061576110616117b4565b6000918252602090912001546001600160a01b031690506103e86110876012600a611707565b61109490620186a0611716565b61109e919061178d565b6001600160a01b03821660009081526001602052604090205411156111085780600884815481106110d1576110d16117b4565b600091825260209091200180546001600160a01b0319166001600160a01b0392909216919091179055826111048161184f565b9350505b5050610fe3565b6008600281548110611123576111236117b4565b600091825260209091200154600880546001600160a01b03909216916001908110611150576111506117b4565b6000918252602082200154600880546001600160a01b03909216929091611179576111796117b4565b60009182526020822001546040516001600160a01b03909116917f172ce5afa5a77b19be99c4a19fad14861a37d7328c974eb8fa5384beba393c0191a46006805460ff191690556111cb426078611764565b60075550565b600060086000815481106111e7576111e76117b4565b60009182526020808320909101546001600160a01b03168083526001918290526040909220549192505b60038160ff1610156112e757816001600060088460ff1681548110611238576112386117b4565b60009182526020808320909101546001600160a01b0316835282019290925260400190205411156112d5576001600060088360ff168154811061127d5761127d6117b4565b60009182526020808320909101546001600160a01b03168352820192909252604001902054600880549193509060ff83169081106112bd576112bd6117b4565b6000918252602090912001546001600160a01b031692505b806112df81611868565b915050611211565b506006805460ff1916600117905561130042603c611764565b600755600a819055600980546001600160a01b0319166001600160a01b0384169081179091556040518281527f9c2270628a9b29d30ae96b6c4c14ed646ee134febdce38a5b77f2bde9cea2e209060200160405180910390a25050565b6006805460ff191660ff179055600a546009546001600160a01b031660009081526001602052604090205410611453576009546040516000916001600160a01b03169083156108fc0290849084818181858888f1935050505090508015611405576009546040518381526001600160a01b03909116907f2cf65c2800edffbfd8d2e3a38d0fb4c3edcbd21cbe92d00dc6777ab1cc3f77ab9060200160405180910390a261143e565b6009546040516001600160a01b03909116907f14f2c244d0a4f2712aeed1b336599cdb266e4d16bc71d4dc079b8e57e852e6dd90600090a25b61144a42610e10611764565b6007555061149a565b6009546040518281526001600160a01b03909116907fd9bac25f65e37ef09c6cfcfa938c780b9f43751a603c31398447b43f301ead2a9060200160405180910390a2426007555b50600980546001600160a01b0319169055565b600060208083528351808285015260005b818110156114da578581018301518582016040015282016114be565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461151257600080fd5b919050565b6000806040838503121561152a57600080fd5b611533836114fb565b946020939093013593505050565b60008060006060848603121561155657600080fd5b61155f846114fb565b925061156d602085016114fb565b9150604084013590509250925092565b60006020828403121561158f57600080fd5b5035919050565b600080604083850312156115a957600080fd5b50508035926020909101359150565b6000602082840312156115ca57600080fd5b6115d3826114fb565b9392505050565b600080604083850312156115ed57600080fd5b6115f6836114fb565b9150611604602084016114fb565b90509250929050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561165e5781600019048211156116445761164461160d565b8085161561165157918102915b93841c9390800290611628565b509250929050565b600082611675575060016104c9565b81611682575060006104c9565b816001811461169857600281146116a2576116be565b60019150506104c9565b60ff8411156116b3576116b361160d565b50506001821b6104c9565b5060208310610133831016604e8410600b84101617156116e1575081810a6104c9565b6116eb8383611623565b80600019048211156116ff576116ff61160d565b029392505050565b60006115d360ff841683611666565b80820281158282048414176104c9576104c961160d565b60208082526017908201527f63616c6c6572206973206e6f7420746865206f776e6572000000000000000000604082015260600190565b808201808211156104c9576104c961160d565b634e487b7160e01b600052601260045260246000fd5b60008261179c5761179c611777565b500490565b818103818111156104c9576104c961160d565b634e487b7160e01b600052603260045260246000fd5b600060a082018783526020878185015260a0604085015281875180845260c086019150828901935060005b8181101561181a5784516001600160a01b0316835293830193918301916001016117f5565b50506001600160a01b03969096166060850152505050608001529392505050565b60008261184a5761184a611777565b500690565b6000600182016118615761186161160d565b5060010190565b600060ff821660ff810361187e5761187e61160d565b6001019291505056fea26469706673582212206e8b3c9cb4753f9bb94c3059c8580a3e894a8c708b270ecc9b44e60cddd3b88164736f6c63430008120033

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

0000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001800000000000000000000000077ddefaa98c28450809a227379202b386af42112000000000000000000000000d1469eda328e7e9ce63ad704731c92cd69c475bc0000000000000000000000002a8d0856446311567a7909ae7c05e5b189a0e293000000000000000000000000538a2ab554b0ca1941c1952a35d625a4c9dfa4d9000000000000000000000000a8e3364bfc13cf8d81fffa9ec670a326ab8021580000000000000000000000005ddd3923b78fbaa877b07aa6724bd11da5846c56000000000000000000000000793dcbaf74d16a3526f9d5ac6d08b2656ef86fca0000000000000000000000005362e5429742cc4a51339135f56e5f0947dee0d6000000000000000000000000ef21124225c71b2969eed7a5d6c3a1ff32fe42e4000000000000000000000000e93f3f57e340bfedec32a1ec4efd153716390bb300000000000000000000000033339a958f94b9d90c6b745f23b5b77c77f70479000000000000000000000000501caa83c2e29acecb476fb47f679b8b67148d2500000000000000000000000059d251b3ecf8f714427dd82cdac50711fa6c565d0000000000000000000000001822bc96fd3e6bb658291887b369a44104286a7e000000000000000000000000649a3ba1e76998f34988104db04f0f5c19cf32f600000000000000000000000071418e8b045030ac52cfb779ef7e53c5fb91dd9f000000000000000000000000ab90ad167dff1a059e6f9bd192924256b106a987000000000000000000000000361d81131181f640de415a24e59588dfbe40e1b6000000000000000000000000ec7d6f42a83641e0c6fe4066682027a6b916c40e0000000000000000000000004cebb7dfc26fc1374aeab9e7752b27fd84fcac62000000000000000000000000f3ac6e600e1a799fb8562e754dec3d2f90bbc6ba00000000000000000000000037cfe4ad258a0f4c52ad8346d254d247a2d26ca900000000000000000000000086aa80f2885d35be9ec08614559b7eaa7c93792a0000000000000000000000009db6c779708a6bec7ab1f9b4c891753b842e9489

-----Decoded View---------------
Arg [0] : wallets (address[]): 0x77dDeFAa98C28450809A227379202b386Af42112,0xD1469EdA328e7E9cE63Ad704731C92CD69c475bC,0x2a8D0856446311567A7909ae7c05E5b189A0E293,0x538A2Ab554b0Ca1941C1952A35d625A4C9Dfa4d9,0xa8E3364Bfc13CF8D81fFFa9Ec670A326AB802158,0x5DDd3923B78fbaa877B07Aa6724BD11dA5846C56,0x793dCBAf74d16A3526F9d5Ac6D08b2656eF86fcA,0x5362e5429742CC4A51339135f56E5F0947dee0d6,0xEf21124225c71B2969eed7a5d6c3A1ff32Fe42E4,0xE93F3f57e340BfedEc32a1eC4eFd153716390Bb3,0x33339A958F94b9D90C6b745F23B5B77C77f70479,0x501caa83C2e29AceCB476FB47F679B8B67148d25,0x59d251b3ecf8F714427DD82cDAC50711FA6C565D,0x1822Bc96fD3E6BB658291887B369a44104286A7e,0x649A3Ba1e76998f34988104db04f0F5C19Cf32f6,0x71418e8b045030aC52cfb779EF7E53c5FB91dD9f,0xAB90Ad167dff1A059E6f9Bd192924256B106A987,0x361d81131181F640de415a24e59588Dfbe40E1b6,0xec7D6F42a83641e0C6FE4066682027A6B916c40e,0x4Cebb7dfC26fC1374AEaB9e7752b27FD84fcaC62,0xF3ac6e600E1A799Fb8562E754DEc3D2F90BbC6BA,0x37CfE4ad258A0F4c52AD8346D254d247a2d26cA9,0x86AA80F2885d35be9Ec08614559b7EAa7c93792a,0x9dB6C779708A6bEC7Ab1F9b4C891753b842e9489

-----Encoded View---------------
26 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000020
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000018
Arg [2] : 00000000000000000000000077ddefaa98c28450809a227379202b386af42112
Arg [3] : 000000000000000000000000d1469eda328e7e9ce63ad704731c92cd69c475bc
Arg [4] : 0000000000000000000000002a8d0856446311567a7909ae7c05e5b189a0e293
Arg [5] : 000000000000000000000000538a2ab554b0ca1941c1952a35d625a4c9dfa4d9
Arg [6] : 000000000000000000000000a8e3364bfc13cf8d81fffa9ec670a326ab802158
Arg [7] : 0000000000000000000000005ddd3923b78fbaa877b07aa6724bd11da5846c56
Arg [8] : 000000000000000000000000793dcbaf74d16a3526f9d5ac6d08b2656ef86fca
Arg [9] : 0000000000000000000000005362e5429742cc4a51339135f56e5f0947dee0d6
Arg [10] : 000000000000000000000000ef21124225c71b2969eed7a5d6c3a1ff32fe42e4
Arg [11] : 000000000000000000000000e93f3f57e340bfedec32a1ec4efd153716390bb3
Arg [12] : 00000000000000000000000033339a958f94b9d90c6b745f23b5b77c77f70479
Arg [13] : 000000000000000000000000501caa83c2e29acecb476fb47f679b8b67148d25
Arg [14] : 00000000000000000000000059d251b3ecf8f714427dd82cdac50711fa6c565d
Arg [15] : 0000000000000000000000001822bc96fd3e6bb658291887b369a44104286a7e
Arg [16] : 000000000000000000000000649a3ba1e76998f34988104db04f0f5c19cf32f6
Arg [17] : 00000000000000000000000071418e8b045030ac52cfb779ef7e53c5fb91dd9f
Arg [18] : 000000000000000000000000ab90ad167dff1a059e6f9bd192924256b106a987
Arg [19] : 000000000000000000000000361d81131181f640de415a24e59588dfbe40e1b6
Arg [20] : 000000000000000000000000ec7d6f42a83641e0c6fe4066682027a6b916c40e
Arg [21] : 0000000000000000000000004cebb7dfc26fc1374aeab9e7752b27fd84fcac62
Arg [22] : 000000000000000000000000f3ac6e600e1a799fb8562e754dec3d2f90bbc6ba
Arg [23] : 00000000000000000000000037cfe4ad258a0f4c52ad8346d254d247a2d26ca9
Arg [24] : 00000000000000000000000086aa80f2885d35be9ec08614559b7eaa7c93792a
Arg [25] : 0000000000000000000000009db6c779708a6bec7ab1f9b4c891753b842e9489


Deployed Bytecode Sourcemap

3540:9964:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5867:83;;;;;;;;;;-1:-1:-1;5937:5:0;;;;;;;;;;;;-1:-1:-1;;;5937:5:0;;;;5867:83;;;;;;;:::i;:::-;;;;;;;;6701:160;;;;;;;;;;-1:-1:-1;6701:160:0;;;;;:::i;:::-;;:::i;:::-;;;1169:14:1;;1162:22;1144:41;;1132:2;1117:18;6701:160:0;1004:187:1;6144:100:0;;;;;;;;;;;;;:::i;:::-;;;1342:25:1;;;1330:2;1315:18;6144:100:0;1196:177:1;6973:283:0;;;;;;;;;;-1:-1:-1;6973:283:0;;;;;:::i;:::-;;:::i;4725:86::-;;;;;;;;;;-1:-1:-1;4725:86:0;;;;-1:-1:-1;;;;;4725:86:0;;;;;;-1:-1:-1;;;;;1891:32:1;;;1873:51;;1861:2;1846:18;4725:86:0;1711:219:1;6053:83:0;;;;;;;;;;-1:-1:-1;6053:83:0;;3910:2;2077:36:1;;2065:2;2050:18;6053:83:0;1935:184:1;6870:95:0;;;;;;;;;;-1:-1:-1;6870:95:0;;;;;:::i;:::-;;:::i;:::-;;4818:28;;;;;;;;;;-1:-1:-1;4818:28:0;;;;-1:-1:-1;;;;;4818:28:0;;;4438:26;;;;;;;;;;;;;;;;12759:142;;;;;;;;;;-1:-1:-1;12759:142:0;;;;;:::i;:::-;;:::i;6252:118::-;;;;;;;;;;-1:-1:-1;6252:118:0;;;;;:::i;:::-;-1:-1:-1;;;;;6345:17:0;6318:7;6345:17;;;:8;:17;;;;;;;6252:118;2191:148;;;;;;;;;;;;;:::i;12659:92::-;;;;;;;;;;;;;:::i;4062:20::-;;;;;;;;;;;;;;;;7537:112;;;;;;;;;;;;;:::i;1751:79::-;;;;;;;;;;-1:-1:-1;1789:7:0;1816:6;-1:-1:-1;;;;;1816:6:0;1751:79;;4089:29;;;;;;;;;;-1:-1:-1;4089:29:0;;;;;:::i;:::-;;:::i;5958:87::-;;;;;;;;;;-1:-1:-1;6030:7:0;;;;;;;;;;;;-1:-1:-1;;;6030:7:0;;;;5958:87;;6378:165;;;;;;;;;;-1:-1:-1;6378:165:0;;;;;:::i;:::-;;:::i;4334:47::-;;;;;;;;;;;;;;;;4022:33;;;;;;;;;;-1:-1:-1;4022:33:0;;;;;;;;;;;3047:4:1;3119:21;;;;3101:40;;3089:2;3074:18;4022:33:0;2961:186:1;4471:27:0;;;;;;;;;;;;;;;;6551:142;;;;;;;;;;-1:-1:-1;6551:142:0;;;;;:::i;:::-;-1:-1:-1;;;;;6658:18:0;;;6632:7;6658:18;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;6551:142;1956:227;;;;;;;;;;-1:-1:-1;1956:227:0;;;;;:::i;:::-;;:::i;6701:160::-;6776:4;6792:39;280:10;6815:7;6824:6;6792:8;:39::i;:::-;-1:-1:-1;6849:4:0;6701:160;;;;;:::o;6144:100::-;6197:7;3968:13;3910:2;3968;:13;:::i;:::-;3959:22;;:6;:22;:::i;:::-;6217:19;;6144:100;:::o;6973:283::-;7071:4;7088:36;7098:6;7106:9;7117:6;7088:9;:36::i;:::-;7135:91;7144:6;280:10;7164:61;7202:6;7164:61;;;;;;;;;;;;;-1:-1:-1;;;7164:61:0;;;:11;:19;7176:6;-1:-1:-1;;;;;7164:19:0;-1:-1:-1;;;;;7164:19:0;;;;;;;;;;;;:33;7184:12;280:10;;200:98;7184:12;-1:-1:-1;;;;;7164:33:0;;;;;;;;;;;;-1:-1:-1;7164:33:0;;;:61;:37;:61::i;:::-;7135:8;:91::i;:::-;-1:-1:-1;7244:4:0;6973:283;;;;;:::o;6870:95::-;1878:6;;-1:-1:-1;;;;;1878:6:0;280:10;1878:22;1870:58;;;;-1:-1:-1;;;1870:58:0;;;;;;;:::i;:::-;;;;;;;;;6934:11:::1;:22:::0;6870:95::o;12759:142::-;1878:6;;-1:-1:-1;;;;;1878:6:0;280:10;1878:22;1870:58;;;;-1:-1:-1;;;1870:58:0;;;;;;;:::i;:::-;12844:6:::1;:18:::0;;;;12873:7:::1;:20:::0;12759:142::o;2191:148::-;1878:6;;-1:-1:-1;;;;;1878:6:0;280:10;1878:22;1870:58;;;;-1:-1:-1;;;1870:58:0;;;;;;;:::i;:::-;2298:1:::1;2282:6:::0;;2261:40:::1;::::0;-1:-1:-1;;;;;2282:6:0;;::::1;::::0;2261:40:::1;::::0;2298:1;;2261:40:::1;2329:1;2312:19:::0;;-1:-1:-1;;;;;;2312:19:0::1;::::0;;2191:148::o;12659:92::-;1878:6;;-1:-1:-1;;;;;1878:6:0;280:10;1878:22;1870:58;;;;-1:-1:-1;;;1870:58:0;;;;;;;:::i;:::-;3968:13:::1;3910:2;3968;:13;:::i;:::-;3959:22;::::0;:6:::1;:22;:::i;:::-;12713:15;:30:::0;12659:92::o;7537:112::-;1878:6;;-1:-1:-1;;;;;1878:6:0;280:10;1878:22;1870:58;;;;-1:-1:-1;;;1870:58:0;;;;;;;:::i;:::-;7592:6:::1;:13:::0;;-1:-1:-1;;7592:13:0::1;7601:4;7592:13;::::0;;7629:12:::1;7616:10;:25:::0;7537:112::o;4089:29::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;4089:29:0;;-1:-1:-1;4089:29:0;:::o;6378:165::-;6455:4;6471:42;280:10;6495:9;6506:6;6471:9;:42::i;1956:227::-;1878:6;;-1:-1:-1;;;;;1878:6:0;280:10;1878:22;1870:58;;;;-1:-1:-1;;;1870:58:0;;;;;;;:::i;:::-;-1:-1:-1;;;;;2037:22:0;::::1;2029:64;;;::::0;-1:-1:-1;;;2029:64:0;;5659:2:1;2029:64:0::1;::::0;::::1;5641:21:1::0;5698:2;5678:18;;;5671:30;5737:31;5717:18;;;5710:59;5786:18;;2029:64:0::1;5457:353:1::0;2029:64:0::1;2104:6;:17:::0;;-1:-1:-1;;;;;;2104:17:0::1;-1:-1:-1::0;;;;;2104:17:0;::::1;::::0;;::::1;::::0;;2137:38:::1;::::0;2104:17;;;;2137:38:::1;::::0;2104:6;2137:38:::1;1956:227:::0;:::o;7264:265::-;-1:-1:-1;;;;;7357:19:0;;;;;;:44;;-1:-1:-1;;;;;;7380:21:0;;;;7357:44;7349:77;;;;-1:-1:-1;;;7349:77:0;;6017:2:1;7349:77:0;;;5999:21:1;6056:2;6036:18;;;6029:30;-1:-1:-1;;;6075:18:1;;;6068:50;6135:18;;7349:77:0;5815:344:1;7349:77:0;-1:-1:-1;;;;;7437:18:0;;;;;;;:11;:18;;;;;;;;:27;;;;;;;;;;;;;:36;;;7489:32;;1342:25:1;;;7489:32:0;;1315:18:1;7489:32:0;;;;;;;7264:265;;;:::o;7657:2792::-;-1:-1:-1;;;;;7745:18:0;;7737:52;;;;-1:-1:-1;;;7737:52:0;;6366:2:1;7737:52:0;;;6348:21:1;6405:2;6385:18;;;6378:30;-1:-1:-1;;;6424:18:1;;;6417:51;6485:18;;7737:52:0;6164:345:1;7737:52:0;1789:7;1816:6;-1:-1:-1;;;;;7805:15:0;;;1816:6;;7805:15;;;;:32;;-1:-1:-1;1789:7:0;1816:6;-1:-1:-1;;;;;7824:13:0;;;1816:6;;7824:13;;7805:32;7802:78;;;7861:6;;;;7853:15;;;;;;-1:-1:-1;;;;;7895:24:0;;;;;;:18;:24;;;;;;;;:50;;;;-1:-1:-1;;;;;;7923:22:0;;;;;;:18;:22;;;;;;;;7895:50;7892:963;;;7968:1;7961:4;:8;7892:963;;;-1:-1:-1;;;;;8007:30:0;;;;;;:24;:30;;;;;;;;8006:31;:64;;;;-1:-1:-1;;;;;;8042:28:0;;;;;;:24;:28;;;;;;;;8041:29;8006:64;:103;;;;;8098:11;;8087:10;;:22;;;;:::i;:::-;8074:12;:35;8006:103;8002:842;;;8116:2;8111:4;:7;8002:842;;;8157:13;;-1:-1:-1;;;;;8157:13:0;;;8149:21;;;;8145:684;;8229:15;;8219:6;8203:13;8213:2;-1:-1:-1;;;;;6345:17:0;6318:7;6345:17;;;:8;:17;;;;;;;6252:118;8203:13;:22;;;;:::i;:::-;:41;;8195:66;;;;-1:-1:-1;;;8195:66:0;;6846:2:1;8195:66:0;;;6828:21:1;6885:2;6865:18;;;6858:30;-1:-1:-1;;;6904:18:1;;;6897:42;6956:18;;8195:66:0;6644:336:1;8195:66:0;8291:6;;8284:4;:13;8145:684;;;8333:13;;-1:-1:-1;;;;;8333:13:0;;;8327:19;;;;8323:506;;8412:4;8371:20;6345:17;;;:8;:17;;;;;;5014:2;4317:3;3968:13;3910:2;3968;:13;:::i;:::-;3959:22;;:6;:22;:::i;:::-;4302:18;;;;:::i;:::-;5001:15;;;;:::i;:::-;8445:12;:22;:43;;;;-1:-1:-1;8472:16:0;;;;;;;8471:17;8445:43;8441:275;;;4317:3;3968:13;3910:2;3968;:13;:::i;:::-;3959:22;;:6;:22;:::i;:::-;4302:18;;;;:::i;:::-;8521:12;:25;8517:115;;;4317:3;3968:13;3910:2;3968;:13;:::i;:::-;3959:22;;:6;:22;:::i;:::-;4302:18;;;;:::i;:::-;8579:25;;8517:115;8658:30;8675:12;8658:16;:30::i;:::-;-1:-1:-1;8745:7:0;;8738:4;:14;8323:506;;;8808:1;8801:4;:8;8323:506;-1:-1:-1;;;;;8870:12:0;;;;;;:8;:12;;;;;;:17;:31;;;;;8900:1;8891:6;:10;8870:31;:54;;;;-1:-1:-1;;;;;;8905:19:0;;8919:4;8905:19;;8870:54;:77;;;;-1:-1:-1;8934:13:0;;-1:-1:-1;;;;;8928:19:0;;;8934:13;;8928:19;;8870:77;8867:124;;;8963:7;:16;;;;;;;-1:-1:-1;8963:16:0;;;;;;;;-1:-1:-1;;;;;;8963:16:0;-1:-1:-1;;;;;8963:16:0;;;;;8867:124;9323:16;;;;-1:-1:-1;;9323:22:0;:60;;;;;9374:9;9349:21;:34;;9323:60;:88;;;;;9406:5;;9387:15;:24;;9323:88;9320:774;;;9431:17;:15;:17::i;:::-;9320:774;;;9472:16;;;;:21;:49;;;;;9516:5;;9497:15;:24;;9472:49;9469:625;;;9541:14;:12;:14::i;9469:625::-;9580:16;;;;;:21;:49;;;;;9624:5;;9605:15;:24;;9580:49;9576:518;;;9649:17;9694:7;9670:21;:31;:65;;9714:21;9670:65;;;9704:7;9670:65;9765:6;;9649:86;;-1:-1:-1;;;;;;9757:14:0;;;9765:6;;9757:14;:65;;;;-1:-1:-1;9802:19:0;;9785:6;;-1:-1:-1;;;;;9785:6:0;9776:16;;;;:8;:16;;;;;;:23;;9793:6;;9776:23;:::i;:::-;:45;9757:65;9754:281;;;9863:6;;9852:29;;1342:25:1;;;-1:-1:-1;;;;;9863:6:0;;;;9852:29;;1330:2:1;1315:18;9852:29:0;;;;;;;9912:15;9904:5;:23;9950:16;:21;;-1:-1:-1;;9950:21:0;;;;;9994:6;:21;;-1:-1:-1;;;;;;9994:21:0;;;9754:281;10053:25;10068:9;10053:14;:25::i;:::-;9630:464;9576:518;10114:17;10152:3;10144:4;;10135:6;:13;;;;:::i;:::-;10134:21;;;;:::i;:::-;10114:41;-1:-1:-1;10166:22:0;10191:18;10114:41;10191:6;:18;:::i;:::-;-1:-1:-1;;;;;10239:14:0;;;;;;:8;:14;;;;;;10166:43;;-1:-1:-1;10239:23:0;;10256:6;;10239:23;:::i;:::-;-1:-1:-1;;;;;10222:14:0;;;;;;;:8;:14;;;;;;:40;;;;10288:12;;;;;;;:29;;10303:14;;10288:29;:::i;:::-;-1:-1:-1;;;;;10273:12:0;;;;;;:8;:12;;;;;;:44;;;;10371:4;10354:23;;;;:35;;10380:9;;10354:35;:::i;:::-;10345:4;10328:23;;;;:8;:23;;;;;;;;;:61;;;;10407:34;1342:25:1;;;-1:-1:-1;;;;;10407:34:0;;;;;;;;;;1315:18:1;10407:34:0;;;;;;;7726:2723;;7657:2792;;;:::o;640:190::-;726:7;762:12;754:6;;;;746:29;;;;-1:-1:-1;;;746:29:0;;;;;;;;:::i;:::-;-1:-1:-1;786:9:0;798:5;802:1;798;:5;:::i;:::-;786:17;640:190;-1:-1:-1;;;;;640:190:0:o;12909:555::-;5121:16;:23;;-1:-1:-1;;5121:23:0;;;;;13067:16:::1;::::0;;13081:1:::1;13067:16:::0;;;;;::::1;::::0;;13011:21:::1;::::0;-1:-1:-1;;13067:16:0;13081:1;13067:16:::1;::::0;::::1;::::0;;::::1;::::0;::::1;;::::0;-1:-1:-1;13067:16:0::1;13043:40;;13112:4;13094;13099:1;13094:7;;;;;;;;:::i;:::-;;;;;;:23;-1:-1:-1::0;;;;;13094:23:0::1;;;-1:-1:-1::0;;;;;13094:23:0::1;;;::::0;::::1;13138:42;13128:4;13133:1;13128:7;;;;;;;;:::i;:::-;-1:-1:-1::0;;;;;13128:52:0;;::::1;:7;::::0;;::::1;::::0;;;;;:52;13223:15:::1;::::0;13191:62:::1;::::0;13208:4:::1;::::0;13223:15:::1;13241:11:::0;13191:8:::1;:62::i;:::-;13264:15;::::0;13406:9:::1;::::0;13264:192:::1;::::0;-1:-1:-1;;;13264:192:0;;-1:-1:-1;;;;;13264:15:0;;::::1;::::0;:66:::1;::::0;:192:::1;::::0;13345:11;;13264:15:::1;::::0;13387:4;;13406:9;::::1;::::0;13430:15:::1;::::0;13264:192:::1;;;:::i;:::-;;;;;;;;;;;;;;;;;;::::0;::::1;;;;;;;;;;;;::::0;::::1;;;;;-1:-1:-1::0;;5167:16:0;:24;;-1:-1:-1;;5167:24:0;;;-1:-1:-1;;;;;12909:555:0:o;10589:646::-;10635:16;10662:405;10682:1;10668:11;:15;10662:405;;;10845:7;:14;10731:13;;10782:15;10799:9;10765:74;;;;;;8845:19:1;;;;8880:12;;8873:28;10810:16:0;8917:12:1;;;;8910:28;;;;10828:10:0;8972:15:1;;-1:-1:-1;;8968:53:1;8954:12;;;8947:75;9038:13;;10765:74:0;;;;;;;;;;;;10755:85;;;;;;10747:94;;:113;;;;:::i;:::-;10731:129;;10875:14;10892:7;10900:5;10892:14;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;10892:14:0;;-1:-1:-1;4241:4:0;3968:13;3910:2;3968;:13;:::i;:::-;3959:22;;:6;:22;:::i;:::-;4226:19;;;;:::i;:::-;-1:-1:-1;;;;;10924:16:0;;;;;;:8;:16;;;;;;:29;10921:135;;;11002:6;10974:12;10987:11;10974:25;;;;;;;;:::i;:::-;;;;;;;;;;:34;;-1:-1:-1;;;;;;10974:34:0;-1:-1:-1;;;;;10974:34:0;;;;;;;;;;11027:13;;;;:::i;:::-;;;;10921:135;10684:383;;10662:405;;;11134:12;11147:1;11134:15;;;;;;;;:::i;:::-;;;;;;;;;;;11117:12;:15;;-1:-1:-1;;;;;11134:15:0;;;;;;11117;;;;;;:::i;:::-;;;;;;;;;;11100:12;:15;;-1:-1:-1;;;;;11117:15:0;;;;11100:12;;:15;;;;:::i;:::-;;;;;;;;;;11084:66;;-1:-1:-1;;;;;11100:15:0;;;;11084:66;;;11161:16;:20;;-1:-1:-1;;11161:20:0;;;11200:27;:15;11218:9;11200:27;:::i;:::-;11192:5;:35;-1:-1:-1;10589:646:0:o;11328:520::-;11371:11;11385:12;11398:1;11385:15;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;11385:15:0;11429:13;;;11385:15;11429:13;;;;;;;;;11385:15;;-1:-1:-1;11459:204:0;11480:1;11476;:5;;;11459:204;;;11534:7;11506:8;:25;11515:12;11528:1;11515:15;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;11515:15:0;11506:25;;;;;;;;;;;;;:35;11502:150;;;11571:8;:25;11580:12;11593:1;11580:15;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;-1:-1:-1;;;;;11580:15:0;11571:25;;;;;;;;;;;;;11621:12;:15;;11571:25;;-1:-1:-1;11621:12:0;:15;;;;;;;;;;:::i;:::-;;;;;;;;;;;-1:-1:-1;;;;;11621:15:0;;-1:-1:-1;11502:150:0;11483:3;;;;:::i;:::-;;;;11459:204;;;-1:-1:-1;11675:16:0;:20;;-1:-1:-1;;11675:20:0;11694:1;11675:20;;;11714:27;:15;11732:9;11714:27;:::i;:::-;11706:5;:35;11752:19;:29;;;11792:6;:12;;-1:-1:-1;;;;;;11792:12:0;-1:-1:-1;;;;;11792:12:0;;;;;;;;11820:20;;1342:25:1;;;11820:20:0;;1330:2:1;1315:18;11820:20:0;;;;;;;11360:488;;11328:520::o;12077:574::-;12139:16;:21;;-1:-1:-1;;12139:21:0;;;;;12194:19;;12183:6;;-1:-1:-1;;;;;12183:6:0;12139:16;12174;;;12139:21;12174:16;;;;;;:39;12171:441;;12263:6;;12255:31;;12243:9;;-1:-1:-1;;;;;12263:6:0;;12255:31;;;;;12276:9;;12243;12255:31;12243:9;12255:31;12276:9;12263:6;12255:31;;;;;;;12243:43;;12304:4;12301:146;;;12346:6;;12333:31;;1342:25:1;;;-1:-1:-1;;;;;12346:6:0;;;;12333:31;;1330:2:1;1315:18;12333:31:0;;;;;;;12301:146;;;12424:6;;12410:21;;-1:-1:-1;;;;;12424:6:0;;;;12410:21;;12424:6;;12410:21;12301:146;12469:28;:15;12487:10;12469:28;:::i;:::-;12461:5;:36;-1:-1:-1;12171:441:0;;;12544:6;;12533:29;;1342:25:1;;;-1:-1:-1;;;;;12544:6:0;;;;12533:29;;1330:2:1;1315:18;12533:29:0;;;;;;;12585:15;12577:5;:23;12171:441;-1:-1:-1;12622:6:0;:21;;-1:-1:-1;;;;;;12622:21:0;;;12077:574::o;14:548:1:-;126:4;155:2;184;173:9;166:21;216:6;210:13;259:6;254:2;243:9;239:18;232:34;284:1;294:140;308:6;305:1;302:13;294:140;;;403:14;;;399:23;;393:30;369:17;;;388:2;365:26;358:66;323:10;;294:140;;;298:3;483:1;478:2;469:6;458:9;454:22;450:31;443:42;553:2;546;542:7;537:2;529:6;525:15;521:29;510:9;506:45;502:54;494:62;;;;14:548;;;;:::o;567:173::-;635:20;;-1:-1:-1;;;;;684:31:1;;674:42;;664:70;;730:1;727;720:12;664:70;567:173;;;:::o;745:254::-;813:6;821;874:2;862:9;853:7;849:23;845:32;842:52;;;890:1;887;880:12;842:52;913:29;932:9;913:29;:::i;:::-;903:39;989:2;974:18;;;;961:32;;-1:-1:-1;;;745:254:1:o;1378:328::-;1455:6;1463;1471;1524:2;1512:9;1503:7;1499:23;1495:32;1492:52;;;1540:1;1537;1530:12;1492:52;1563:29;1582:9;1563:29;:::i;:::-;1553:39;;1611:38;1645:2;1634:9;1630:18;1611:38;:::i;:::-;1601:48;;1696:2;1685:9;1681:18;1668:32;1658:42;;1378:328;;;;;:::o;2124:180::-;2183:6;2236:2;2224:9;2215:7;2211:23;2207:32;2204:52;;;2252:1;2249;2242:12;2204:52;-1:-1:-1;2275:23:1;;2124:180;-1:-1:-1;2124:180:1:o;2517:248::-;2585:6;2593;2646:2;2634:9;2625:7;2621:23;2617:32;2614:52;;;2662:1;2659;2652:12;2614:52;-1:-1:-1;;2685:23:1;;;2755:2;2740:18;;;2727:32;;-1:-1:-1;2517:248:1:o;2770:186::-;2829:6;2882:2;2870:9;2861:7;2857:23;2853:32;2850:52;;;2898:1;2895;2888:12;2850:52;2921:29;2940:9;2921:29;:::i;:::-;2911:39;2770:186;-1:-1:-1;;;2770:186:1:o;3152:260::-;3220:6;3228;3281:2;3269:9;3260:7;3256:23;3252:32;3249:52;;;3297:1;3294;3287:12;3249:52;3320:29;3339:9;3320:29;:::i;:::-;3310:39;;3368:38;3402:2;3391:9;3387:18;3368:38;:::i;:::-;3358:48;;3152:260;;;;;:::o;3417:127::-;3478:10;3473:3;3469:20;3466:1;3459:31;3509:4;3506:1;3499:15;3533:4;3530:1;3523:15;3549:422;3638:1;3681:5;3638:1;3695:270;3716:7;3706:8;3703:21;3695:270;;;3775:4;3771:1;3767:6;3763:17;3757:4;3754:27;3751:53;;;3784:18;;:::i;:::-;3834:7;3824:8;3820:22;3817:55;;;3854:16;;;;3817:55;3933:22;;;;3893:15;;;;3695:270;;;3699:3;3549:422;;;;;:::o;3976:806::-;4025:5;4055:8;4045:80;;-1:-1:-1;4096:1:1;4110:5;;4045:80;4144:4;4134:76;;-1:-1:-1;4181:1:1;4195:5;;4134:76;4226:4;4244:1;4239:59;;;;4312:1;4307:130;;;;4219:218;;4239:59;4269:1;4260:10;;4283:5;;;4307:130;4344:3;4334:8;4331:17;4328:43;;;4351:18;;:::i;:::-;-1:-1:-1;;4407:1:1;4393:16;;4422:5;;4219:218;;4521:2;4511:8;4508:16;4502:3;4496:4;4493:13;4489:36;4483:2;4473:8;4470:16;4465:2;4459:4;4456:12;4452:35;4449:77;4446:159;;;-1:-1:-1;4558:19:1;;;4590:5;;4446:159;4637:34;4662:8;4656:4;4637:34;:::i;:::-;4707:6;4703:1;4699:6;4695:19;4686:7;4683:32;4680:58;;;4718:18;;:::i;:::-;4756:20;;3976:806;-1:-1:-1;;;3976:806:1:o;4787:140::-;4845:5;4874:47;4915:4;4905:8;4901:19;4895:4;4874:47;:::i;4932:168::-;5005:9;;;5036;;5053:15;;;5047:22;;5033:37;5023:71;;5074:18;;:::i;5105:347::-;5307:2;5289:21;;;5346:2;5326:18;;;5319:30;5385:25;5380:2;5365:18;;5358:53;5443:2;5428:18;;5105:347::o;6514:125::-;6579:9;;;6600:10;;;6597:36;;;6613:18;;:::i;6985:127::-;7046:10;7041:3;7037:20;7034:1;7027:31;7077:4;7074:1;7067:15;7101:4;7098:1;7091:15;7117:120;7157:1;7183;7173:35;;7188:18;;:::i;:::-;-1:-1:-1;7222:9:1;;7117:120::o;7242:128::-;7309:9;;;7330:11;;;7327:37;;;7344:18;;:::i;7507:127::-;7568:10;7563:3;7559:20;7556:1;7549:31;7599:4;7596:1;7589:15;7623:4;7620:1;7613:15;7639:988;7909:4;7957:3;7946:9;7942:19;7988:6;7977:9;7970:25;8014:2;8052:6;8047:2;8036:9;8032:18;8025:34;8095:3;8090:2;8079:9;8075:18;8068:31;8119:6;8154;8148:13;8185:6;8177;8170:22;8223:3;8212:9;8208:19;8201:26;;8262:2;8254:6;8250:15;8236:29;;8283:1;8293:195;8307:6;8304:1;8301:13;8293:195;;;8372:13;;-1:-1:-1;;;;;8368:39:1;8356:52;;8463:15;;;;8428:12;;;;8404:1;8322:9;8293:195;;;-1:-1:-1;;;;;;;8544:32:1;;;;8539:2;8524:18;;8517:60;-1:-1:-1;;;8608:3:1;8593:19;8586:35;8505:3;7639:988;-1:-1:-1;;;7639:988:1:o;9062:112::-;9094:1;9120;9110:35;;9125:18;;:::i;:::-;-1:-1:-1;9159:9:1;;9062:112::o;9179:135::-;9218:3;9239:17;;;9236:43;;9259:18;;:::i;:::-;-1:-1:-1;9306:1:1;9295:13;;9179:135::o;9319:175::-;9356:3;9400:4;9393:5;9389:16;9429:4;9420:7;9417:17;9414:43;;9437:18;;:::i;:::-;9486:1;9473:15;;9319:175;-1:-1:-1;;9319:175:1:o

Swarm Source

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