ETH Price: $2,812.68 (+7.37%)
 

Overview

Max Total Supply

527 MKN

Holders

190

Total Transfers

-

Market

Volume (24H)

N/A

Min Price (24H)

N/A

Max Price (24H)

N/A

Other Info

Loading...
Loading
Loading...
Loading
Loading...
Loading

OVERVIEW

General purpose, user-made, cryptocollectibles.

# Exchange Pair Price  24H Volume % Volume

Contract Source Code Verified (Exact Match)

Contract Name:
Mokens

Compiler Version
v0.4.24+commit.e67f0147

Optimization Enabled:
Yes with 999 runs

Other Settings:
default evmVersion
/**
 *Submitted for verification at Etherscan.io on 2018-09-05
*/

pragma solidity 0.4.24;
pragma experimental "v0.5.0";
/******************************************************************************\
*..................................Mokens......................................*
*.....................General purpose cryptocollectibles.......................*
*..............................................................................*
/******************************************************************************/

/******************************************************************************\
* Author: Nick Mudge, [email protected]
* Copyright (c) 2018
* Mokens
*
* The Mokens contract is a proxy contract that delegates all functionality
* to delegate contracts. This design enables new functionality and improvements
* to be added to the Mokens contract over time.
*
* Changes to the Mokens contract are transparent and visible. To make changes
* easier to monitor the ContractUpdated event is emitted any time a function is
* added, removed or updated. The ContractUpdated event exists in the
* MokenUpdates delegate contract
*
* The source code for all delegate contracts used by the Mokens contract can be
* found online and inspected.
*
* The Mokens contract is reflective or self inspecting. It contains functions
* for inspecting what delegate contracts it has and what functions they have.
* Specifically, the QueryMokenDelegates delegate contract contains functions for
* querying delegate contracts and functions.
*
*    Here are some of the other delegate contracts:
*
*  - MokenERC721: Implements the ERC721 standard for mokens.
*  - MokenERC721Batch: Implements batch transfers and approvals.
*  - MokenERC998ERC721TopDown: Implements ERC998 composable functionality.
*  - MokenERC998ERC20TopDown: Implements ERC998 composable functionality.
*  - MokenERC998ERC721BottomUp: Implements ERC998 composable functionality.
*  - MokenMinting: Implements moken minting functionality.
*  - MokenEras: Implements moken era functionality.
*  - QueryMokenData: Implements functions to query info about mokens.
/******************************************************************************/
//////////////////////////////////////
//////////////////////////////////////
contract Storage0 {
    // funcId => delegate contract
    mapping(bytes4 => address) internal delegates;
}

contract Mokens is Storage0 {
    constructor(address mokenUpdates) public {
        //0x584fc325 == "initializeMokensContract()"
        bytes memory calldata = abi.encodeWithSelector(0x584fc325,mokenUpdates);
        assembly {
            let callSuccess := delegatecall(gas, mokenUpdates, add(calldata, 0x20), mload(calldata), 0, 0)
            let size := returndatasize
            returndatacopy(calldata, 0, size)
            if eq(callSuccess,0) {revert(calldata, size)}
        }
    }
    function() external payable {
        address delegate = delegates[msg.sig];
        require(delegate != address(0), "Mokens function does not exist.");
        assembly {
            let ptr := mload(0x40)
            calldatacopy(ptr, 0, calldatasize)
            let result := delegatecall(gas, delegate, ptr, calldatasize, 0, 0)
            let size := returndatasize
            returndatacopy(ptr, 0, size)
            switch result
            case 0 {revert(ptr, size)}
            default {return (ptr, size)}
        }
    }
}

Contract Security Audit

Contract ABI

[{"inputs":[{"name":"mokenUpdates","type":"address"}],"payable":false,"stateMutability":"nonpayable","type":"constructor"},{"payable":true,"stateMutability":"payable","type":"fallback"}]

608060405234801561001057600080fd5b506040516020806101b48339810160408181529151600160a060020a038116602480840191909152835180840390910181526044909201909252602081018051600160e060020a03167f584fc325000000000000000000000000000000000000000000000000000000001781528151600091829190855af43d806000843e811515610099578083fd5b50505050610108806100ac6000396000f30060806040908152600080357fffffffff000000000000000000000000000000000000000000000000000000001681526020819052205473ffffffffffffffffffffffffffffffffffffffff1680151560b857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d6f6b656e732066756e6374696f6e20646f6573206e6f742065786973742e00604482015290519081900360640190fd5b60405136600082376000803683855af43d806000843e81801560d8578184f35b8184fd00a165627a7a7230582053d9619b5bf34e13f75a13ab628dc003344d6959f108751fbcf8b40db093ccb200290000000000000000000000005c339a8421d1106eee2382c0bce0c086c01a8ac0

Deployed Bytecode

0x60806040908152600080357fffffffff000000000000000000000000000000000000000000000000000000001681526020819052205473ffffffffffffffffffffffffffffffffffffffff1680151560b857604080517f08c379a000000000000000000000000000000000000000000000000000000000815260206004820152601f60248201527f4d6f6b656e732066756e6374696f6e20646f6573206e6f742065786973742e00604482015290519081900360640190fd5b60405136600082376000803683855af43d806000843e81801560d8578184f35b8184fd00a165627a7a7230582053d9619b5bf34e13f75a13ab628dc003344d6959f108751fbcf8b40db093ccb20029

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

0000000000000000000000005c339a8421d1106eee2382c0bce0c086c01a8ac0

-----Decoded View---------------
Arg [0] : mokenUpdates (address): 0x5C339a8421D1106EEE2382c0Bce0c086C01A8Ac0

-----Encoded View---------------
1 Constructor Arguments found :
Arg [0] : 0000000000000000000000005c339a8421d1106eee2382c0bce0c086c01a8ac0


Swarm Source

bzzr://53d9619b5bf34e13f75a13ab628dc003344d6959f108751fbcf8b40db093ccb2
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.