Melon Token
ERC20
This contract is an ERC20 token.
Name
Melon Token
Symbol
MLN
Decimals
18
Total Supply
1,524,128 MLN
About link description
Enzyme (MLN) is a cryptocurrency and operates on the Ethereum platform. Enzyme has a current supply of 1,824,437.31909865 with 1,792,737.62622673 in circulation. The last known price of Enzyme is 82.86354625 USD and is up 8.97 over the last 24 hours. It is currently trading on 43 active market(s) with $19,902,790.01 traded over the last 24 hours. More information can be found at https://enzyme.finance/.
Stats
Public Functions
16
Event Types
2
Code Size
16,088 bytes
Library Use
Uses SafeMath for uint.
State Variables (10) keyboard_arrow_up
Functions
name keyboard_arrow_up
symbol keyboard_arrow_up
decimals keyboard_arrow_up
totalSupply keyboard_arrow_up
balanceOf keyboard_arrow_up
allowance keyboard_arrow_up
transfer keyboard_arrow_up
Source Code
function transfer(address to, uint256 value) public returns (bool) {
_transfer(msg.sender, to, value);
return true;
}
approve keyboard_arrow_up
Source Code
function approve(address spender, uint256 value) public returns (bool) {
require(spender != address(0));
_allowed[msg.sender][spender] = value;
emit Approval(msg.sender, spender, value);
return true;
}
transferFrom keyboard_arrow_up
Source Code
function transferFrom(
address from,
address to,
uint256 value
) public returns (bool) {
_allowed[from][msg.sender] = _allowed[from][msg.sender].sub(value);
_transfer(from, to, value);
emit Approval(from, msg.sender, _allowed[from][msg.sender]);
return true;
}
increaseAllowance keyboard_arrow_up
Source Code
function increaseAllowance(address spender, uint256 addedValue)
public
returns (bool)
{
require(spender != address(0));
_allowed[msg.sender][spender] = _allowed[msg.sender][spender].add(addedValue);
emit Approval(msg.sender, spender, _allowed[msg.sender][spender]);
return true;
}
decreaseAllowance keyboard_arrow_up
Source Code
function decreaseAllowance(address spender, uint256 subtractedValue)
public
returns (bool)
{
require(spender != address(0));
_allowed[msg.sender][spender] = _allowed[msg.sender][spender].sub(
subtractedValue
);
emit Approval(msg.sender, spender, _allowed[msg.sender][spender]);
return true;
}
burn keyboard_arrow_up
burnFrom keyboard_arrow_up
changeCouncil keyboard_arrow_up
Modifiers help
onlyCouncil checks for the following:
Source Code
function changeCouncil(address _newCouncil) public onlyCouncil {
council = _newCouncil;
}
mintInitialSupply keyboard_arrow_up
Modifiers help
onlyDeployer checks for the following:
Requirements help
Source Code
function mintInitialSupply(address _initialReceiver) public onlyDeployer {
require(!initialSupplyMinted, "Initial minting already complete");
initialSupplyMinted = true;
_mint(_initialReceiver, INITIAL_TOTAL_SUPPLY);
}
mintInflation keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
anIntervalHasPassed checks for the following:
inflationEnabled checks for the following:
Requirements help
initialSupplyMinted must be true
Source Code
function mintInflation() public anIntervalHasPassed inflationEnabled {
require(initialSupplyMinted, "Initial minting not complete");
nextMinting = uint256(nextMinting).add(MINTING_INTERVAL);
_mint(council, YEARLY_MINTABLE_AMOUNT);
}
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 ERC20._transfer keyboard_arrow_up
Source Code
function _transfer(
address from,
address to,
uint256 value
) internal {
require(to != address(0));
_balances[from] = _balances[from].sub(value);
_balances[to] = _balances[to].add(value);
emit Transfer(from, to, value);
}
internal ERC20._mint keyboard_arrow_up
Requirements help
Source Code
function _mint(address account, uint256 value) internal {
require(account != address(0));
_totalSupply = _totalSupply.add(value);
_balances[account] = _balances[account].add(value);
emit Transfer(address(0), account, value);
}
internal ERC20._burn keyboard_arrow_up
Requirements help
Source Code
function _burn(address account, uint256 value) internal {
require(account != address(0));
_totalSupply = _totalSupply.sub(value);
_balances[account] = _balances[account].sub(value);
emit Transfer(account, address(0), value);
}
internal ERC20._burnFrom keyboard_arrow_up
Requirements help
Source Code
function _burnFrom(address account, uint256 value) internal {
_allowed[account][msg.sender] = _allowed[account][msg.sender].sub(value);
_burn(account, value);
emit Approval(account, msg.sender, _allowed[account][msg.sender]);
}