ETH Price: $2,666.97 (+2.13%)

Token

BlockData2021 (DDDD)
 

Overview

Max Total Supply

279 DDDD

Holders

279

Market

Volume (24H)

N/A

Min Price (24H)

N/A

Max Price (24H)

N/A
Filtered by Token Holder
allenque.eth
Balance
1 DDDD
0x5CA37299a257fD577A580f00dfe3C8D27dC336AC
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:
blockdata2021

Compiler Version
v0.5.17+commit.d19bba13

Optimization Enabled:
Yes with 200 runs

Other Settings:
default evmVersion, MIT license

Contract Source Code (Solidity)

/**
 *Submitted for verification at Etherscan.io on 2021-12-31
*/

pragma solidity ^0.5.17;

interface IERC165 {
    function supportsInterface(bytes4 interfaceId) external view returns (bool);
}

pragma solidity ^0.5.17;

contract IERC721 is IERC165 {
    event Transfer(address indexed from, address indexed to, uint256 indexed tokenId);
    event Approval(address indexed owner, address indexed approved, uint256 indexed tokenId);
    event ApprovalForAll(address indexed owner, address indexed operator, bool approved);

    function balanceOf(address owner) public view returns (uint256 balance);
    function ownerOf(uint256 tokenId) public view returns (address owner);
    function approve(address to, uint256 tokenId) public;
    function getApproved(uint256 tokenId) public view returns (address operator);
    function setApprovalForAll(address operator, bool _approved) public;
    function isApprovedForAll(address owner, address operator) public view returns (bool);
    function transferFrom(address from, address to, uint256 tokenId) public;
    function safeTransferFrom(address from, address to, uint256 tokenId) public;
    function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory data) public;
}

pragma solidity ^0.5.17;

contract IERC721Receiver {
    function onERC721Received(address operator, address from, uint256 tokenId, bytes memory data)
    public returns (bytes4);
}

pragma solidity ^0.5.17;

library SafeMath {
    function mul(uint256 a, uint256 b) internal pure returns (uint256) {
        if (a == 0) {
            return 0;
        }
        uint256 c = a * b;
        require(c / a == b);
        return c;
    }

    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b > 0);
        uint256 c = a / b;
        return c;
    }

    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b <= a);
        uint256 c = a - b;
        return c;
    }

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

    function mod(uint256 a, uint256 b) internal pure returns (uint256) {
        require(b != 0);
        return a % b;
    }
}

pragma solidity ^0.5.17;

library Address {
    function isContract(address account) internal view returns (bool) {
        uint256 size;
        assembly { size := extcodesize(account) }
        return size > 0;
    }
}

pragma solidity ^0.5.17;

contract ERC165 is IERC165 {
    bytes4 private constant _INTERFACE_ID_ERC165 = 0x01ffc9a7;
    mapping(bytes4 => bool) private _supportedInterfaces;

    constructor () internal {
        _registerInterface(_INTERFACE_ID_ERC165);
    }

    function supportsInterface(bytes4 interfaceId) external view returns (bool) {
        return _supportedInterfaces[interfaceId];
    }

    function _registerInterface(bytes4 interfaceId) internal {
        require(interfaceId != 0xffffffff);
        _supportedInterfaces[interfaceId] = true;
    }
}

pragma solidity ^0.5.17;

contract ERC721 is ERC165, IERC721 {
    using SafeMath for uint256;
    using Address for address;

    bytes4 private constant _ERC721_RECEIVED = 0x150b7a02;
    mapping (uint256 => address) private _tokenOwner;
    mapping (uint256 => address) private _tokenApprovals;
    mapping (address => uint256) private _ownedTokensCount;
    mapping (address => mapping (address => bool)) private _operatorApprovals;
    bytes4 private constant _INTERFACE_ID_ERC721 = 0x80ac58cd;

    constructor () public {
        _registerInterface(_INTERFACE_ID_ERC721);
    }

    function balanceOf(address owner) public view returns (uint256) {
        require(owner != address(0));
        return _ownedTokensCount[owner];
    }

    function ownerOf(uint256 tokenId) public view returns (address) {
        address owner = _tokenOwner[tokenId];
        require(owner != address(0));
        return owner;
    }

    function approve(address to, uint256 tokenId) public {
        address owner = ownerOf(tokenId);
        require(to != owner);
        require(msg.sender == owner || isApprovedForAll(owner, msg.sender));

        _tokenApprovals[tokenId] = to;
        emit Approval(owner, to, tokenId);
    }

    function getApproved(uint256 tokenId) public view returns (address) {
        require(_exists(tokenId));
        return _tokenApprovals[tokenId];
    }

    function setApprovalForAll(address to, bool approved) public {
        require(to != msg.sender);
        _operatorApprovals[msg.sender][to] = approved;
        emit ApprovalForAll(msg.sender, to, approved);
    }

    function isApprovedForAll(address owner, address operator) public view returns (bool) {
        return _operatorApprovals[owner][operator];
    }

    function transferFrom(address from, address to, uint256 tokenId) public {
        require(_isApprovedOrOwner(msg.sender, tokenId));
        _transferFrom(from, to, tokenId);
    }

    function safeTransferFrom(address from, address to, uint256 tokenId) public {
        safeTransferFrom(from, to, tokenId, "");
    }

    function safeTransferFrom(address from, address to, uint256 tokenId, bytes memory _data) public {
        transferFrom(from, to, tokenId);
        require(_checkOnERC721Received(from, to, tokenId, _data));
    }

    function _exists(uint256 tokenId) internal view returns (bool) {
        address owner = _tokenOwner[tokenId];
        return owner != address(0);
    }

    function _isApprovedOrOwner(address spender, uint256 tokenId) internal view returns (bool) {
        address owner = ownerOf(tokenId);
        return (spender == owner || getApproved(tokenId) == spender || isApprovedForAll(owner, spender));
    }

    function _mint(address to, uint256 tokenId) internal {
        require(to != address(0));
        require(!_exists(tokenId));

        _tokenOwner[tokenId] = to;
        _ownedTokensCount[to] = _ownedTokensCount[to].add(1);

        emit Transfer(address(0), to, tokenId);
    }

    function _transferFrom(address from, address to, uint256 tokenId) internal {
        require(ownerOf(tokenId) == from);
        require(to != address(0));

        _clearApproval(tokenId);

        _ownedTokensCount[from] = _ownedTokensCount[from].sub(1);
        _ownedTokensCount[to] = _ownedTokensCount[to].add(1);
        _tokenOwner[tokenId] = to;

        emit Transfer(from, to, tokenId);
    }

    function _checkOnERC721Received(address from, address to, uint256 tokenId, bytes memory _data)
        internal returns (bool)
    {
        if (!to.isContract()) {
            return true;
        }

        bytes4 retval = IERC721Receiver(to).onERC721Received(msg.sender, from, tokenId, _data);
        return (retval == _ERC721_RECEIVED);
    }

    function _clearApproval(uint256 tokenId) private {
        if (_tokenApprovals[tokenId] != address(0)) {
            _tokenApprovals[tokenId] = address(0);
        }
    }

    function uint2str(uint i) internal pure returns (string memory){
        if (i == 0) return "0";
        uint j = i;
        uint length;
        while (j != 0){
            length++;
            j /= 10;
        }
        bytes memory bstr = new bytes(length);
        uint k = length - 1;
        while (i != 0){
            bstr[k--] = byte(uint8(48 + i % 10));
            i /= 10;
        }
        return string(bstr);
    }

    function strConcat(string memory _a, string memory _b) internal pure returns (string memory) {
        bytes memory _ba = bytes(_a);
        bytes memory _bb = bytes(_b);
        string memory ab = new string(_ba.length + _bb.length);
        bytes memory bab = bytes(ab);
        uint k = 0;
        for (uint i = 0; i < _ba.length; i++) bab[k++] = _ba[i];
        for (uint j = 0; j < _bb.length; j++) bab[k++] = _bb[j];
        return string(bab);
    }

}

pragma solidity ^0.5.17;

contract IERC721Enumerable is IERC721 {
    function totalSupply() public view returns (uint256);
    function tokenOfOwnerByIndex(address owner, uint256 index) public view returns (uint256 tokenId);
    function tokenByIndex(uint256 index) public view returns (uint256);
}

pragma solidity ^0.5.17;

contract ERC721Enumerable is ERC165, ERC721, IERC721Enumerable {

    mapping(address => uint256[]) private _ownedTokens;
    mapping(uint256 => uint256) private _ownedTokensIndex;
    uint256[] private _allTokens;
    mapping(uint256 => uint256) private _allTokensIndex;
    bytes4 private constant _INTERFACE_ID_ERC721_ENUMERABLE = 0x780e9d63;

    constructor () public {
        _registerInterface(_INTERFACE_ID_ERC721_ENUMERABLE);
    }

    function tokenOfOwnerByIndex(address owner, uint256 index) public view returns (uint256) {
        require(index < balanceOf(owner));
        return _ownedTokens[owner][index];
    }

    function totalSupply() public view returns (uint256) {
        return _allTokens.length;
    }

    function tokenByIndex(uint256 index) public view returns (uint256) {
        require(index < totalSupply());
        return _allTokens[index];
    }

    function _transferFrom(address from, address to, uint256 tokenId) internal {
        super._transferFrom(from, to, tokenId);
        _removeTokenFromOwnerEnumeration(from, tokenId);
        _addTokenToOwnerEnumeration(to, tokenId);
    }

    function _mint(address to, uint256 tokenId) internal {
        super._mint(to, tokenId);
        _addTokenToOwnerEnumeration(to, tokenId);
        _addTokenToAllTokensEnumeration(tokenId);
    }

    function _tokensOfOwner(address owner) internal view returns (uint256[] storage) {
        return _ownedTokens[owner];
    }

    function _addTokenToOwnerEnumeration(address to, uint256 tokenId) private {
        _ownedTokensIndex[tokenId] = _ownedTokens[to].length;
        _ownedTokens[to].push(tokenId);
    }

    function _addTokenToAllTokensEnumeration(uint256 tokenId) private {
        _allTokensIndex[tokenId] = _allTokens.length;
        _allTokens.push(tokenId);
    }

    function _removeTokenFromOwnerEnumeration(address from, uint256 tokenId) private {
        uint256 lastTokenIndex = _ownedTokens[from].length.sub(1);
        uint256 tokenIndex = _ownedTokensIndex[tokenId];

        if (tokenIndex != lastTokenIndex) {
            uint256 lastTokenId = _ownedTokens[from][lastTokenIndex];
            _ownedTokens[from][tokenIndex] = lastTokenId;
            _ownedTokensIndex[lastTokenId] = tokenIndex;
        }

        _ownedTokens[from].length--;
    }

    function _removeTokenFromAllTokensEnumeration(uint256 tokenId) private {

        uint256 lastTokenIndex = _allTokens.length.sub(1);
        uint256 tokenIndex = _allTokensIndex[tokenId];
        uint256 lastTokenId = _allTokens[lastTokenIndex];

        _allTokens[tokenIndex] = lastTokenId;
        _allTokensIndex[lastTokenId] = tokenIndex;

        _allTokens.length--;
        _allTokensIndex[tokenId] = 0;
    }
}

pragma solidity ^0.5.17;

contract IERC721Metadata is IERC721 {
    function name() external view returns (string memory);
    function symbol() external view returns (string memory);
    function tokenURI(uint256 tokenId) external view returns (string memory);
}


pragma solidity ^0.5.17;

contract ERC721Metadata is ERC165, ERC721, IERC721Metadata {

    string private _name;
    string private _symbol;

    bytes4 private constant _INTERFACE_ID_ERC721_METADATA = 0x5b5e139f;

    constructor (string memory name, string memory symbol) public {
        _name = name;
        _symbol = symbol;
        _registerInterface(_INTERFACE_ID_ERC721_METADATA);
    }

    function name() external view returns (string memory) {
        return _name;
    }

    function symbol() external view returns (string memory) {
        return _symbol;
    }

    function tokenURI(uint256 tokenId) external view returns (string memory) {
        require(_exists(tokenId));
        string memory infoUrl;
        infoUrl = strConcat('https://blockdatanalysis.com/v2/', uint2str(tokenId));
        return infoUrl;
    }
}

pragma solidity ^0.5.17;

contract ERC721Full is ERC721, ERC721Enumerable, ERC721Metadata {
    constructor (string memory name, string memory symbol) public ERC721Metadata(name, symbol) {
    }
}

pragma solidity ^0.5.17;

library Roles {
    struct Role {
        mapping (address => bool) bearer;
    }

    function add(Role storage role, address account) internal {
        require(account != address(0));
        require(!has(role, account));

        role.bearer[account] = true;
    }

    function remove(Role storage role, address account) internal {
        require(account != address(0));
        require(has(role, account));

        role.bearer[account] = false;
    }

    function has(Role storage role, address account) internal view returns (bool) {
        require(account != address(0));
        return role.bearer[account];
    }
}

pragma solidity ^0.5.17;


contract MinterRole {
    using Roles for Roles.Role;
    event MinterAdded(address indexed account);
    event MinterRemoved(address indexed account);

    Roles.Role private _minters;

    constructor () internal {
        _addMinter(msg.sender);
    }

    modifier onlyMinter() {
        require(isMinter(msg.sender));
        _;
    }

    function isMinter(address account) public view returns (bool) {
        return _minters.has(account);
    }

    function addMinter(address account) public onlyMinter {
        _addMinter(account);
    }

    function renounceMinter() public {
        _removeMinter(msg.sender);
    }

    function _addMinter(address account) internal {
        _minters.add(account);
        emit MinterAdded(account);
    }

    function _removeMinter(address account) internal {
        _minters.remove(account);
        emit MinterRemoved(account);
    }
}

pragma solidity ^0.5.17;

contract ERC721Mintable is ERC721, MinterRole {

    function mint(address to, uint256 tokenId) public onlyMinter returns (bool) {
        _mint(to, tokenId);
        return true;
    }
}


pragma solidity ^0.5.17;

contract Ownable {
    address private _owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    constructor () internal {
        _owner = msg.sender;
        emit OwnershipTransferred(address(0), _owner);
    }

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

    modifier onlyOwner() {
        require(isOwner());
        _;
    }

    function isOwner() public view returns (bool) {
        return msg.sender == _owner;
    }

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

    function transferOwnership(address newOwner) public onlyOwner {
        _transferOwnership(newOwner);
    }

    function _transferOwnership(address newOwner) internal {
        require(newOwner != address(0));
        emit OwnershipTransferred(_owner, newOwner);
        _owner = newOwner;
    }
}


pragma solidity ^0.5.17;

contract blockdata2021 is ERC721Full, ERC721Mintable, Ownable {
    using SafeMath for uint256;

    constructor (string memory _name, string memory _symbol) public
        ERC721Mintable()
        ERC721Full(_name, _symbol){
    }

    function transfer(address _to, uint256 _tokenId) public {
        safeTransferFrom(msg.sender, _to, _tokenId);
    }

    function transferAll(address _to, uint256[] memory _tokenId) public {
        for (uint i = 0; i < _tokenId.length; i++) {
            safeTransferFrom(msg.sender, _to, _tokenId[i]);
        }
    }

    function batchAddrMint(address[] memory _to, uint256 _tokenId) public onlyMinter{
        for (uint i = 0; i < _to.length; i++) {
            _mint(_to[i], _tokenId.add(i));
        }
    }

}

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"string","name":"_name","type":"string"},{"internalType":"string","name":"_symbol","type":"string"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"approved","type":"address"},{"indexed":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"owner","type":"address"},{"indexed":true,"internalType":"address","name":"operator","type":"address"},{"indexed":false,"internalType":"bool","name":"approved","type":"bool"}],"name":"ApprovalForAll","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"MinterAdded","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"account","type":"address"}],"name":"MinterRemoved","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":true,"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"Transfer","type":"event"},{"constant":false,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"addMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"approve","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address[]","name":"_to","type":"address[]"},{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"batchAddrMint","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"getApproved","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"operator","type":"address"}],"name":"isApprovedForAll","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"isMinter","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"isOwner","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"mint","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"ownerOf","outputs":[{"internalType":"address","name":"","type":"address"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[],"name":"renounceMinter","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[],"name":"renounceOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"safeTransferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"},{"internalType":"bytes","name":"_data","type":"bytes"}],"name":"safeTransferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"to","type":"address"},{"internalType":"bool","name":"approved","type":"bool"}],"name":"setApprovalForAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":true,"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"uint256","name":"index","type":"uint256"}],"name":"tokenOfOwnerByIndex","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"tokenURI","outputs":[{"internalType":"string","name":"","type":"string"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":true,"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"payable":false,"stateMutability":"view","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_tokenId","type":"uint256"}],"name":"transfer","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256[]","name":"_tokenId","type":"uint256[]"}],"name":"transferAll","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"from","type":"address"},{"internalType":"address","name":"to","type":"address"},{"internalType":"uint256","name":"tokenId","type":"uint256"}],"name":"transferFrom","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"},{"constant":false,"inputs":[{"internalType":"address","name":"newOwner","type":"address"}],"name":"transferOwnership","outputs":[],"payable":false,"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b5060405162001b3c38038062001b3c833981810160405260408110156200003757600080fd5b81019080805160405193929190846401000000008211156200005857600080fd5b9083019060208201858111156200006e57600080fd5b82516401000000008111828201881017156200008957600080fd5b82525081516020918201929091019080838360005b83811015620000b85781810151838201526020016200009e565b50505050905090810190601f168015620000e65780820380516001836020036101000a031916815260200191505b50604052602001805160405193929190846401000000008211156200010a57600080fd5b9083019060208201858111156200012057600080fd5b82516401000000008111828201881017156200013b57600080fd5b82525081516020918201929091019080838360005b838110156200016a57818101518382015260200162000150565b50505050905090810190601f168015620001985780820380516001836020036101000a031916815260200191505b50604052508391508290508181620001c06301ffc9a760e01b6001600160e01b03620002a616565b620001db6380ac58cd60e01b6001600160e01b03620002a616565b620001f663780e9d6360e01b6001600160e01b03620002a616565b81516200020b906009906020850190620003c4565b5080516200022190600a906020840190620003c4565b506200023d635b5e139f60e01b6001600160e01b03620002a616565b505050506200025233620002e360201b60201c565b600c80546001600160a01b0319163317908190556040516001600160a01b0391909116906000907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908290a3505062000469565b6001600160e01b03198082161415620002be57600080fd5b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b620002fe81600b6200033560201b620015671790919060201c565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b6001600160a01b0381166200034957600080fd5b6200035e82826001600160e01b036200038e16565b156200036957600080fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b60006001600160a01b038216620003a457600080fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b828054600181600116156101000203166002900490600052602060002090601f016020900481019282601f106200040757805160ff191683800117855562000437565b8280016001018555821562000437579182015b82811115620004375782518255916020019190600101906200041a565b506200044592915062000449565b5090565b6200046691905b8082111562000445576000815560010162000450565b90565b6116c380620004796000396000f3fe608060405234801561001057600080fd5b50600436106101a95760003560e01c8063715018a6116100f9578063a9059cbb11610097578063c87b56dd11610071578063c87b56dd14610652578063c8a2d6031461066f578063e985e9c514610714578063f2fde38b14610742576101a9565b8063a9059cbb1461053a578063aa271e1a14610566578063b88d4fde1461058c576101a9565b806395d89b41116100d357806395d89b41146104d6578063983b2d56146104de5780639865027514610504578063a22cb4651461050c576101a9565b8063715018a6146104be5780638da5cb5b146104c65780638f32d59b146104ce576101a9565b80632f745c59116101665780634f6ccce7116101405780634f6ccce7146103ab5780636352211e146103c857806367025dcf146103e557806370a0823114610498576101a9565b80632f745c591461031d57806340c10f191461034957806342842e0e14610375576101a9565b806301ffc9a7146101ae57806306fdde03146101e9578063081812fc14610266578063095ea7b31461029f57806318160ddd146102cd57806323b872dd146102e7575b600080fd5b6101d5600480360360208110156101c457600080fd5b50356001600160e01b031916610768565b604080519115158252519081900360200190f35b6101f161078b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561022b578181015183820152602001610213565b50505050905090810190601f1680156102585780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102836004803603602081101561027c57600080fd5b5035610822565b604080516001600160a01b039092168252519081900360200190f35b6102cb600480360360408110156102b557600080fd5b506001600160a01b038135169060200135610852565b005b6102d56108ff565b60408051918252519081900360200190f35b6102cb600480360360608110156102fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610905565b6102d56004803603604081101561033357600080fd5b506001600160a01b038135169060200135610928565b6101d56004803603604081101561035f57600080fd5b506001600160a01b038135169060200135610975565b6102cb6004803603606081101561038b57600080fd5b506001600160a01b0381358116916020810135909116906040013561099c565b6102d5600480360360208110156103c157600080fd5b50356109b7565b610283600480360360208110156103de57600080fd5b50356109eb565b6102cb600480360360408110156103fb57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561042657600080fd5b82018360208201111561043857600080fd5b8035906020019184602083028401116401000000008311171561045a57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610a13945050505050565b6102d5600480360360208110156104ae57600080fd5b50356001600160a01b0316610a45565b6102cb610a76565b610283610ad1565b6101d5610ae0565b6101f1610af1565b6102cb600480360360208110156104f457600080fd5b50356001600160a01b0316610b52565b6102cb610b70565b6102cb6004803603604081101561052257600080fd5b506001600160a01b0381351690602001351515610b7b565b6102cb6004803603604081101561055057600080fd5b506001600160a01b038135169060200135610bff565b6101d56004803603602081101561057c57600080fd5b50356001600160a01b0316610c0e565b6102cb600480360360808110156105a257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156105dd57600080fd5b8201836020820111156105ef57600080fd5b8035906020019184600183028401116401000000008311171561061157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610c21945050505050565b6101f16004803603602081101561066857600080fd5b5035610c47565b6102cb6004803603604081101561068557600080fd5b8101906020810181356401000000008111156106a057600080fd5b8201836020820111156106b257600080fd5b803590602001918460208302840111640100000000831117156106d457600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295505091359250610cab915050565b6101d56004803603604081101561072a57600080fd5b506001600160a01b0381358116916020013516610d00565b6102cb6004803603602081101561075857600080fd5b50356001600160a01b0316610d2e565b6001600160e01b0319811660009081526020819052604090205460ff165b919050565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156108175780601f106107ec57610100808354040283529160200191610817565b820191906000526020600020905b8154815290600101906020018083116107fa57829003601f168201915b505050505090505b90565b600061082d82610d48565b61083657600080fd5b506000908152600260205260409020546001600160a01b031690565b600061085d826109eb565b9050806001600160a01b0316836001600160a01b0316141561087e57600080fd5b336001600160a01b038216148061089a575061089a8133610d00565b6108a357600080fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60075490565b61090f3382610d65565b61091857600080fd5b610923838383610dc4565b505050565b600061093383610a45565b821061093e57600080fd5b6001600160a01b038316600090815260056020526040902080548390811061096257fe5b9060005260206000200154905092915050565b600061098033610c0e565b61098957600080fd5b6109938383610de3565b50600192915050565b61092383838360405180602001604052806000815250610c21565b60006109c16108ff565b82106109cc57600080fd5b600782815481106109d957fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b031680610a0d57600080fd5b92915050565b60005b815181101561092357610a3d3384848481518110610a3057fe5b602002602001015161099c565b600101610a16565b60006001600160a01b038216610a5a57600080fd5b506001600160a01b031660009081526003602052604090205490565b610a7e610ae0565b610a8757600080fd5b600c546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600c80546001600160a01b0319169055565b600c546001600160a01b031690565b600c546001600160a01b0316331490565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156108175780601f106107ec57610100808354040283529160200191610817565b610b5b33610c0e565b610b6457600080fd5b610b6d81610e00565b50565b610b7933610e48565b565b6001600160a01b038216331415610b9157600080fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b610c0a33838361099c565b5050565b6000610a0d600b8363ffffffff610e9016565b610c2c848484610905565b610c3884848484610ec5565b610c4157600080fd5b50505050565b6060610c5282610d48565b610c5b57600080fd5b6060610ca46040518060400160405280602081526020017f68747470733a2f2f626c6f636b646174616e616c797369732e636f6d2f76322f815250610c9f85610ff8565b6110b9565b9392505050565b610cb433610c0e565b610cbd57600080fd5b60005b825181101561092357610cf8838281518110610cd857fe5b6020026020010151610cf383856111b090919063ffffffff16565b610de3565b600101610cc0565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b610d36610ae0565b610d3f57600080fd5b610b6d816111c2565b6000908152600160205260409020546001600160a01b0316151590565b600080610d71836109eb565b9050806001600160a01b0316846001600160a01b03161480610dac5750836001600160a01b0316610da184610822565b6001600160a01b0316145b80610dbc5750610dbc8185610d00565b949350505050565b610dcf838383611231565b610dd9838261133e565b6109238282611433565b610ded8282611471565b610df78282611433565b610c0a81611523565b610e11600b8263ffffffff61156716565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b610e59600b8263ffffffff6115b316565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b038216610ea557600080fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6000610ed9846001600160a01b03166115fb565b610ee557506001610dbc565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610f5f578181015183820152602001610f47565b50505050905090810190601f168015610f8c5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610fae57600080fd5b505af1158015610fc2573d6000803e3d6000fd5b505050506040513d6020811015610fd857600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b60608161101d57506040805180820190915260018152600360fc1b6020820152610786565b8160005b811561103557600101600a82049150611021565b6060816040519080825280601f01601f191660200182016040528015611062576020820181803883390190505b50905060001982015b85156110b057600a860660300160f81b8282806001900393508151811061108e57fe5b60200101906001600160f81b031916908160001a905350600a8604955061106b565b50949350505050565b6060808390506060839050606081518351016040519080825280601f01601f1916602001820160405280156110f5576020820181803883390190505b509050806000805b855181101561114e5785818151811061111257fe5b602001015160f81c60f81b83838060010194508151811061112f57fe5b60200101906001600160f81b031916908160001a9053506001016110fd565b5060005b84518110156111a35784818151811061116757fe5b602001015160f81c60f81b83838060010194508151811061118457fe5b60200101906001600160f81b031916908160001a905350600101611152565b5090979650505050505050565b600082820183811015610ca457600080fd5b6001600160a01b0381166111d557600080fd5b600c546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600c80546001600160a01b0319166001600160a01b0392909216919091179055565b826001600160a01b0316611244826109eb565b6001600160a01b03161461125757600080fd5b6001600160a01b03821661126a57600080fd5b61127381611601565b6001600160a01b03831660009081526003602052604090205461129d90600163ffffffff61163c16565b6001600160a01b0380851660009081526003602052604080822093909355908416815220546112d390600163ffffffff6111b016565b6001600160a01b038084166000818152600360209081526040808320959095558582526001905283812080546001600160a01b031916831790559251849391928716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b03821660009081526005602052604081205461136890600163ffffffff61163c16565b600083815260066020526040902054909150808214611403576001600160a01b03841660009081526005602052604081208054849081106113a557fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b0316815260200190815260200160002083815481106113e357fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b038416600090815260056020526040902080549061142c906000198301611651565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b6001600160a01b03821661148457600080fd5b61148d81610d48565b1561149757600080fd5b600081815260016020818152604080842080546001600160a01b0319166001600160a01b03881690811790915584526003909152909120546114d8916111b0565b6001600160a01b0383166000818152600360205260408082209390935591518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600780546000838152600860205260408120829055600182018355919091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880155565b6001600160a01b03811661157a57600080fd5b6115848282610e90565b1561158e57600080fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6001600160a01b0381166115c657600080fd5b6115d08282610e90565b6115d957600080fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b3b151590565b6000818152600260205260409020546001600160a01b031615610b6d57600090815260026020526040902080546001600160a01b0319169055565b60008282111561164b57600080fd5b50900390565b8154818355818111156109235760008381526020902061092391810190830161081f91905b8082111561168a5760008155600101611676565b509056fea265627a7a723158204e0a7033ca6707b3f8f105ebd78f2dac72843461cd3ec8c31914904a6ca57b2c64736f6c6343000511003200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000d426c6f636b44617461323032310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044444444400000000000000000000000000000000000000000000000000000000

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101a95760003560e01c8063715018a6116100f9578063a9059cbb11610097578063c87b56dd11610071578063c87b56dd14610652578063c8a2d6031461066f578063e985e9c514610714578063f2fde38b14610742576101a9565b8063a9059cbb1461053a578063aa271e1a14610566578063b88d4fde1461058c576101a9565b806395d89b41116100d357806395d89b41146104d6578063983b2d56146104de5780639865027514610504578063a22cb4651461050c576101a9565b8063715018a6146104be5780638da5cb5b146104c65780638f32d59b146104ce576101a9565b80632f745c59116101665780634f6ccce7116101405780634f6ccce7146103ab5780636352211e146103c857806367025dcf146103e557806370a0823114610498576101a9565b80632f745c591461031d57806340c10f191461034957806342842e0e14610375576101a9565b806301ffc9a7146101ae57806306fdde03146101e9578063081812fc14610266578063095ea7b31461029f57806318160ddd146102cd57806323b872dd146102e7575b600080fd5b6101d5600480360360208110156101c457600080fd5b50356001600160e01b031916610768565b604080519115158252519081900360200190f35b6101f161078b565b6040805160208082528351818301528351919283929083019185019080838360005b8381101561022b578181015183820152602001610213565b50505050905090810190601f1680156102585780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b6102836004803603602081101561027c57600080fd5b5035610822565b604080516001600160a01b039092168252519081900360200190f35b6102cb600480360360408110156102b557600080fd5b506001600160a01b038135169060200135610852565b005b6102d56108ff565b60408051918252519081900360200190f35b6102cb600480360360608110156102fd57600080fd5b506001600160a01b03813581169160208101359091169060400135610905565b6102d56004803603604081101561033357600080fd5b506001600160a01b038135169060200135610928565b6101d56004803603604081101561035f57600080fd5b506001600160a01b038135169060200135610975565b6102cb6004803603606081101561038b57600080fd5b506001600160a01b0381358116916020810135909116906040013561099c565b6102d5600480360360208110156103c157600080fd5b50356109b7565b610283600480360360208110156103de57600080fd5b50356109eb565b6102cb600480360360408110156103fb57600080fd5b6001600160a01b03823516919081019060408101602082013564010000000081111561042657600080fd5b82018360208201111561043857600080fd5b8035906020019184602083028401116401000000008311171561045a57600080fd5b919080806020026020016040519081016040528093929190818152602001838360200280828437600092019190915250929550610a13945050505050565b6102d5600480360360208110156104ae57600080fd5b50356001600160a01b0316610a45565b6102cb610a76565b610283610ad1565b6101d5610ae0565b6101f1610af1565b6102cb600480360360208110156104f457600080fd5b50356001600160a01b0316610b52565b6102cb610b70565b6102cb6004803603604081101561052257600080fd5b506001600160a01b0381351690602001351515610b7b565b6102cb6004803603604081101561055057600080fd5b506001600160a01b038135169060200135610bff565b6101d56004803603602081101561057c57600080fd5b50356001600160a01b0316610c0e565b6102cb600480360360808110156105a257600080fd5b6001600160a01b038235811692602081013590911691604082013591908101906080810160608201356401000000008111156105dd57600080fd5b8201836020820111156105ef57600080fd5b8035906020019184600183028401116401000000008311171561061157600080fd5b91908080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250929550610c21945050505050565b6101f16004803603602081101561066857600080fd5b5035610c47565b6102cb6004803603604081101561068557600080fd5b8101906020810181356401000000008111156106a057600080fd5b8201836020820111156106b257600080fd5b803590602001918460208302840111640100000000831117156106d457600080fd5b9190808060200260200160405190810160405280939291908181526020018383602002808284376000920191909152509295505091359250610cab915050565b6101d56004803603604081101561072a57600080fd5b506001600160a01b0381358116916020013516610d00565b6102cb6004803603602081101561075857600080fd5b50356001600160a01b0316610d2e565b6001600160e01b0319811660009081526020819052604090205460ff165b919050565b60098054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156108175780601f106107ec57610100808354040283529160200191610817565b820191906000526020600020905b8154815290600101906020018083116107fa57829003601f168201915b505050505090505b90565b600061082d82610d48565b61083657600080fd5b506000908152600260205260409020546001600160a01b031690565b600061085d826109eb565b9050806001600160a01b0316836001600160a01b0316141561087e57600080fd5b336001600160a01b038216148061089a575061089a8133610d00565b6108a357600080fd5b60008281526002602052604080822080546001600160a01b0319166001600160a01b0387811691821790925591518593918516917f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b92591a4505050565b60075490565b61090f3382610d65565b61091857600080fd5b610923838383610dc4565b505050565b600061093383610a45565b821061093e57600080fd5b6001600160a01b038316600090815260056020526040902080548390811061096257fe5b9060005260206000200154905092915050565b600061098033610c0e565b61098957600080fd5b6109938383610de3565b50600192915050565b61092383838360405180602001604052806000815250610c21565b60006109c16108ff565b82106109cc57600080fd5b600782815481106109d957fe5b90600052602060002001549050919050565b6000818152600160205260408120546001600160a01b031680610a0d57600080fd5b92915050565b60005b815181101561092357610a3d3384848481518110610a3057fe5b602002602001015161099c565b600101610a16565b60006001600160a01b038216610a5a57600080fd5b506001600160a01b031660009081526003602052604090205490565b610a7e610ae0565b610a8757600080fd5b600c546040516000916001600160a01b0316907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e0908390a3600c80546001600160a01b0319169055565b600c546001600160a01b031690565b600c546001600160a01b0316331490565b600a8054604080516020601f60026000196101006001881615020190951694909404938401819004810282018101909252828152606093909290918301828280156108175780601f106107ec57610100808354040283529160200191610817565b610b5b33610c0e565b610b6457600080fd5b610b6d81610e00565b50565b610b7933610e48565b565b6001600160a01b038216331415610b9157600080fd5b3360008181526004602090815260408083206001600160a01b03871680855290835292819020805460ff1916861515908117909155815190815290519293927f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31929181900390910190a35050565b610c0a33838361099c565b5050565b6000610a0d600b8363ffffffff610e9016565b610c2c848484610905565b610c3884848484610ec5565b610c4157600080fd5b50505050565b6060610c5282610d48565b610c5b57600080fd5b6060610ca46040518060400160405280602081526020017f68747470733a2f2f626c6f636b646174616e616c797369732e636f6d2f76322f815250610c9f85610ff8565b6110b9565b9392505050565b610cb433610c0e565b610cbd57600080fd5b60005b825181101561092357610cf8838281518110610cd857fe5b6020026020010151610cf383856111b090919063ffffffff16565b610de3565b600101610cc0565b6001600160a01b03918216600090815260046020908152604080832093909416825291909152205460ff1690565b610d36610ae0565b610d3f57600080fd5b610b6d816111c2565b6000908152600160205260409020546001600160a01b0316151590565b600080610d71836109eb565b9050806001600160a01b0316846001600160a01b03161480610dac5750836001600160a01b0316610da184610822565b6001600160a01b0316145b80610dbc5750610dbc8185610d00565b949350505050565b610dcf838383611231565b610dd9838261133e565b6109238282611433565b610ded8282611471565b610df78282611433565b610c0a81611523565b610e11600b8263ffffffff61156716565b6040516001600160a01b038216907f6ae172837ea30b801fbfcdd4108aa1d5bf8ff775444fd70256b44e6bf3dfc3f690600090a250565b610e59600b8263ffffffff6115b316565b6040516001600160a01b038216907fe94479a9f7e1952cc78f2d6baab678adc1b772d936c6583def489e524cb6669290600090a250565b60006001600160a01b038216610ea557600080fd5b506001600160a01b03166000908152602091909152604090205460ff1690565b6000610ed9846001600160a01b03166115fb565b610ee557506001610dbc565b604051630a85bd0160e11b815233600482018181526001600160a01b03888116602485015260448401879052608060648501908152865160848601528651600095928a169463150b7a029490938c938b938b939260a4019060208501908083838e5b83811015610f5f578181015183820152602001610f47565b50505050905090810190601f168015610f8c5780820380516001836020036101000a031916815260200191505b5095505050505050602060405180830381600087803b158015610fae57600080fd5b505af1158015610fc2573d6000803e3d6000fd5b505050506040513d6020811015610fd857600080fd5b50516001600160e01b031916630a85bd0160e11b14915050949350505050565b60608161101d57506040805180820190915260018152600360fc1b6020820152610786565b8160005b811561103557600101600a82049150611021565b6060816040519080825280601f01601f191660200182016040528015611062576020820181803883390190505b50905060001982015b85156110b057600a860660300160f81b8282806001900393508151811061108e57fe5b60200101906001600160f81b031916908160001a905350600a8604955061106b565b50949350505050565b6060808390506060839050606081518351016040519080825280601f01601f1916602001820160405280156110f5576020820181803883390190505b509050806000805b855181101561114e5785818151811061111257fe5b602001015160f81c60f81b83838060010194508151811061112f57fe5b60200101906001600160f81b031916908160001a9053506001016110fd565b5060005b84518110156111a35784818151811061116757fe5b602001015160f81c60f81b83838060010194508151811061118457fe5b60200101906001600160f81b031916908160001a905350600101611152565b5090979650505050505050565b600082820183811015610ca457600080fd5b6001600160a01b0381166111d557600080fd5b600c546040516001600160a01b038084169216907f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e090600090a3600c80546001600160a01b0319166001600160a01b0392909216919091179055565b826001600160a01b0316611244826109eb565b6001600160a01b03161461125757600080fd5b6001600160a01b03821661126a57600080fd5b61127381611601565b6001600160a01b03831660009081526003602052604090205461129d90600163ffffffff61163c16565b6001600160a01b0380851660009081526003602052604080822093909355908416815220546112d390600163ffffffff6111b016565b6001600160a01b038084166000818152600360209081526040808320959095558582526001905283812080546001600160a01b031916831790559251849391928716917fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef91a4505050565b6001600160a01b03821660009081526005602052604081205461136890600163ffffffff61163c16565b600083815260066020526040902054909150808214611403576001600160a01b03841660009081526005602052604081208054849081106113a557fe5b906000526020600020015490508060056000876001600160a01b03166001600160a01b0316815260200190815260200160002083815481106113e357fe5b600091825260208083209091019290925591825260069052604090208190555b6001600160a01b038416600090815260056020526040902080549061142c906000198301611651565b5050505050565b6001600160a01b0390911660009081526005602081815260408084208054868652600684529185208290559282526001810183559183529091200155565b6001600160a01b03821661148457600080fd5b61148d81610d48565b1561149757600080fd5b600081815260016020818152604080842080546001600160a01b0319166001600160a01b03881690811790915584526003909152909120546114d8916111b0565b6001600160a01b0383166000818152600360205260408082209390935591518392907fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef908290a45050565b600780546000838152600860205260408120829055600182018355919091527fa66cc928b5edb82af9bd49922954155ab7b0942694bea4ce44661d9a8736c6880155565b6001600160a01b03811661157a57600080fd5b6115848282610e90565b1561158e57600080fd5b6001600160a01b0316600090815260209190915260409020805460ff19166001179055565b6001600160a01b0381166115c657600080fd5b6115d08282610e90565b6115d957600080fd5b6001600160a01b0316600090815260209190915260409020805460ff19169055565b3b151590565b6000818152600260205260409020546001600160a01b031615610b6d57600090815260026020526040902080546001600160a01b0319169055565b60008282111561164b57600080fd5b50900390565b8154818355818111156109235760008381526020902061092391810190830161081f91905b8082111561168a5760008155600101611676565b509056fea265627a7a723158204e0a7033ca6707b3f8f105ebd78f2dac72843461cd3ec8c31914904a6ca57b2c64736f6c63430005110032

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

00000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000080000000000000000000000000000000000000000000000000000000000000000d426c6f636b44617461323032310000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000044444444400000000000000000000000000000000000000000000000000000000

-----Decoded View---------------
Arg [0] : _name (string): BlockData2021
Arg [1] : _symbol (string): DDDD

-----Encoded View---------------
6 Constructor Arguments found :
Arg [0] : 0000000000000000000000000000000000000000000000000000000000000040
Arg [1] : 0000000000000000000000000000000000000000000000000000000000000080
Arg [2] : 000000000000000000000000000000000000000000000000000000000000000d
Arg [3] : 426c6f636b446174613230323100000000000000000000000000000000000000
Arg [4] : 0000000000000000000000000000000000000000000000000000000000000004
Arg [5] : 4444444400000000000000000000000000000000000000000000000000000000


Deployed Bytecode Sourcemap

15472:779:0:-;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;15472:779:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2766:135;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;2766:135:0;-1:-1:-1;;;;;;2766:135:0;;:::i;:::-;;;;;;;;;;;;;;;;;;11888:85;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;11888:85:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4341:154;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;4341:154:0;;:::i;:::-;;;;-1:-1:-1;;;;;4341:154:0;;;;;;;;;;;;;;4034:299;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4034:299:0;;;;;;;;:::i;:::-;;9034:96;;;:::i;:::-;;;;;;;;;;;;;;;;4883:182;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4883:182:0;;;;;;;;;;;;;;;;;:::i;8841:185::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;8841:185:0;;;;;;;;:::i;14275:135::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;14275:135:0;;;;;;;;:::i;5073:134::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;5073:134:0;;;;;;;;;;;;;;;;;:::i;9138:151::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;9138:151:0;;:::i;3845:181::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3845:181:0;;:::i;15843:202::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;15843:202:0;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;15843:202:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;15843:202:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;15843:202:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;15843:202:0;;-1:-1:-1;15843:202:0;;-1:-1:-1;;;;;15843:202:0:i;3684:153::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;3684:153:0;-1:-1:-1;;;;;3684:153:0;;:::i;14983:140::-;;;:::i;14718:79::-;;;:::i;14883:92::-;;;:::i;11981:89::-;;;:::i;13740:92::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13740:92:0;-1:-1:-1;;;;;13740:92:0;;:::i;13840:77::-;;;:::i;4503:217::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4503:217:0;;;;;;;;;;:::i;15717:118::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;15717:118:0;;;;;;;;:::i;13623:109::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;13623:109:0;-1:-1:-1;;;;;13623:109:0;;:::i;5215:214::-;;;;;;13:3:-1;8;5:12;2:2;;;30:1;27;20:12;2:2;-1:-1;;;;;5215:214:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;5215:214:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;5215:214:0;;;;;;100:9:-1;95:1;81:12;77:20;67:8;63:35;60:50;39:11;25:12;22:29;11:107;8:2;;;131:1;128;121:12;8:2;5215:214:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;5215:214:0;;-1:-1:-1;5215:214:0;;-1:-1:-1;;;;;5215:214:0:i;12078:259::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;12078:259:0;;:::i;16053:193::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;16053:193:0;;;;;;;;21:11:-1;5:28;;2:2;;;46:1;43;36:12;2:2;16053:193:0;;35:9:-1;28:4;12:14;8:25;5:40;2:2;;;58:1;55;48:12;2:2;16053:193:0;;;;;;101:9:-1;95:2;81:12;77:21;67:8;63:36;60:51;39:11;25:12;22:29;11:108;8:2;;;132:1;129;122:12;8:2;16053:193:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;30:3:-1;22:6;14;1:33;99:1;81:16;;74:27;;;;-1:-1;16053:193:0;;-1:-1:-1;;16053:193:0;;;-1:-1:-1;16053:193:0;;-1:-1:-1;;16053:193:0:i;4728:147::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;;;;;;4728:147:0;;;;;;;;;;:::i;15131:109::-;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;15131:109:0;-1:-1:-1;;;;;15131:109:0;;:::i;2766:135::-;-1:-1:-1;;;;;;2860:33:0;;2836:4;2860:33;;;;;;;;;;;;;2766:135;;;;:::o;11888:85::-;11960:5;11953:12;;;;;;;;-1:-1:-1;;11953:12:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11927:13;;11953:12;;11960:5;;11953:12;;11960:5;11953:12;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;11888:85;;:::o;4341:154::-;4400:7;4428:16;4436:7;4428;:16::i;:::-;4420:25;;;;;;-1:-1:-1;4463:24:0;;;;:15;:24;;;;;;-1:-1:-1;;;;;4463:24:0;;4341:154::o;4034:299::-;4098:13;4114:16;4122:7;4114;:16::i;:::-;4098:32;;4155:5;-1:-1:-1;;;;;4149:11:0;:2;-1:-1:-1;;;;;4149:11:0;;;4141:20;;;;;;4180:10;-1:-1:-1;;;;;4180:19:0;;;;:58;;;4203:35;4220:5;4227:10;4203:16;:35::i;:::-;4172:67;;;;;;4252:24;;;;:15;:24;;;;;;:29;;-1:-1:-1;;;;;;4252:29:0;-1:-1:-1;;;;;4252:29:0;;;;;;;;;4297:28;;4252:24;;4297:28;;;;;;;4034:299;;;:::o;9034:96::-;9105:10;:17;9034:96;:::o;4883:182::-;4974:39;4993:10;5005:7;4974:18;:39::i;:::-;4966:48;;;;;;5025:32;5039:4;5045:2;5049:7;5025:13;:32::i;:::-;4883:182;;;:::o;8841:185::-;8921:7;8957:16;8967:5;8957:9;:16::i;:::-;8949:5;:24;8941:33;;;;;;-1:-1:-1;;;;;8992:19:0;;;;;;:12;:19;;;;;:26;;9012:5;;8992:26;;;;;;;;;;;;;;8985:33;;8841:185;;;;:::o;14275:135::-;14345:4;13574:20;13583:10;13574:8;:20::i;:::-;13566:29;;;;;;14362:18;14368:2;14372:7;14362:5;:18::i;:::-;-1:-1:-1;14398:4:0;14275:135;;;;:::o;5073:134::-;5160:39;5177:4;5183:2;5187:7;5160:39;;;;;;;;;;;;:16;:39::i;9138:151::-;9196:7;9232:13;:11;:13::i;:::-;9224:5;:21;9216:30;;;;;;9264:10;9275:5;9264:17;;;;;;;;;;;;;;;;9257:24;;9138:151;;;:::o;3845:181::-;3900:7;3936:20;;;:11;:20;;;;;;-1:-1:-1;;;;;3936:20:0;3975:19;3967:28;;;;;;4013:5;3845:181;-1:-1:-1;;3845:181:0:o;15843:202::-;15927:6;15922:116;15943:8;:15;15939:1;:19;15922:116;;;15980:46;15997:10;16009:3;16014:8;16023:1;16014:11;;;;;;;;;;;;;;15980:16;:46::i;:::-;15960:3;;15922:116;;3684:153;3739:7;-1:-1:-1;;;;;3767:19:0;;3759:28;;;;;;-1:-1:-1;;;;;;3805:24:0;;;;;:17;:24;;;;;;;3684:153::o;14983:140::-;14845:9;:7;:9::i;:::-;14837:18;;;;;;15066:6;;15045:40;;15082:1;;-1:-1:-1;;;;;15066:6:0;;15045:40;;15082:1;;15045:40;15096:6;:19;;-1:-1:-1;;;;;;15096:19:0;;;14983:140::o;14718:79::-;14783:6;;-1:-1:-1;;;;;14783:6:0;14718:79;:::o;14883:92::-;14961:6;;-1:-1:-1;;;;;14961:6:0;14947:10;:20;;14883:92::o;11981:89::-;12055:7;12048:14;;;;;;;;-1:-1:-1;;12048:14:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;12022:13;;12048:14;;12055:7;;12048:14;;12055:7;12048:14;;;;;;;;;;;;;;;;;;;;;;;;13740:92;13574:20;13583:10;13574:8;:20::i;:::-;13566:29;;;;;;13805:19;13816:7;13805:10;:19::i;:::-;13740:92;:::o;13840:77::-;13884:25;13898:10;13884:13;:25::i;:::-;13840:77::o;4503:217::-;-1:-1:-1;;;;;4583:16:0;;4589:10;4583:16;;4575:25;;;;;;4630:10;4611:30;;;;:18;:30;;;;;;;;-1:-1:-1;;;;;4611:34:0;;;;;;;;;;;;:45;;-1:-1:-1;;4611:45:0;;;;;;;;;;4672:40;;;;;;;4611:34;;4630:10;4672:40;;;;;;;;;;;4503:217;;:::o;15717:118::-;15784:43;15801:10;15813:3;15818:8;15784:16;:43::i;:::-;15717:118;;:::o;13623:109::-;13679:4;13703:21;:8;13716:7;13703:21;:12;:21;:::i;5215:214::-;5322:31;5335:4;5341:2;5345:7;5322:12;:31::i;:::-;5372:48;5395:4;5401:2;5405:7;5414:5;5372:22;:48::i;:::-;5364:57;;;;;;5215:214;;;;:::o;12078:259::-;12136:13;12170:16;12178:7;12170;:16::i;:::-;12162:25;;;;;;12198:21;12240:64;;;;;;;;;;;;;;;;;;12286:17;12295:7;12286:8;:17::i;:::-;12240:9;:64::i;:::-;12230:74;12078:259;-1:-1:-1;;;12078:259:0:o;16053:193::-;13574:20;13583:10;13574:8;:20::i;:::-;13566:29;;;;;;16149:6;16144:95;16165:3;:10;16161:1;:14;16144:95;;;16197:30;16203:3;16207:1;16203:6;;;;;;;;;;;;;;16211:15;16224:1;16211:8;:12;;:15;;;;:::i;:::-;16197:5;:30::i;:::-;16177:3;;16144:95;;4728:147;-1:-1:-1;;;;;4832:25:0;;;4808:4;4832:25;;;:18;:25;;;;;;;;:35;;;;;;;;;;;;;;;4728:147::o;15131:109::-;14845:9;:7;:9::i;:::-;14837:18;;;;;;15204:28;15223:8;15204:18;:28::i;5437:155::-;5494:4;5527:20;;;:11;:20;;;;;;-1:-1:-1;;;;;5527:20:0;5565:19;;;5437:155::o;5600:249::-;5685:4;5702:13;5718:16;5726:7;5718;:16::i;:::-;5702:32;;5764:5;-1:-1:-1;;;;;5753:16:0;:7;-1:-1:-1;;;;;5753:16:0;;:51;;;;5797:7;-1:-1:-1;;;;;5773:31:0;:20;5785:7;5773:11;:20::i;:::-;-1:-1:-1;;;;;5773:31:0;;5753:51;:87;;;;5808:32;5825:5;5832:7;5808:16;:32::i;:::-;5745:96;5600:249;-1:-1:-1;;;;5600:249:0:o;9297:241::-;9383:38;9403:4;9409:2;9413:7;9383:19;:38::i;:::-;9432:47;9465:4;9471:7;9432:32;:47::i;:::-;9490:40;9518:2;9522:7;9490:27;:40::i;9546:198::-;9610:24;9622:2;9626:7;9610:11;:24::i;:::-;9645:40;9673:2;9677:7;9645:27;:40::i;:::-;9696;9728:7;9696:31;:40::i;13925:122::-;13982:21;:8;13995:7;13982:21;:12;:21;:::i;:::-;14019:20;;-1:-1:-1;;;;;14019:20:0;;;;;;;;13925:122;:::o;14055:130::-;14115:24;:8;14131:7;14115:24;:15;:24;:::i;:::-;14155:22;;-1:-1:-1;;;;;14155:22:0;;;;;;;;14055:130;:::o;13060:165::-;13132:4;-1:-1:-1;;;;;13157:21:0;;13149:30;;;;;;-1:-1:-1;;;;;;13197:20:0;:11;:20;;;;;;;;;;;;;;;13060:165::o;6571:356::-;6693:4;6720:15;:2;-1:-1:-1;;;;;6720:13:0;;:15::i;:::-;6715:60;;-1:-1:-1;6759:4:0;6752:11;;6715:60;6803:70;;-1:-1:-1;;;6803:70:0;;6840:10;6803:70;;;;;;-1:-1:-1;;;;;6803:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;6787:13;;6803:36;;;;;;6840:10;;6852:4;;6858:7;;6867:5;;6803:70;;;;;;;;;;;6787:13;8:100:-1;33:3;30:1;27:10;8:100;;;90:11;;;84:18;71:11;;;64:39;52:2;45:10;8:100;;;12:14;6803:70:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8:9:-1;5:2;;;30:1;27;20:12;5:2;6803:70:0;;;;8:9:-1;5:2;;;45:16;42:1;39;24:38;77:16;74:1;67:27;5:2;6803:70:0;;;;;;;13:2:-1;8:3;5:11;2:2;;;29:1;26;19:12;2:2;-1:-1;6803:70:0;-1:-1:-1;;;;;;6892:26:0;-1:-1:-1;;;6892:26:0;;-1:-1:-1;;6571:356:0;;;;;;:::o;7118:445::-;7167:13;7196:6;7192:22;;-1:-1:-1;7204:10:0;;;;;;;;;;;;-1:-1:-1;;;7204:10:0;;;;;;7192:22;7234:1;7225:6;7268:71;7275:6;;7268:71;;7297:8;;7325:2;7320:7;;;;7268:71;;;7349:17;7379:6;7369:17;;;;;;;;;;;;;;;;;;;;;;;;;21:6:-1;;104:10;7369:17:0;87:34:-1;135:17;;-1:-1;7369:17:0;-1:-1:-1;7349:37:0;-1:-1:-1;;;7406:10:0;;7427:99;7434:6;;7427:99;;7488:2;7484:1;:6;7479:2;:11;7468:24;;7456:4;7461:3;;;;;;;7456:9;;;;;;;;;;;:36;-1:-1:-1;;;;;7456:36:0;;;;;;;;-1:-1:-1;7512:2:0;7507:7;;;;7427:99;;;-1:-1:-1;7550:4:0;7118:445;-1:-1:-1;;;;7118:445:0:o;7571:465::-;7649:13;7675:16;7700:2;7675:28;;7714:16;7739:2;7714:28;;7753:16;7796:3;:10;7783:3;:10;:23;7772:35;;;;;;;;;;;;;;;;;;;;;;;;;21:6:-1;;104:10;7772:35:0;87:34:-1;135:17;;-1:-1;7772:35:0;-1:-1:-1;7753:54:0;-1:-1:-1;7753:54:0;7857:6;;7878:55;7899:3;:10;7895:1;:14;7878:55;;;7927:3;7931:1;7927:6;;;;;;;;;;;;;;;;7916:3;7920;;;;;;7916:8;;;;;;;;;;;:17;-1:-1:-1;;;;;7916:17:0;;;;;;;;-1:-1:-1;7911:3:0;;7878:55;;;-1:-1:-1;7949:6:0;7944:55;7965:3;:10;7961:1;:14;7944:55;;;7993:3;7997:1;7993:6;;;;;;;;;;;;;;;;7982:3;7986;;;;;;7982:8;;;;;;;;;;;:17;-1:-1:-1;;;;;7982:17:0;;;;;;;;-1:-1:-1;7977:3:0;;7944:55;;;-1:-1:-1;8024:3:0;;7571:465;-1:-1:-1;;;;;;;7571:465:0:o;1969:148::-;2027:7;2059:5;;;2083:6;;;;2075:15;;;;;15248:187;-1:-1:-1;;;;;15322:22:0;;15314:31;;;;;;15382:6;;15361:38;;-1:-1:-1;;;;;15361:38:0;;;;15382:6;;15361:38;;15382:6;;15361:38;15410:6;:17;;-1:-1:-1;;;;;;15410:17:0;-1:-1:-1;;;;;15410:17:0;;;;;;;;;;15248:187::o;6151:412::-;6265:4;-1:-1:-1;;;;;6245:24:0;:16;6253:7;6245;:16::i;:::-;-1:-1:-1;;;;;6245:24:0;;6237:33;;;;;;-1:-1:-1;;;;;6289:16:0;;6281:25;;;;;;6319:23;6334:7;6319:14;:23::i;:::-;-1:-1:-1;;;;;6381:23:0;;;;;;:17;:23;;;;;;:30;;6409:1;6381:30;:27;:30;:::i;:::-;-1:-1:-1;;;;;6355:23:0;;;;;;;:17;:23;;;;;;:56;;;;6446:21;;;;;;;:28;;6472:1;6446:28;:25;:28;:::i;:::-;-1:-1:-1;;;;;6422:21:0;;;;;;;:17;:21;;;;;;;;:52;;;;6485:20;;;:11;:20;;;;;:25;;-1:-1:-1;;;;;;6485:25:0;;;;;6528:27;;6497:7;;6422:21;;6528:27;;;;;;6151:412;;;:::o;10252:501::-;-1:-1:-1;;;;;10369:18:0;;10344:22;10369:18;;;:12;:18;;;;;:25;:32;;10399:1;10369:32;:29;:32;:::i;:::-;10412:18;10433:26;;;:17;:26;;;;;;10344:57;;-1:-1:-1;10476:28:0;;;10472:234;;-1:-1:-1;;;;;10543:18:0;;10521:19;10543:18;;;:12;:18;;;;;:34;;10562:14;;10543:34;;;;;;;;;;;;;;10521:56;;10625:11;10592:12;:18;10605:4;-1:-1:-1;;;;;10592:18:0;-1:-1:-1;;;;;10592:18:0;;;;;;;;;;;;10611:10;10592:30;;;;;;;;;;;;;;;;;;;:44;;;;10651:30;;;:17;:30;;;;;:43;;;10472:234;-1:-1:-1;;;;;10718:18:0;;;;;;:12;:18;;;;;:27;;;;;-1:-1:-1;;10718:27:0;;;:::i;:::-;;10252:501;;;;:::o;9886:186::-;-1:-1:-1;;;;;10000:16:0;;;;;;;:12;:16;;;;;;;;:23;;9971:26;;;:17;:26;;;;;:52;;;10034:16;;;39:1:-1;23:18;;45:23;;10034:30:0;;;;;;;;9886:186::o;5857:286::-;-1:-1:-1;;;;;5929:16:0;;5921:25;;;;;;5966:16;5974:7;5966;:16::i;:::-;5965:17;5957:26;;;;;;5996:20;;;;:11;:20;;;;;;;;:25;;-1:-1:-1;;;;;;5996:25:0;-1:-1:-1;;;;;5996:25:0;;;;;;;;6056:21;;:17;:21;;;;;;;:28;;:25;:28::i;:::-;-1:-1:-1;;;;;6032:21:0;;;;;;:17;:21;;;;;;:52;;;;6102:33;;6127:7;;6032:21;6102:33;;6032:21;;6102:33;5857:286;;:::o;10080:164::-;10184:10;:17;;10157:24;;;;:15;:24;;;;;:44;;;39:1:-1;23:18;;45:23;;10212:24:0;;;;;;;10080:164::o;12669:186::-;-1:-1:-1;;;;;12746:21:0;;12738:30;;;;;;12788:18;12792:4;12798:7;12788:3;:18::i;:::-;12787:19;12779:28;;;;;;-1:-1:-1;;;;;12820:20:0;:11;:20;;;;;;;;;;;:27;;-1:-1:-1;;12820:27:0;12843:4;12820:27;;;12669:186::o;12863:189::-;-1:-1:-1;;;;;12943:21:0;;12935:30;;;;;;12984:18;12988:4;12994:7;12984:3;:18::i;:::-;12976:27;;;;;;-1:-1:-1;;;;;13016:20:0;13039:5;13016:20;;;;;;;;;;;:28;;-1:-1:-1;;13016:28:0;;;12863:189::o;2307:174::-;2426:20;2465:8;;;2307:174::o;6935:175::-;7035:1;6999:24;;;:15;:24;;;;;;-1:-1:-1;;;;;6999:24:0;:38;6995:108;;7089:1;7054:24;;;:15;:24;;;;;:37;;-1:-1:-1;;;;;;7054:37:0;;;6935:175::o;1813:148::-;1871:7;1904:1;1899;:6;;1891:15;;;;;;-1:-1:-1;1929:5:0;;;1813:148::o;15472:779::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

Swarm Source

bzzr://4e0a7033ca6707b3f8f105ebd78f2dac72843461cd3ec8c31914904a6ca57b2c
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.