ETH Price: $3,489.13 (+2.18%)

Token

SpatialComputing (CMPT)
 

Overview

Max Total Supply

1,000,000 CMPT

Holders

823 ( -0.121%)

Market

Price

$1.21 @ 0.000347 ETH (+2.02%)

Onchain Market Cap

$1,210,000.00

Circulating Supply Market Cap

$0.00

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
eugeneoconnor.eth
Balance
0 CMPT

Value
$0.00
0x3a35243df1ae010bb72b88be1b592aeb6ad8f1a5
Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

Spatial Computing is a smart blockchain technology that forces the coin to automatically go up. This is achieved via a 1% UniswapV3 pool and a contract that automatically routes these fees to a buyback and burn.

Market

Volume (24H):$353.82
Market Capitalization:$0.00
Circulating Supply:0.00 CMPT
Market Data Source: Coinmarketcap

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
SpatialComputing

Compiler Version
v0.8.24+commit.e11b9ed9

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 3 : SpatialComputing.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.13;

import {ERC20} from "./ERC20.sol";
import {Owned} from "./Owned.sol";

contract SpatialComputing is ERC20, Owned {
    mapping(address => bool) public blacklists;
    bool public canBlacklist = true;

    constructor(
        address deployer,
        uint256 supply
    ) ERC20("SpatialComputing", "CMPT", 18) Owned(deployer) {
        _mint(deployer, supply);
    }

    function renounceOwnership() external onlyOwner {
        transferOwnership(address(0));
    }

    function renounceBlacklistAbility() external onlyOwner {
        canBlacklist = false;
    }

    function blacklist(
        address _address,
        bool _isBlacklisting
    ) external onlyOwner {
        require(canBlacklist, "blacklisting renounced already");
        blacklists[_address] = _isBlacklisting;
    }

    function transfer(
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        require(!blacklists[to] && !blacklists[msg.sender], "Blacklisted");
        balanceOf[msg.sender] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(msg.sender, to, amount);

        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual override returns (bool) {
        require(!blacklists[to] && !blacklists[from], "Blacklisted");
        uint256 allowed = allowance[from][msg.sender]; // Saves gas for limited approvals.

        if (allowed != type(uint256).max)
            allowance[from][msg.sender] = allowed - amount;

        balanceOf[from] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(from, to, amount);

        return true;
    }
}

File 2 of 3 : Owned.sol
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Simple single owner authorization mixin.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/auth/Owned.sol)
abstract contract Owned {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

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

    /*//////////////////////////////////////////////////////////////
                            OWNERSHIP STORAGE
    //////////////////////////////////////////////////////////////*/

    address public owner;

    modifier onlyOwner() virtual {
        require(msg.sender == owner, "UNAUTHORIZED");

        _;
    }

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(address _owner) {
        owner = _owner;

        emit OwnershipTransferred(address(0), _owner);
    }

    /*//////////////////////////////////////////////////////////////
                             OWNERSHIP LOGIC
    //////////////////////////////////////////////////////////////*/

    function transferOwnership(address newOwner) public virtual onlyOwner {
        owner = newOwner;

        emit OwnershipTransferred(msg.sender, newOwner);
    }
}

File 3 of 3 : ERC20.sol
// SPDX-License-Identifier: AGPL-3.0-only
pragma solidity >=0.8.0;

/// @notice Modern and gas efficient ERC20 + EIP-2612 implementation.
/// @author Solmate (https://github.com/transmissions11/solmate/blob/main/src/tokens/ERC20.sol)
/// @author Modified from Uniswap (https://github.com/Uniswap/uniswap-v2-core/blob/master/contracts/UniswapV2ERC20.sol)
/// @dev Do not manually set balances without updating totalSupply, as the sum of all user balances must not exceed it.
abstract contract ERC20 {
    /*//////////////////////////////////////////////////////////////
                                 EVENTS
    //////////////////////////////////////////////////////////////*/

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

    event Approval(
        address indexed owner,
        address indexed spender,
        uint256 amount
    );

    /*//////////////////////////////////////////////////////////////
                            METADATA STORAGE
    //////////////////////////////////////////////////////////////*/

    string public name;

    string public symbol;

    uint8 public immutable decimals;

    /*//////////////////////////////////////////////////////////////
                              ERC20 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 public totalSupply;

    mapping(address => uint256) public balanceOf;

    mapping(address => mapping(address => uint256)) public allowance;

    /*//////////////////////////////////////////////////////////////
                            EIP-2612 STORAGE
    //////////////////////////////////////////////////////////////*/

    uint256 internal immutable INITIAL_CHAIN_ID;

    bytes32 internal immutable INITIAL_DOMAIN_SEPARATOR;

    mapping(address => uint256) public nonces;

    /*//////////////////////////////////////////////////////////////
                               CONSTRUCTOR
    //////////////////////////////////////////////////////////////*/

    constructor(string memory _name, string memory _symbol, uint8 _decimals) {
        name = _name;
        symbol = _symbol;
        decimals = _decimals;

        INITIAL_CHAIN_ID = block.chainid;
        INITIAL_DOMAIN_SEPARATOR = computeDomainSeparator();
    }

    /*//////////////////////////////////////////////////////////////
                               ERC20 LOGIC
    //////////////////////////////////////////////////////////////*/

    function approve(
        address spender,
        uint256 amount
    ) public virtual returns (bool) {
        allowance[msg.sender][spender] = amount;

        emit Approval(msg.sender, spender, amount);

        return true;
    }

    function transfer(
        address to,
        uint256 amount
    ) public virtual returns (bool) {
        balanceOf[msg.sender] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(msg.sender, to, amount);

        return true;
    }

    function transferFrom(
        address from,
        address to,
        uint256 amount
    ) public virtual returns (bool) {
        uint256 allowed = allowance[from][msg.sender]; // Saves gas for limited approvals.

        if (allowed != type(uint256).max)
            allowance[from][msg.sender] = allowed - amount;

        balanceOf[from] -= amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

        emit Transfer(from, to, amount);

        return true;
    }

    /*//////////////////////////////////////////////////////////////
                             EIP-2612 LOGIC
    //////////////////////////////////////////////////////////////*/

    function permit(
        address owner,
        address spender,
        uint256 value,
        uint256 deadline,
        uint8 v,
        bytes32 r,
        bytes32 s
    ) public virtual {
        require(deadline >= block.timestamp, "PERMIT_DEADLINE_EXPIRED");

        // Unchecked because the only math done is incrementing
        // the owner's nonce which cannot realistically overflow.
        unchecked {
            address recoveredAddress = ecrecover(
                keccak256(
                    abi.encodePacked(
                        "\x19\x01",
                        DOMAIN_SEPARATOR(),
                        keccak256(
                            abi.encode(
                                keccak256(
                                    "Permit(address owner,address spender,uint256 value,uint256 nonce,uint256 deadline)"
                                ),
                                owner,
                                spender,
                                value,
                                nonces[owner]++,
                                deadline
                            )
                        )
                    )
                ),
                v,
                r,
                s
            );

            require(
                recoveredAddress != address(0) && recoveredAddress == owner,
                "INVALID_SIGNER"
            );

            allowance[recoveredAddress][spender] = value;
        }

        emit Approval(owner, spender, value);
    }

    function DOMAIN_SEPARATOR() public view virtual returns (bytes32) {
        return
            block.chainid == INITIAL_CHAIN_ID
                ? INITIAL_DOMAIN_SEPARATOR
                : computeDomainSeparator();
    }

    function computeDomainSeparator() internal view virtual returns (bytes32) {
        return
            keccak256(
                abi.encode(
                    keccak256(
                        "EIP712Domain(string name,string version,uint256 chainId,address verifyingContract)"
                    ),
                    keccak256(bytes(name)),
                    keccak256("1"),
                    block.chainid,
                    address(this)
                )
            );
    }

    /*//////////////////////////////////////////////////////////////
                        INTERNAL MINT/BURN LOGIC
    //////////////////////////////////////////////////////////////*/

    function _mint(address to, uint256 amount) internal virtual {
        totalSupply += amount;

        // Cannot overflow because the sum of all user
        // balances can't exceed the max uint256 value.
        unchecked {
            balanceOf[to] += amount;
        }

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

    function _burn(address from, uint256 amount) internal virtual {
        balanceOf[from] -= amount;

        // Cannot underflow because a user's balance
        // will never be larger than the total supply.
        unchecked {
            totalSupply -= amount;
        }

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

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

Contract Security Audit

Contract ABI

[{"inputs":[{"internalType":"address","name":"deployer","type":"address"},{"internalType":"uint256","name":"supply","type":"uint256"}],"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":"amount","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransferred","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount","type":"uint256"}],"name":"Transfer","type":"event"},{"inputs":[],"name":"DOMAIN_SEPARATOR","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"},{"internalType":"address","name":"","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":"","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"_address","type":"address"},{"internalType":"bool","name":"_isBlacklisting","type":"bool"}],"name":"blacklist","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"blacklists","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"canBlacklist","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"","type":"address"}],"name":"nonces","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"owner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"owner","type":"address"},{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"value","type":"uint256"},{"internalType":"uint256","name":"deadline","type":"uint256"},{"internalType":"uint8","name":"v","type":"uint8"},{"internalType":"bytes32","name":"r","type":"bytes32"},{"internalType":"bytes32","name":"s","type":"bytes32"}],"name":"permit","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceBlacklistAbility","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"symbol","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"totalSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"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":"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"}]

60e0604052600160085f6101000a81548160ff0219169083151502179055503480156200002a575f80fd5b50604051620025f9380380620025f98339818101604052810190620000509190620003c1565b816040518060400160405280601081526020017f5370617469616c436f6d707574696e67000000000000000000000000000000008152506040518060400160405280600481526020017f434d5054000000000000000000000000000000000000000000000000000000008152506012825f9081620000cf919062000661565b508160019081620000e1919062000661565b508060ff1660808160ff16815250504660a0818152505062000108620001c760201b60201c565b60c081815250505050508060065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350620001bf82826200025560201b60201c565b50506200091e565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f604051620001f99190620007ed565b60405180910390207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc646306040516020016200023a95949392919062000841565b60405160208183030381529060405280519060200120905090565b8060025f828254620002689190620008c9565b925050819055508060035f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508173ffffffffffffffffffffffffffffffffffffffff165f73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405162000318919062000903565b60405180910390a35050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f620003538262000328565b9050919050565b620003658162000347565b811462000370575f80fd5b50565b5f8151905062000383816200035a565b92915050565b5f819050919050565b6200039d8162000389565b8114620003a8575f80fd5b50565b5f81519050620003bb8162000392565b92915050565b5f8060408385031215620003da57620003d962000324565b5b5f620003e98582860162000373565b9250506020620003fc85828601620003ab565b9150509250929050565b5f81519050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52604160045260245ffd5b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806200048257607f821691505b6020821081036200049857620004976200043d565b5b50919050565b5f819050815f5260205f209050919050565b5f6020601f8301049050919050565b5f82821b905092915050565b5f60088302620004fc7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff82620004bf565b620005088683620004bf565b95508019841693508086168417925050509392505050565b5f819050919050565b5f62000549620005436200053d8462000389565b62000520565b62000389565b9050919050565b5f819050919050565b620005648362000529565b6200057c620005738262000550565b848454620004cb565b825550505050565b5f90565b6200059262000584565b6200059f81848462000559565b505050565b5b81811015620005c657620005ba5f8262000588565b600181019050620005a5565b5050565b601f8211156200061557620005df816200049e565b620005ea84620004b0565b81016020851015620005fa578190505b620006126200060985620004b0565b830182620005a4565b50505b505050565b5f82821c905092915050565b5f620006375f19846008026200061a565b1980831691505092915050565b5f62000651838362000626565b9150826002028217905092915050565b6200066c8262000406565b67ffffffffffffffff81111562000688576200068762000410565b5b6200069482546200046a565b620006a1828285620005ca565b5f60209050601f831160018114620006d7575f8415620006c2578287015190505b620006ce858262000644565b8655506200073d565b601f198416620006e7866200049e565b5f5b828110156200071057848901518255600182019150602085019450602081019050620006e9565b868310156200073057848901516200072c601f89168262000626565b8355505b6001600288020188555050505b505050505050565b5f81905092915050565b5f819050815f5260205f209050919050565b5f81546200076f816200046a565b6200077b818662000745565b9450600182165f8114620007985760018114620007ae57620007e4565b60ff1983168652811515820286019350620007e4565b620007b9856200074f565b5f5b83811015620007dc57815481890152600182019150602081019050620007bb565b838801955050505b50505092915050565b5f620007fa828462000761565b915081905092915050565b5f819050919050565b620008198162000805565b82525050565b6200082a8162000389565b82525050565b6200083b8162000347565b82525050565b5f60a082019050620008565f8301886200080e565b6200086560208301876200080e565b6200087460408301866200080e565b6200088360608301856200081f565b62000892608083018462000830565b9695505050505050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f620008d58262000389565b9150620008e28362000389565b9250828201905080821115620008fd57620008fc6200089c565b5b92915050565b5f602082019050620009185f8301846200081f565b92915050565b60805160a05160c051611cb0620009495f395f6108bb01525f61088701525f6108620152611cb05ff3fe608060405234801561000f575f80fd5b506004361061011f575f3560e01c8063715018a6116100ab578063c4530d721161006f578063c4530d721461031d578063c99bd34b14610327578063d505accf14610345578063dd62ed3e14610361578063f2fde38b146103915761011f565b8063715018a6146102775780637ecebe00146102815780638da5cb5b146102b157806395d89b41146102cf578063a9059cbb146102ed5761011f565b806323b872dd116100f257806323b872dd146101bf578063313ce567146101ef5780633644e5151461020d578063404e51291461022b57806370a08231146102475761011f565b806306fdde0314610123578063095ea7b31461014157806316c021291461017157806318160ddd146101a1575b5f80fd5b61012b6103ad565b604051610138919061137d565b60405180910390f35b61015b6004803603810190610156919061142e565b610438565b6040516101689190611486565b60405180910390f35b61018b6004803603810190610186919061149f565b610525565b6040516101989190611486565b60405180910390f35b6101a9610542565b6040516101b691906114d9565b60405180910390f35b6101d960048036038101906101d491906114f2565b610548565b6040516101e69190611486565b60405180910390f35b6101f7610860565b604051610204919061155d565b60405180910390f35b610215610884565b604051610222919061158e565b60405180910390f35b610245600480360381019061024091906115d1565b6108e0565b005b610261600480360381019061025c919061149f565b610a15565b60405161026e91906114d9565b60405180910390f35b61027f610a2a565b005b61029b6004803603810190610296919061149f565b610ac4565b6040516102a891906114d9565b60405180910390f35b6102b9610ad9565b6040516102c6919061161e565b60405180910390f35b6102d7610afe565b6040516102e4919061137d565b60405180910390f35b6103076004803603810190610302919061142e565b610b8a565b6040516103149190611486565b60405180910390f35b610325610d74565b005b61032f610e1e565b60405161033c9190611486565b60405180910390f35b61035f600480360381019061035a919061168b565b610e30565b005b61037b60048036038101906103769190611728565b61111d565b60405161038891906114d9565b60405180910390f35b6103ab60048036038101906103a6919061149f565b61113d565b005b5f80546103b990611793565b80601f01602080910402602001604051908101604052809291908181526020018280546103e590611793565b80156104305780601f1061040757610100808354040283529160200191610430565b820191905f5260205f20905b81548152906001019060200180831161041357829003601f168201915b505050505081565b5f8160045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161051391906114d9565b60405180910390a36001905092915050565b6007602052805f5260405f205f915054906101000a900460ff1681565b60025481565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156105e7575060075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b610626576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061d9061180d565b60405180910390fd5b5f60045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107525782816106d59190611858565b60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8260035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461079e9190611858565b925050819055508260035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161084c91906114d9565b60405180910390a360019150509392505050565b7f000000000000000000000000000000000000000000000000000000000000000081565b5f7f000000000000000000000000000000000000000000000000000000000000000046146108b9576108b4611269565b6108db565b7f00000000000000000000000000000000000000000000000000000000000000005b905090565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461096f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610966906118d5565b60405180910390fd5b60085f9054906101000a900460ff166109bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b49061193d565b60405180910390fd5b8060075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b6003602052805f5260405f205f915090505481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ab9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab0906118d5565b60405180910390fd5b610ac25f61113d565b565b6005602052805f5260405f205f915090505481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60018054610b0b90611793565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3790611793565b8015610b825780601f10610b5957610100808354040283529160200191610b82565b820191905f5260205f20905b815481529060010190602001808311610b6557829003601f168201915b505050505081565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610c29575060075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b610c68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5f9061180d565b60405180910390fd5b8160035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610cb49190611858565b925050819055508160035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d6291906114d9565b60405180910390a36001905092915050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfa906118d5565b60405180910390fd5b5f60085f6101000a81548160ff021916908315150217905550565b60085f9054906101000a900460ff1681565b42841015610e73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6a906119a5565b60405180910390fd5b5f6001610e7e610884565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98a8a8a60055f8f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190600101919050558b604051602001610f03969594939291906119c3565b60405160208183030381529060405280519060200120604051602001610f2a929190611a96565b604051602081830303815290604052805190602001208585856040515f8152602001604052604051610f5f9493929190611acc565b6020604051602081039080840390855afa158015610f7f573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015610ff257508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b611031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102890611b59565b60405180910390fd5b8560045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258760405161110c91906114d9565b60405180910390a350505050505050565b6004602052815f5260405f20602052805f5260405f205f91509150505481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146111cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c3906118d5565b60405180910390fd5b8060065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f6040516112999190611c13565b60405180910390207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc646306040516020016112d8959493929190611c29565b60405160208183030381529060405280519060200120905090565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561132a57808201518184015260208101905061130f565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61134f826112f3565b61135981856112fd565b935061136981856020860161130d565b61137281611335565b840191505092915050565b5f6020820190508181035f8301526113958184611345565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6113ca826113a1565b9050919050565b6113da816113c0565b81146113e4575f80fd5b50565b5f813590506113f5816113d1565b92915050565b5f819050919050565b61140d816113fb565b8114611417575f80fd5b50565b5f8135905061142881611404565b92915050565b5f80604083850312156114445761144361139d565b5b5f611451858286016113e7565b92505060206114628582860161141a565b9150509250929050565b5f8115159050919050565b6114808161146c565b82525050565b5f6020820190506114995f830184611477565b92915050565b5f602082840312156114b4576114b361139d565b5b5f6114c1848285016113e7565b91505092915050565b6114d3816113fb565b82525050565b5f6020820190506114ec5f8301846114ca565b92915050565b5f805f606084860312156115095761150861139d565b5b5f611516868287016113e7565b9350506020611527868287016113e7565b92505060406115388682870161141a565b9150509250925092565b5f60ff82169050919050565b61155781611542565b82525050565b5f6020820190506115705f83018461154e565b92915050565b5f819050919050565b61158881611576565b82525050565b5f6020820190506115a15f83018461157f565b92915050565b6115b08161146c565b81146115ba575f80fd5b50565b5f813590506115cb816115a7565b92915050565b5f80604083850312156115e7576115e661139d565b5b5f6115f4858286016113e7565b9250506020611605858286016115bd565b9150509250929050565b611618816113c0565b82525050565b5f6020820190506116315f83018461160f565b92915050565b61164081611542565b811461164a575f80fd5b50565b5f8135905061165b81611637565b92915050565b61166a81611576565b8114611674575f80fd5b50565b5f8135905061168581611661565b92915050565b5f805f805f805f60e0888a0312156116a6576116a561139d565b5b5f6116b38a828b016113e7565b97505060206116c48a828b016113e7565b96505060406116d58a828b0161141a565b95505060606116e68a828b0161141a565b94505060806116f78a828b0161164d565b93505060a06117088a828b01611677565b92505060c06117198a828b01611677565b91505092959891949750929550565b5f806040838503121561173e5761173d61139d565b5b5f61174b858286016113e7565b925050602061175c858286016113e7565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806117aa57607f821691505b6020821081036117bd576117bc611766565b5b50919050565b7f426c61636b6c69737465640000000000000000000000000000000000000000005f82015250565b5f6117f7600b836112fd565b9150611802826117c3565b602082019050919050565b5f6020820190508181035f830152611824816117eb565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611862826113fb565b915061186d836113fb565b92508282039050818111156118855761188461182b565b5b92915050565b7f554e415554484f52495a454400000000000000000000000000000000000000005f82015250565b5f6118bf600c836112fd565b91506118ca8261188b565b602082019050919050565b5f6020820190508181035f8301526118ec816118b3565b9050919050565b7f626c61636b6c697374696e672072656e6f756e63656420616c726561647900005f82015250565b5f611927601e836112fd565b9150611932826118f3565b602082019050919050565b5f6020820190508181035f8301526119548161191b565b9050919050565b7f5045524d49545f444541444c494e455f455850495245440000000000000000005f82015250565b5f61198f6017836112fd565b915061199a8261195b565b602082019050919050565b5f6020820190508181035f8301526119bc81611983565b9050919050565b5f60c0820190506119d65f83018961157f565b6119e3602083018861160f565b6119f0604083018761160f565b6119fd60608301866114ca565b611a0a60808301856114ca565b611a1760a08301846114ca565b979650505050505050565b5f81905092915050565b7f19010000000000000000000000000000000000000000000000000000000000005f82015250565b5f611a60600283611a22565b9150611a6b82611a2c565b600282019050919050565b5f819050919050565b611a90611a8b82611576565b611a76565b82525050565b5f611aa082611a54565b9150611aac8285611a7f565b602082019150611abc8284611a7f565b6020820191508190509392505050565b5f608082019050611adf5f83018761157f565b611aec602083018661154e565b611af9604083018561157f565b611b06606083018461157f565b95945050505050565b7f494e56414c49445f5349474e45520000000000000000000000000000000000005f82015250565b5f611b43600e836112fd565b9150611b4e82611b0f565b602082019050919050565b5f6020820190508181035f830152611b7081611b37565b9050919050565b5f81905092915050565b5f819050815f5260205f209050919050565b5f8154611b9f81611793565b611ba98186611b77565b9450600182165f8114611bc35760018114611bd857611c0a565b60ff1983168652811515820286019350611c0a565b611be185611b81565b5f5b83811015611c0257815481890152600182019150602081019050611be3565b838801955050505b50505092915050565b5f611c1e8284611b93565b915081905092915050565b5f60a082019050611c3c5f83018861157f565b611c49602083018761157f565b611c56604083018661157f565b611c6360608301856114ca565b611c70608083018461160f565b969550505050505056fea2646970667358221220e986a050c4028cd77be4544851f70654145a579e670490e5aa8de9eefc10d9ac64736f6c63430008180033000000000000000000000000fa333ab0cea771e2451807395ef56d54e443ce7e00000000000000000000000000000000000000000000d3c21bcecceda1000000

Deployed Bytecode

0x608060405234801561000f575f80fd5b506004361061011f575f3560e01c8063715018a6116100ab578063c4530d721161006f578063c4530d721461031d578063c99bd34b14610327578063d505accf14610345578063dd62ed3e14610361578063f2fde38b146103915761011f565b8063715018a6146102775780637ecebe00146102815780638da5cb5b146102b157806395d89b41146102cf578063a9059cbb146102ed5761011f565b806323b872dd116100f257806323b872dd146101bf578063313ce567146101ef5780633644e5151461020d578063404e51291461022b57806370a08231146102475761011f565b806306fdde0314610123578063095ea7b31461014157806316c021291461017157806318160ddd146101a1575b5f80fd5b61012b6103ad565b604051610138919061137d565b60405180910390f35b61015b6004803603810190610156919061142e565b610438565b6040516101689190611486565b60405180910390f35b61018b6004803603810190610186919061149f565b610525565b6040516101989190611486565b60405180910390f35b6101a9610542565b6040516101b691906114d9565b60405180910390f35b6101d960048036038101906101d491906114f2565b610548565b6040516101e69190611486565b60405180910390f35b6101f7610860565b604051610204919061155d565b60405180910390f35b610215610884565b604051610222919061158e565b60405180910390f35b610245600480360381019061024091906115d1565b6108e0565b005b610261600480360381019061025c919061149f565b610a15565b60405161026e91906114d9565b60405180910390f35b61027f610a2a565b005b61029b6004803603810190610296919061149f565b610ac4565b6040516102a891906114d9565b60405180910390f35b6102b9610ad9565b6040516102c6919061161e565b60405180910390f35b6102d7610afe565b6040516102e4919061137d565b60405180910390f35b6103076004803603810190610302919061142e565b610b8a565b6040516103149190611486565b60405180910390f35b610325610d74565b005b61032f610e1e565b60405161033c9190611486565b60405180910390f35b61035f600480360381019061035a919061168b565b610e30565b005b61037b60048036038101906103769190611728565b61111d565b60405161038891906114d9565b60405180910390f35b6103ab60048036038101906103a6919061149f565b61113d565b005b5f80546103b990611793565b80601f01602080910402602001604051908101604052809291908181526020018280546103e590611793565b80156104305780601f1061040757610100808354040283529160200191610430565b820191905f5260205f20905b81548152906001019060200180831161041357829003601f168201915b505050505081565b5f8160045f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161051391906114d9565b60405180910390a36001905092915050565b6007602052805f5260405f205f915054906101000a900460ff1681565b60025481565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff161580156105e7575060075f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b610626576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161061d9061180d565b60405180910390fd5b5f60045f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205490507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff81146107525782816106d59190611858565b60045f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f20819055505b8260035f8773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825461079e9190611858565b925050819055508260035f8673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8560405161084c91906114d9565b60405180910390a360019150509392505050565b7f000000000000000000000000000000000000000000000000000000000000001281565b5f7f000000000000000000000000000000000000000000000000000000000000000146146108b9576108b4611269565b6108db565b7f03a51d0f7a9a15c84eb4dcb752124aa9b71f873b03c8b5c8db4219a8770dbea65b905090565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff161461096f576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610966906118d5565b60405180910390fd5b60085f9054906101000a900460ff166109bd576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016109b49061193d565b60405180910390fd5b8060075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f6101000a81548160ff0219169083151502179055505050565b6003602052805f5260405f205f915090505481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610ab9576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ab0906118d5565b60405180910390fd5b610ac25f61113d565b565b6005602052805f5260405f205f915090505481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b60018054610b0b90611793565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3790611793565b8015610b825780601f10610b5957610100808354040283529160200191610b82565b820191905f5260205f20905b815481529060010190602001808311610b6557829003601f168201915b505050505081565b5f60075f8473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16158015610c29575060075f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f9054906101000a900460ff16155b610c68576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c5f9061180d565b60405180910390fd5b8160035f3373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f828254610cb49190611858565b925050819055508160035f8573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f82825401925050819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef84604051610d6291906114d9565b60405180910390a36001905092915050565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614610e03576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610dfa906118d5565b60405180910390fd5b5f60085f6101000a81548160ff021916908315150217905550565b60085f9054906101000a900460ff1681565b42841015610e73576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e6a906119a5565b60405180910390fd5b5f6001610e7e610884565b7f6e71edae12b1b97f4d1f60370fef10105fa2faae0126114a169c64845d6126c98a8a8a60055f8f73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f815480929190600101919050558b604051602001610f03969594939291906119c3565b60405160208183030381529060405280519060200120604051602001610f2a929190611a96565b604051602081830303815290604052805190602001208585856040515f8152602001604052604051610f5f9493929190611acc565b6020604051602081039080840390855afa158015610f7f573d5f803e3d5ffd5b5050506020604051035190505f73ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614158015610ff257508773ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16145b611031576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161102890611b59565b60405180910390fd5b8560045f8373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f205f8973ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020015f2081905550508573ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258760405161110c91906114d9565b60405180910390a350505050505050565b6004602052815f5260405f20602052805f5260405f205f91509150505481565b60065f9054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16146111cc576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111c3906118d5565b60405180910390fd5b8060065f6101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a350565b5f7f8b73c3c69bb8fe3d512ecc4cf759cc79239f7b179b0ffacaa9a75d522b39400f5f6040516112999190611c13565b60405180910390207fc89efdaa54c0f20c7adf612882df0950f5a951637e0307cdcb4c672f298b8bc646306040516020016112d8959493929190611c29565b60405160208183030381529060405280519060200120905090565b5f81519050919050565b5f82825260208201905092915050565b5f5b8381101561132a57808201518184015260208101905061130f565b5f8484015250505050565b5f601f19601f8301169050919050565b5f61134f826112f3565b61135981856112fd565b935061136981856020860161130d565b61137281611335565b840191505092915050565b5f6020820190508181035f8301526113958184611345565b905092915050565b5f80fd5b5f73ffffffffffffffffffffffffffffffffffffffff82169050919050565b5f6113ca826113a1565b9050919050565b6113da816113c0565b81146113e4575f80fd5b50565b5f813590506113f5816113d1565b92915050565b5f819050919050565b61140d816113fb565b8114611417575f80fd5b50565b5f8135905061142881611404565b92915050565b5f80604083850312156114445761144361139d565b5b5f611451858286016113e7565b92505060206114628582860161141a565b9150509250929050565b5f8115159050919050565b6114808161146c565b82525050565b5f6020820190506114995f830184611477565b92915050565b5f602082840312156114b4576114b361139d565b5b5f6114c1848285016113e7565b91505092915050565b6114d3816113fb565b82525050565b5f6020820190506114ec5f8301846114ca565b92915050565b5f805f606084860312156115095761150861139d565b5b5f611516868287016113e7565b9350506020611527868287016113e7565b92505060406115388682870161141a565b9150509250925092565b5f60ff82169050919050565b61155781611542565b82525050565b5f6020820190506115705f83018461154e565b92915050565b5f819050919050565b61158881611576565b82525050565b5f6020820190506115a15f83018461157f565b92915050565b6115b08161146c565b81146115ba575f80fd5b50565b5f813590506115cb816115a7565b92915050565b5f80604083850312156115e7576115e661139d565b5b5f6115f4858286016113e7565b9250506020611605858286016115bd565b9150509250929050565b611618816113c0565b82525050565b5f6020820190506116315f83018461160f565b92915050565b61164081611542565b811461164a575f80fd5b50565b5f8135905061165b81611637565b92915050565b61166a81611576565b8114611674575f80fd5b50565b5f8135905061168581611661565b92915050565b5f805f805f805f60e0888a0312156116a6576116a561139d565b5b5f6116b38a828b016113e7565b97505060206116c48a828b016113e7565b96505060406116d58a828b0161141a565b95505060606116e68a828b0161141a565b94505060806116f78a828b0161164d565b93505060a06117088a828b01611677565b92505060c06117198a828b01611677565b91505092959891949750929550565b5f806040838503121561173e5761173d61139d565b5b5f61174b858286016113e7565b925050602061175c858286016113e7565b9150509250929050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52602260045260245ffd5b5f60028204905060018216806117aa57607f821691505b6020821081036117bd576117bc611766565b5b50919050565b7f426c61636b6c69737465640000000000000000000000000000000000000000005f82015250565b5f6117f7600b836112fd565b9150611802826117c3565b602082019050919050565b5f6020820190508181035f830152611824816117eb565b9050919050565b7f4e487b71000000000000000000000000000000000000000000000000000000005f52601160045260245ffd5b5f611862826113fb565b915061186d836113fb565b92508282039050818111156118855761188461182b565b5b92915050565b7f554e415554484f52495a454400000000000000000000000000000000000000005f82015250565b5f6118bf600c836112fd565b91506118ca8261188b565b602082019050919050565b5f6020820190508181035f8301526118ec816118b3565b9050919050565b7f626c61636b6c697374696e672072656e6f756e63656420616c726561647900005f82015250565b5f611927601e836112fd565b9150611932826118f3565b602082019050919050565b5f6020820190508181035f8301526119548161191b565b9050919050565b7f5045524d49545f444541444c494e455f455850495245440000000000000000005f82015250565b5f61198f6017836112fd565b915061199a8261195b565b602082019050919050565b5f6020820190508181035f8301526119bc81611983565b9050919050565b5f60c0820190506119d65f83018961157f565b6119e3602083018861160f565b6119f0604083018761160f565b6119fd60608301866114ca565b611a0a60808301856114ca565b611a1760a08301846114ca565b979650505050505050565b5f81905092915050565b7f19010000000000000000000000000000000000000000000000000000000000005f82015250565b5f611a60600283611a22565b9150611a6b82611a2c565b600282019050919050565b5f819050919050565b611a90611a8b82611576565b611a76565b82525050565b5f611aa082611a54565b9150611aac8285611a7f565b602082019150611abc8284611a7f565b6020820191508190509392505050565b5f608082019050611adf5f83018761157f565b611aec602083018661154e565b611af9604083018561157f565b611b06606083018461157f565b95945050505050565b7f494e56414c49445f5349474e45520000000000000000000000000000000000005f82015250565b5f611b43600e836112fd565b9150611b4e82611b0f565b602082019050919050565b5f6020820190508181035f830152611b7081611b37565b9050919050565b5f81905092915050565b5f819050815f5260205f209050919050565b5f8154611b9f81611793565b611ba98186611b77565b9450600182165f8114611bc35760018114611bd857611c0a565b60ff1983168652811515820286019350611c0a565b611be185611b81565b5f5b83811015611c0257815481890152600182019150602081019050611be3565b838801955050505b50505092915050565b5f611c1e8284611b93565b915081905092915050565b5f60a082019050611c3c5f83018861157f565b611c49602083018761157f565b611c56604083018661157f565b611c6360608301856114ca565b611c70608083018461160f565b969550505050505056fea2646970667358221220e986a050c4028cd77be4544851f70654145a579e670490e5aa8de9eefc10d9ac64736f6c63430008180033

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

000000000000000000000000fa333ab0cea771e2451807395ef56d54e443ce7e00000000000000000000000000000000000000000000d3c21bcecceda1000000

-----Decoded View---------------
Arg [0] : deployer (address): 0xFa333AB0cea771E2451807395eF56D54e443Ce7E
Arg [1] : supply (uint256): 1000000000000000000000000

-----Encoded View---------------
2 Constructor Arguments found :
Arg [0] : 000000000000000000000000fa333ab0cea771e2451807395ef56d54e443ce7e
Arg [1] : 00000000000000000000000000000000000000000000d3c21bcecceda1000000


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.