Ultiledger
ERC20
This contract is an ERC20 token.
Name
Ultiledger
Symbol
ULT
Decimals
18
Total Supply
4,500,000,000 ULT
About
link
description
Launched in Sep 2018, Ultilegder describes itself as an open-source global self-financing blockchain protocol that obtains high-level consensus and co-governance from its communities.
Ultiledger aims to build an economic and financial ecosystem based on token 'ULT' to help any organization that needs to build trust at a low cost and construct a distributed financial book and accounting system with bank-grade security. It plans to offer zero-cost transaction settlement, improved security, privacy, efficiency, and capital availability through a combination of main chain and sub-chains.
Ultiledger HQ is based in Shanghai. As of Sep 2019, the Ultiledger main chain test is scheduled for Q3 of 2019. For more information, visit https://www.ultiledger.io/
Stats
Public Functions
8
Event Types
2
Code Size
8,141 bytes
Events (2) keyboard_arrow_up
Functions
totalSupply keyboard_arrow_up
balanceOf keyboard_arrow_up
transfer keyboard_arrow_up
Requirements help
Source Code
function transfer(address _to, uint256 _value) public returns (bool) {
require(_to != address(0));
require(_value <= balances[msg.sender]);
balances[msg.sender] = balances[msg.sender].sub(_value);
balances[_to] = balances[_to].add(_value);
emit Transfer(msg.sender, _to, _value);
return true;
}
allowance keyboard_arrow_up
transferFrom keyboard_arrow_up
Requirements help
Source Code
function transferFrom(
address _from,
address _to,
uint256 _value
)
public
returns (bool)
{
require(_to != address(0));
require(_value <= balances[_from]);
require(_value <= allowed[_from][msg.sender]);
balances[_from] = balances[_from].sub(_value);
balances[_to] = balances[_to].add(_value);
allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
emit Transfer(_from, _to, _value);
return true;
}
approve keyboard_arrow_up
Source Code
function approve(address _spender, uint256 _value) public returns (bool) {
allowed[msg.sender][_spender] = _value;
emit Approval(msg.sender, _spender, _value);
return true;
}
increaseApproval keyboard_arrow_up
Source Code
function increaseApproval(
address _spender,
uint _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;
}
decreaseApproval keyboard_arrow_up
Source Code
function decreaseApproval(
address _spender,
uint _subtractedValue
)
public
returns (bool)
{
uint 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;
}