Blockwell

STACS

ERC20

This contract is an ERC20 token.

Name STACS
Symbol STACS
Decimals 18
Total Supply 900,000,000 STACS

About

Stats

Public Functions 23
Event Types 3
Code Size 13,137 bytes

Library Use

Uses SafeMath for uint256.

Events (3) keyboard_arrow_up

Approval Event

Parameters help
owner
address help
spender
address help
value
uint256 help

OwnershipTransferred Event

Parameters help
previousOwner
address help
newOwner
address help

Transfer Event

Parameters help
from
address help
to
address help
value
uint256 help

decimals Constant

uint8 help
18

symbol Constant

string help
STACS

name Constant

string help
STACS

MAX_TOKEN_SUPPLY Constant

uint256 help
900000000 * UNKNOWN VALUE

migrationPhase Variable

bool help

migrationOperator Variable

address help

pendingOwner Variable

address help

owner Variable

address help

requester Variable

address help

approver Variable

address help

paused Variable

bool help

pausePending Variable

bool help

unpausePending Variable

bool help

allowed Variable

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

balances Variable

mapping(address => uint256) help
Internal Variable

totalSupply_ Variable

uint256 help
Internal Variable

Functions Expand All Collapse All

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function requestPause() public onlyRequester {
  pausePending = true;
  unpausePending = false;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function requestUnpause() public onlyRequester {
  pausePending = false;
  unpausePending = true;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function cancelRequestPause() public onlyRequester {
  pausePending = false;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function approveRequestPause() public onlyApprover {
  require(pausePending);
  pausePending = false;
  paused = true;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function rejectRequestPause() public onlyApprover {
  pausePending = false;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function cancelRequestUnpause() public onlyRequester {
  unpausePending = false;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function approveRequestUnpause() public onlyApprover {
  require(unpausePending);
  unpausePending = false;
  paused = false;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function rejectRequestUnpause() public onlyApprover {
  unpausePending = false;
}

Parameters help

Name Type
newOwner
address help

Properties

Visibility help public
Mutability help transaction
Source Code
function transferOwnership(address newOwner) public onlyOwner {
  pendingOwner = newOwner;
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function claimOwnership() public onlyPendingOwner {
  emit OwnershipTransferred(owner, pendingOwner);
  owner = pendingOwner;
  pendingOwner = address(0);
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help view
Source Code
function totalSupply() public view returns (uint256) {
  return totalSupply_;
}

Parameters help

Name Type
_owner
address help

Properties

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

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

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

Parameters help

Name Type
_owner
address help
_spender
address help

Properties

Visibility help public
Mutability help view
Source Code
function allowance(address _owner, address _spender)
  public
  view
  returns (uint256)
{
  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

Source Code
function transferFrom(
  address _from,
  address _to,
  uint256 _value
) public whenNotPaused 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

Source Code
function approve(address spender, uint256 value)
  public
  whenNotPaused
  returns (bool)
{
  return super.approve(spender, value);
}

Parameters help

Name Type
_spender
address help
_addedValue
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function increaseAllowance(address _spender, uint256 _addedValue)
  public
  returns (bool)
{
  allowed[msg.sender][_spender] = (
    allowed[msg.sender][_spender].add(_addedValue)
  );
  emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
  return true;
}

Parameters help

Name Type
_spender
address help
_subtractedValue
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function decreaseAllowance(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] = oldValue.sub(_subtractedValue);
  }
  emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
  return true;
}

Parameters help

Name Type
_accounts
address[] help
_amounts
uint256[] help

Properties

Visibility help public
Mutability help transaction
Source Code
function mint(address[] _accounts, uint256[] _amounts)
  public
  onlyMigrationOperator
{
  require(migrationPhase);
  uint256 length = _accounts.length;
  require(length == _amounts.length);
  for (uint256 i = 0; i < length; i++) {
    balances[_accounts[i]] = balances[_accounts[i]].add(_amounts[i]);
    emit Transfer(address(0), _accounts[i], _amounts[i]);
    totalSupply_ = totalSupply_.add(_amounts[i]);
  }
  require(totalSupply_ <= MAX_TOKEN_SUPPLY);
}

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function endMigration() public onlyOwner {
  migrationPhase = false;
}

Parameters help

Name Type
tokenAddress
address help
tokens
uint256 help

Properties

Visibility help public
Mutability help transaction
Source Code
function transferAnyERC20Token(address tokenAddress, uint256 tokens)
  public
  onlyOwner
  returns (bool success)
{
  return ERC20Basic(tokenAddress).transfer(owner, tokens);
}

Parameters help

Name Type
spender
address help
addedValue
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function increaseAllowance(address spender, uint256 addedValue)
  public
  whenNotPaused
  returns (bool success)
{
  return super.increaseAllowance(spender, addedValue);
}

Parameters help

Name Type
spender
address help
subtractedValue
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

Source Code
function decreaseAllowance(address spender, uint256 subtractedValue)
  public
  whenNotPaused
  returns (bool success)
{
  return super.decreaseAllowance(spender, subtractedValue);
}

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.