Maximine Coin
ERC20
This contract is an ERC20 token.
Name
Maximine Coin
Symbol
MXM
Decimals
18
Total Supply
16,000,000,000 MXM
About
Stats
Public Functions
8
Event Types
2
Code Size
6,712 bytes
State Variables (8) keyboard_arrow_up
Functions
transfer keyboard_arrow_up
Requirements help
Source Code
function transfer(address _to, uint256 _value) public {
require(!blacklist[msg.sender]);
_transfer(msg.sender, _to, _value);
}
ban keyboard_arrow_up
enable keyboard_arrow_up
transferFrom keyboard_arrow_up
Requirements help
Source Code
function transferFrom(
address _from,
address _to,
uint256 _value
) public returns (bool success) {
require(!blacklist[msg.sender]);
require(_value <= allowance[_from][msg.sender]); // Check allowance
allowance[_from][msg.sender] -= _value;
_transfer(_from, _to, _value);
return true;
}
approve keyboard_arrow_up
Requirements help
Source Code
function approve(address _spender, uint256 _value)
public
returns (bool success)
{
require(!blacklist[msg.sender]);
allowance[msg.sender][_spender] = _value;
return true;
}
approveAndCall keyboard_arrow_up
Requirements help
Source Code
function approveAndCall(
address _spender,
uint256 _value,
bytes _extraData
) public returns (bool success) {
require(!blacklist[msg.sender]);
tokenRecipient spender = tokenRecipient(_spender);
if (approve(_spender, _value)) {
spender.receiveApproval(msg.sender, _value, this, _extraData);
return true;
}
}
burn keyboard_arrow_up
Requirements help
Source Code
function burn(uint256 _value) public returns (bool success) {
require(!blacklist[msg.sender]);
require(balanceOf[msg.sender] >= _value); // Check if the sender has enough
balanceOf[msg.sender] -= _value; // Subtract from the sender
totalSupply -= _value; // Updates totalSupply
Burn(msg.sender, _value);
return true;
}
burnFrom keyboard_arrow_up
Requirements help
Source Code
function burnFrom(address _from, uint256 _value) public returns (bool success) {
require(!blacklist[msg.sender]);
require(balanceOf[_from] >= _value); // Check if the targeted balance is enough
require(_value <= allowance[_from][msg.sender]); // Check allowance
balanceOf[_from] -= _value; // Subtract from the targeted balance
allowance[_from][msg.sender] -= _value; // Subtract from the sender's allowance
totalSupply -= _value; // Update totalSupply
Burn(_from, _value);
return true;
}
Internal Functions
Internal functions are parts of the contract that can't be used directly, but instead are used by the public functions listed above.
internal TokenERC20._transfer keyboard_arrow_up
Requirements help
Source Code
function _transfer(
address _from,
address _to,
uint256 _value
) internal {
// Prevent transfer to 0x0 address. Use burn() instead
require(_to != 0x0);
// Check if the sender has enough
require(balanceOf[_from] >= _value);
// Check for overflows
require(balanceOf[_to] + _value > balanceOf[_to]);
// Save this for an assertion in the future
uint256 previousBalances = balanceOf[_from] + balanceOf[_to];
// Subtract from the sender
balanceOf[_from] -= _value;
// Add the same to the recipient
balanceOf[_to] += _value;
Transfer(_from, _to, _value);
// Asserts are used to use static analysis to find bugs in your code. They should never fail
assert(balanceOf[_from] + balanceOf[_to] == previousBalances);
}