Quantstamp Token
ERC20
This contract is an ERC20 token.
Name
Quantstamp Token
Symbol
QSP
Decimals
18
Total Supply
976,442,388 QSP
About link description
Quantstamp (QSP) is a cryptocurrency and operates on the Ethereum platform. Quantstamp has a current supply of 976,442,388.321185 with 713,801,946.7046682 in circulation. The last known price of Quantstamp is 0.02959925 USD and is down -0.51 over the last 24 hours. It is currently trading on 9 active market(s) with $435,196.56 traded over the last 24 hours. More information can be found at https://quantstamp.com/.
Stats
Public Functions
11
Event Types
4
Code Size
14,998 bytes
Events (4) keyboard_arrow_up
Constants (6) keyboard_arrow_up
State Variables (9) keyboard_arrow_up
Functions
transferOwnership keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function transferOwnership(address newOwner) public onlyOwner {
require(newOwner != address(0));
OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
balanceOf keyboard_arrow_up
transfer keyboard_arrow_up
Modifiers help
Source Code
function transfer(address _to, uint256 _value)
public
onlyWhenTransferEnabled
validDestination(_to)
returns (bool)
{
return super.transfer(_to, _value);
}
allowance keyboard_arrow_up
transferFrom keyboard_arrow_up
Modifiers help
Source Code
function transferFrom(
address _from,
address _to,
uint256 _value
) public onlyWhenTransferEnabled validDestination(_to) returns (bool) {
bool result = super.transferFrom(_from, _to, _value);
if (result) {
if (msg.sender == crowdSaleAddr)
crowdSaleAllowance = crowdSaleAllowance.sub(_value);
if (msg.sender == adminAddr) adminAllowance = adminAllowance.sub(_value);
}
return result;
}
approve keyboard_arrow_up
Source Code
function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
Approval(msg.sender, _spender, _value);
return true;
}
increaseApproval keyboard_arrow_up
Source Code
function increaseApproval(address _spender, uint256 _addedValue)
returns (bool success)
{
allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(
_addedValue
);
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
decreaseApproval keyboard_arrow_up
Source Code
function decreaseApproval(address _spender, uint256 _subtractedValue)
returns (bool success)
{
uint256 oldValue = allowed[msg.sender][_spender];
if (_subtractedValue > oldValue) {
allowed[msg.sender][_spender] = 0;
} else {
allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
}
Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
return true;
}
burn keyboard_arrow_up
Requirements help
One or more of the following:
-
owner
must be equal to
the sender's address
- ORtransferEnabled must be true
Source Code
function burn(uint256 _value) public {
require(transferEnabled || msg.sender == owner);
require(balances[msg.sender] >= _value);
super.burn(_value);
Transfer(msg.sender, address(0x0), _value);
}
setCrowdsale keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Requirements help
Source Code
function setCrowdsale(address _crowdSaleAddr, uint256 _amountForSale)
external
onlyOwner
{
require(!transferEnabled);
require(_amountForSale <= crowdSaleAllowance);
// if 0, then full available crowdsale supply is assumed
uint256 amount = (_amountForSale == 0) ? crowdSaleAllowance : _amountForSale;
// Clear allowance of old, and set allowance of new
approve(crowdSaleAddr, 0);
approve(_crowdSaleAddr, amount);
crowdSaleAddr = _crowdSaleAddr;
}
enableTransfer keyboard_arrow_up
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.