ERC20
This contract is an ERC20 token.
Name
ABYSS
Symbol
ABYSS
Decimals
18
Total Supply
508,628,132 ABYSS
About link
Abyss (ABYSS) is a cryptocurrency and operates on the Ethereum platform. Abyss has a current supply of 508,628,132.04106945 with 228,664,903.23688185 in circulation. The last known price of Abyss is 0.02592822 USD and is down -3.26 over the last 24 hours. It is currently trading on 10 active market(s) with $170,630.20 traded over the last 24 hours. More information can be found at https://abyss.finance.
Stats
Public Functions
18
Event Types
8
Code Size
14,539 bytes
Events (8) keyboard_arrow_up
State Variables (16) keyboard_arrow_up
Functions
setOwners keyboard_arrow_up
getOwners keyboard_arrow_up
balanceOf keyboard_arrow_up
transfer keyboard_arrow_up
Modifiers help
canTransfer checks for the following:
One or more of the following:
-isLimitEnabled must not be true - OR
now
must be greater than or equal to
limitEndDate
Source Code
function transfer(address _to, uint256 _value)
public
canTransfer(msg.sender, _to)
returns (bool)
{
return super.transfer(_to, _value);
}
transferFrom keyboard_arrow_up
Modifiers help
canTransfer checks for the following:
One or more of the following:
-isLimitEnabled must not be true - OR
now
must be greater than or equal to
limitEndDate
Source Code
function transferFrom(
address _from,
address _to,
uint256 _value
) public canTransfer(_from, _to) returns (bool) {
return super.transferFrom(_from, _to, _value);
}
approve keyboard_arrow_up
Modifiers help
canTransfer checks for the following:
One or more of the following:
-isLimitEnabled must not be true - OR
now
must be greater than or equal to
limitEndDate
Source Code
function approve(address _spender, uint256 _value)
public
canTransfer(msg.sender, _spender)
returns (bool)
{
return super.approve(_spender, _value);
}
allowance keyboard_arrow_up
setAllowTransfers keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function setAllowTransfers(bool _allowTransfers) external onlyOwner {
allowTransfers = _allowTransfers;
AllowTransfersChanged(_allowTransfers);
}
setListener keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function setListener(address _listener) public onlyOwner {
if (_listener != address(0)) {
eventListener = ITokenEventListener(_listener);
} else {
delete eventListener;
}
}
issue keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
canIssue checks for the following:
Source Code
function issue(address _to, uint256 _value) external onlyOwner canIssue {
totalSupply = safeAdd(totalSupply, _value);
balances[_to] = safeAdd(balances[_to], _value);
Issue(_to, _value);
Transfer(address(0), _to, _value);
}
destroy keyboard_arrow_up
Requirements help
Source Code
function destroy(address _from, uint256 _value) external {
require(ownerByAddress[msg.sender] || msg.sender == _from);
require(balances[_from] >= _value);
totalSupply = safeSub(totalSupply, _value);
balances[_from] = safeSub(balances[_from], _value);
Transfer(_from, address(0), _value);
Destroy(_from, _value);
}
increaseApproval keyboard_arrow_up
Source Code
function increaseApproval(address _spender, uint256 _addedValue)
public
returns (bool)
{
allowed[msg.sender][_spender] = safeAdd(
allowed[msg.sender][_spender],
_addedValue
);
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
decreaseApproval keyboard_arrow_up
Source Code
function decreaseApproval(address _spender, uint256 _subtractedValue)
public
returns (bool)
{
uint256 oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = safeSub(oldValue, _subtractedValue);
}
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
finishIssuance keyboard_arrow_up
enableTransfers keyboard_arrow_up
addLimitedWalletAddress keyboard_arrow_up
Requirements help
Source Code
function addLimitedWalletAddress(address _wallet) public {
require(msg.sender == limitedWalletsManager || ownerByAddress[msg.sender]);
limitedWallets[_wallet] = true;
}
delLimitedWalletAddress keyboard_arrow_up
Modifiers help
onlyManager checks for the following:
Source Code
function delLimitedWalletAddress(address _wallet) public onlyManager {
limitedWallets[_wallet] = false;
}
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 ManagedToken.hasListener keyboard_arrow_up
internal SafeMath.safeMul keyboard_arrow_up
Requirements help
Source Code
function safeMul(uint256 a, uint256 b) internal pure returns (uint256) {
uint256 c = a * b;
assert(a == 0 || c / a == b);
return c;
}
internal SafeMath.safeDiv keyboard_arrow_up
internal SafeMath.safeSub keyboard_arrow_up
internal SafeMath.safeAdd keyboard_arrow_up
internal MultiOwnable._setOwners keyboard_arrow_up
Source Code
function _setOwners(address[] _owners) internal {
for (uint256 i = 0; i < owners.length; i++) {
ownerByAddress[owners[i]] = false;
}
for (uint256 j = 0; j < _owners.length; j++) {
ownerByAddress[_owners[j]] = true;
}
owners = _owners;
SetOwners(_owners);
}