Blockwell

Measurable Data Token

ERC20

This contract is an ERC20 token.

Name Measurable Data Token
Symbol MDT
Decimals 18
Total Supply 1,000,000,000 MDT

About link description

Measurable Data Token (MDT) is a cryptocurrency and operates on the Ethereum platform. Measurable Data Token has a current supply of 1,000,000,000 with 671,990,346 in circulation. The last known price of Measurable Data Token is 0.02337567 USD and is up 9.07 over the last 24 hours. It is currently trading on 15 active market(s) with $10,385,704.62 traded over the last 24 hours. More information can be found at http://mdt.io/.

Stats

Public Functions 15
Event Types 5
Code Size 17,004 bytes

Library Use

Uses SafeMath for uint256.

Events (5) keyboard_arrow_up

Approval Event

Parameters help
_owner
address help
_spender
address help
_value
uint256 help

Burn Event

Parameters help
_burner
address help
_value
uint256 help

ERC677Transfer Event

Parameters help
_from
address help
_to
address help
_value
uint256 help
_data
bytes help

OwnershipTransferred Event

Parameters help
previousOwner
address help
newOwner
address help

Transfer Event

Parameters help
_from
address help
_to
address help
_value
uint256 help

name Constant

string help
Measurable Data Token

symbol Constant

string help
MDT

decimals Constant

uint256 help
18

maxSupply Constant

uint256 help
10 * UNKNOWN VALUE * UNKNOWN VALUE

TEAM_TOKENS_RESERVED Constant

uint256 help
240 * UNKNOWN VALUE * UNKNOWN VALUE

USER_GROWTH_TOKENS_RESERVED Constant

uint256 help
150 * UNKNOWN VALUE * UNKNOWN VALUE

INVESTORS_TOKENS_RESERVED Constant

uint256 help
110 * UNKNOWN VALUE * UNKNOWN VALUE

BONUS_TOKENS_RESERVED Constant

uint256 help
200 * UNKNOWN VALUE * UNKNOWN VALUE

tokenSaleAddress Variable

address help

mdtTeamAddress Variable

address help

userGrowthAddress Variable

address help

investorsAddress Variable

address help

mdtFoundationAddress Variable

address help

totalSupply Variable

uint256 help

owner Variable

address help

allowed Variable

mapping(address => mapping(address => uint256)) help
Internal Variable

balances Variable

mapping(address => uint256) help
Internal Variable

Functions Expand All Collapse All

transferOwnership keyboard_arrow_up

Parameters help

Name Type
newOwner
address help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function transferOwnership(address newOwner) public onlyOwner {
  require(newOwner != address(0));
  owner = newOwner;
  OwnershipTransferred(owner, newOwner);
}

Parameters help

Name Type
_owner
address help

Properties

Visibility help public
Mutability help constant
Source Code
function balanceOf(address _owner) public constant returns (uint256 balance) {
  return balances[_owner];
}

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Requirements help

Source Code
function transfer(address _to, uint256 _value)
  public
  validRecipient(_to)
  returns (bool)
{
  return super.transfer(_to, _value);
}

Parameters help

Name Type
_owner
address help
_spender
address help

Properties

Visibility help public
Mutability help constant
Source Code
function allowance(address _owner, address _spender)
  public
  constant
  returns (uint256 remaining)
{
  return allowed[_owner][_spender];
}

Parameters help

Name Type
_from
address help
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Requirements help

Source Code
function transferFrom(
  address _from,
  address _to,
  uint256 _value
) public validRecipient(_to) returns (bool) {
  return super.transferFrom(_from, _to, _value);
}

Parameters help

Name Type
_spender
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Requirements help

One or more of the following:
Source Code
function approve(address _spender, uint256 _value)
  public
  validRecipient(_spender)
  returns (bool)
{
  return super.approve(_spender, _value);
}

transferAndCall keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help
_data
bytes help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function transferAndCall(
  address _to,
  uint256 _value,
  bytes _data
) public validRecipient(_to) returns (bool success) {
  return super.transferAndCall(_to, _value, _data);
}

burn keyboard_arrow_up

Parameters help

Name Type
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function burn(uint256 _value) public onlyOwner returns (bool) {
  balances[msg.sender] = balances[msg.sender].sub(_value);
  totalSupply = totalSupply.sub(_value);
  Burn(msg.sender, _value);
  return true;
}

burnFrom keyboard_arrow_up

Parameters help

Name Type
_from
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function burnFrom(address _from, uint256 _value)
  public
  onlyOwner
  returns (bool)
{
  var _allowance = allowed[_from][msg.sender];
  balances[_from] = balances[_from].sub(_value);
  allowed[_from][msg.sender] = _allowance.sub(_value);
  totalSupply = totalSupply.sub(_value);
  Burn(_from, _value);
  return true;
}

emergencyERC20Drain keyboard_arrow_up

Parameters help

Name Type
token
ERC20 help
amount
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function emergencyERC20Drain(ERC20 token, uint256 amount) public onlyOwner {
  token.transfer(owner, amount);
}

changeTokenSaleAddress keyboard_arrow_up

Parameters help

Name Type
_tokenSaleAddress
address help

Properties

Visibility help public
Mutability help transaction
Source Code
function changeTokenSaleAddress(address _tokenSaleAddress)
  public
  onlyOwner
  validRecipient(_tokenSaleAddress)
{
  tokenSaleAddress = _tokenSaleAddress;
}

changeMdtTeamAddress keyboard_arrow_up

Parameters help

Name Type
_mdtTeamAddress
address help

Properties

Visibility help public
Mutability help transaction
Source Code
function changeMdtTeamAddress(address _mdtTeamAddress)
  public
  onlyOwner
  validRecipient(_mdtTeamAddress)
{
  mdtTeamAddress = _mdtTeamAddress;
}

changeUserGrowthAddress keyboard_arrow_up

Parameters help

Name Type
_userGrowthAddress
address help

Properties

Visibility help public
Mutability help transaction
Source Code
function changeUserGrowthAddress(address _userGrowthAddress)
  public
  onlyOwner
  validRecipient(_userGrowthAddress)
{
  userGrowthAddress = _userGrowthAddress;
}

changeInvestorsAddress keyboard_arrow_up

Parameters help

Name Type
_investorsAddress
address help

Properties

Visibility help public
Mutability help transaction
Source Code
function changeInvestorsAddress(address _investorsAddress)
  public
  onlyOwner
  validRecipient(_investorsAddress)
{
  investorsAddress = _investorsAddress;
}

changeMdtFoundationAddress keyboard_arrow_up

Parameters help

Name Type
_mdtFoundationAddress
address help

Properties

Visibility help public
Mutability help transaction
Source Code
function changeMdtFoundationAddress(address _mdtFoundationAddress)
  public
  onlyOwner
  validRecipient(_mdtFoundationAddress)
{
  mdtFoundationAddress = _mdtFoundationAddress;
}

Internal Functions Expand All Collapse All

Internal functions are parts of the contract that can't be used directly, but instead are used by the public functions listed above.

internal MDToken.mint keyboard_arrow_up

Parameters help

Name Type
_to
address help
_amount
uint256 help

Properties

Visibility help private
Mutability help transaction

Modifiers help

Requirements help

Source Code
function mint(address _to, uint256 _amount)
  private
  validRecipient(_to)
  returns (bool)
{
  require(totalSupply.add(_amount) <= maxSupply);
  totalSupply = totalSupply.add(_amount);
  balances[_to] = balances[_to].add(_amount);

  Transfer(0x0, _to, _amount);
  return true;
}

internal ERC677Token.contractFallback keyboard_arrow_up

Parameters help

Name Type
_to
address help
_value
uint256 help
_data
bytes help

Properties

Visibility help private
Mutability help transaction
Source Code
function contractFallback(
  address _to,
  uint256 _value,
  bytes _data
) private {
  ERC677Receiver receiver = ERC677Receiver(_to);
  require(receiver.onTokenTransfer(msg.sender, _value, _data));
}

internal ERC677Token.isContract keyboard_arrow_up

Parameters help

Name Type
_addr
address help

Properties

Visibility help private
Mutability help view
Source Code
function isContract(address _addr) private view returns (bool hasCode) {
  uint256 length;
  assembly {
    length := extcodesize(_addr)
  }
  return length > 0;
}