BqtX Token
ERC20
This contract is an ERC20 token.
Name
BqtX Token
Symbol
BQTX
Decimals
18
Total Supply
800,000,000 BQTX
About link description
BQT (BQTX) is a cryptocurrency and operates on the Ethereum platform. BQT has a current supply of 800,000,000 with 0 in circulation. The last known price of BQT is 0.00143459 USD and is up 15.31 over the last 24 hours. It is currently trading on 2 active market(s) with $361.40 traded over the last 24 hours. More information can be found at https://bqt.io/.
Stats
Public Functions
15
Event Types
9
Code Size
13,613 bytes
Library Use
Uses SafeMath for uint256.
Uses StringLib for string.
Events (9) keyboard_arrow_up
State Variables (12) keyboard_arrow_up
Functions
balanceOf keyboard_arrow_up
transfer keyboard_arrow_up
Modifiers help
duringIcoOnlyTheOwner checks for the following:
One or more of the following:
-
owner
must be equal to
the sender's address
- OR
now
must be greater than
icoDeadLine
Requirements help
Source Code
function transfer(address toAddr, uint256 amountInWei)
public
duringIcoOnlyTheOwner
returns (
bool // don't icoNotPaused here. It's a logic issue.
)
{
require(toAddr != 0x0 && toAddr != msg.sender && amountInWei > 0); // Prevent transfer to 0x0 address and to self, amount must be >0
uint256 availableTokens = balances[msg.sender];
//----- Checking Token reserve first : if during ICO
if (
msg.sender == owner && now <= icoDeadLine
) // ICO Reserve Supply checking: Don't touch the RESERVE of tokens when owner is selling
{
assert(amountInWei <= availableTokens);
uint256 balanceAfterTransfer = availableTokens.sub(amountInWei);
assert(balanceAfterTransfer >= icoReserveSupply); // We try to sell more than allowed during an ICO
}
//-----
balances[msg.sender] = balances[msg.sender].sub(amountInWei);
balances[toAddr] = balances[toAddr].add(amountInWei);
emit Transfer(msg.sender, toAddr, amountInWei);
return true;
}
allowance keyboard_arrow_up
transferFrom keyboard_arrow_up
Source Code
function transferFrom(
address fromAddr,
address toAddr,
uint256 amountInWei
) public returns (bool) {
if (amountInWei <= 0) return false;
if (allowances[fromAddr][msg.sender] < amountInWei) return false;
if (balances[fromAddr] < amountInWei) return false;
balances[fromAddr] = balances[fromAddr].sub(amountInWei);
balances[toAddr] = balances[toAddr].add(amountInWei);
allowances[fromAddr][msg.sender] = allowances[fromAddr][msg.sender].sub(
amountInWei
);
emit Transfer(fromAddr, toAddr, amountInWei);
return true;
}
approve keyboard_arrow_up
Requirements help
One or more of the following:
Source Code
function approve(address spender, uint256 amountInWei) public returns (bool) {
require((amountInWei == 0) || (allowances[msg.sender][spender] == 0));
allowances[msg.sender][spender] = amountInWei;
emit Approval(msg.sender, spender, amountInWei);
return true;
}
constructor keyboard_arrow_up
transferOwnership keyboard_arrow_up
Modifiers help
onlyOwner checks for the following:
Source Code
function transferOwnership(address newOwner)
public
onlyOwner // @param newOwner The address to transfer ownership to.
{
require(newOwner != address(0));
emit onOwnershipTransfered(owner, newOwner);
owner = newOwner;
}
changeAdminUser keyboard_arrow_up
changeIcoDeadLine keyboard_arrow_up
changeHardCap keyboard_arrow_up
isHardcapReached keyboard_arrow_up
pauseICO keyboard_arrow_up
unpauseICO keyboard_arrow_up
isPausedICO keyboard_arrow_up
destroyRemainingTokens keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyAdmin checks for the following:
icoFinished checks for the following:
icoNotPaused checks for the following:
Requirements help
Source Code
function destroyRemainingTokens()
public
onlyAdmin
icoFinished
icoNotPaused
returns (uint256)
{
require(msg.sender == owner && now > icoDeadLine);
address toAddr = 0x0000000000000000000000000000000000000000;
uint256 amountToBurn = balances[owner];
if (amountToBurn > icoReserveSupply) {
amountToBurn = amountToBurn.sub(icoReserveSupply);
}
balances[owner] = balances[owner].sub(amountToBurn);
balances[toAddr] = balances[toAddr].add(amountToBurn);
emit Transfer(msg.sender, toAddr, amountToBurn);
//Transfer(msg.sender, toAddr, amountToBurn);
return 1;
}
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.