Blockwell

Kryll

ERC20

This contract is an ERC20 token.

Name Kryll
Symbol KRL
Decimals 18
Total Supply 49,417,348 KRL

About link

Kryll (KRL) is a cryptocurrency and operates on the Ethereum platform. Kryll has a current supply of 49,417,348 with 31,688,781 in circulation. The last known price of Kryll is 0.22571556 USD and is down -0.30 over the last 24 hours. It is currently trading on 6 active market(s) with $44,100.01 traded over the last 24 hours. More information can be found at https://kryll.io/.

Stats

Public Functions 16
Event Types 5
Code Size 19,539 bytes

Events (5) 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

Transferable Event

Parameters help

UnTransferable Event

Parameters help

DECIMAL_CASES Constant

uint256 help
UNKNOWN VALUE

SALE Constant

uint256 help

TEAM Constant

uint256 help

ADVISORS Constant

uint256 help

SECURITY Constant

uint256 help

PRESS_MARKETING Constant

uint256 help

USER_ACQUISITION Constant

uint256 help

BOUNTY Constant

uint256 help

symbol Variable

string help

name Variable

string help

decimals Variable

uint8 help

sale_address Variable

address help

team_address Variable

address help

advisors_address Variable

address help

security_address Variable

address help

press_address Variable

address help

user_acq_address Variable

address help

bounty_address Variable

address help

initialDistributionDone Variable

bool help

transferable Variable

bool help

owner Variable

address help

whitelisted Variable

mapping(address => 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

transferOwnership keyboard_arrow_up

Parameters help

Name Type
newOwner
address help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function transferOwnership(address newOwner) public onlyOwner {
  require(newOwner != address(0));
  emit OwnershipTransferred(owner, newOwner);
  owner = newOwner;
}

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 balance) {
  return balances[_owner];
}

Parameters help

Name Type
_to
address help
_value
uint256 help

Properties

Visibility help public
Mutability help transaction

Modifiers help

canTransfert checks for the following:
Source Code
function transfer(address _to, uint256 _value)
  public
  canTransfert
  returns (bool)
{
  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

canTransfert checks for the following:
Source Code
function transferFrom(
  address _from,
  address _to,
  uint256 _value
) public canTransfert 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

canTransfert checks for the following:
Source Code
function approve(address _spender, uint256 _value)
  public
  canTransfert
  returns (bool)
{
  return super.approve(_spender, _value);
}

increaseApproval keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_addedValue
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

canTransfert checks for the following:
Source Code
function increaseApproval(address _spender, uint256 _addedValue)
  public
  canTransfert
  returns (bool success)
{
  return super.increaseApproval(_spender, _addedValue);
}

decreaseApproval keyboard_arrow_up

Parameters help

Name Type
_spender
address help
_subtractedValue
uint help

Properties

Visibility help public
Mutability help transaction

Modifiers help

canTransfert checks for the following:
Source Code
function decreaseApproval(address _spender, uint256 _subtractedValue)
  public
  canTransfert
  returns (bool success)
{
  return super.decreaseApproval(_spender, _subtractedValue);
}

allowTransfert keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function allowTransfert() public onlyOwner whenNotTransferable {
  transferable = true;
  emit Transferable();
}

restrictTransfert keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction
Source Code
function restrictTransfert() public onlyOwner whenTransferable {
  transferable = false;
  emit UnTransferable();
}

whitelist keyboard_arrow_up

Parameters help

Name Type
_address
address help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function whitelist(address _address) public onlyOwner {
  require(_address != 0x0);
  whitelisted[_address] = true;
}

restrict keyboard_arrow_up

Parameters help

Name Type
_address
address help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function restrict(address _address) public onlyOwner {
  require(_address != 0x0);
  whitelisted[_address] = false;
}

reset keyboard_arrow_up

Parameters help

Name Type
_saleAddrss
address help
_teamAddrss
address help
_advisorsAddrss
address help
_securityAddrss
address help
_pressAddrss
address help
_usrAcqAddrss
address help
_bountyAddrss
address help

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function reset(
  address _saleAddrss,
  address _teamAddrss,
  address _advisorsAddrss,
  address _securityAddrss,
  address _pressAddrss,
  address _usrAcqAddrss,
  address _bountyAddrss
) public onlyOwner {
  require(!initialDistributionDone);
  team_address = _teamAddrss;
  advisors_address = _advisorsAddrss;
  security_address = _securityAddrss;
  press_address = _pressAddrss;
  user_acq_address = _usrAcqAddrss;
  bounty_address = _bountyAddrss;
  sale_address = _saleAddrss;
}

distribute keyboard_arrow_up

Parameters help

This function has no parameters.

Properties

Visibility help public
Mutability help transaction

Requirements help

Source Code
function distribute() public onlyOwner {
  // Initialisation check
  require(!initialDistributionDone);
  require(
    sale_address != 0x0 &&
      team_address != 0x0 &&
      advisors_address != 0x0 &&
      security_address != 0x0 &&
      press_address != 0x0 &&
      user_acq_address != 0 &&
      bounty_address != 0x0
  );

  // Compute total supply
  totalSupply_ = SALE
  .add(TEAM)
  .add(ADVISORS)
  .add(SECURITY)
  .add(PRESS_MARKETING)
  .add(USER_ACQUISITION)
  .add(BOUNTY);

  // Distribute KRL Token
  balances[owner] = totalSupply_;
  emit Transfer(0x0, owner, totalSupply_);

  transfer(team_address, TEAM);
  transfer(advisors_address, ADVISORS);
  transfer(security_address, SECURITY);
  transfer(press_address, PRESS_MARKETING);
  transfer(user_acq_address, USER_ACQUISITION);
  transfer(bounty_address, BOUNTY);
  transfer(sale_address, SALE);
  initialDistributionDone = true;
  whitelist(sale_address); // Auto whitelist sale address
  whitelist(team_address); // Auto whitelist team address (vesting transfert)
}

setName keyboard_arrow_up

Parameters help

Name Type
_name
string help

Properties

Visibility help public
Mutability help transaction
Source Code
function setName(string _name) public onlyOwner {
  name = _name;
}

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.