ERC20
This contract is an ERC20 token.
Name
YOU Chain
Symbol
YOU
Decimals
18
Total Supply
2,856,000,000 YOU
About link
YOU COIN (YOU) is a cryptocurrency and operates on the Ethereum platform. YOU COIN has a current supply of 2,856,000,000 with 556,120,198.410192 in circulation. The last known price of YOU COIN is 0.00437509 USD and is down -2.99 over the last 24 hours. It is currently trading on 3 active market(s) with $203,438.32 traded over the last 24 hours. More information can be found at http://youchain.cc/.
Stats
Public Functions
11
Event Types
3
Code Size
12,274 bytes
Constants (16) keyboard_arrow_up
State Variables (7) 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));
emit OwnershipTransferred(owner, newOwner);
owner = newOwner;
}
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]);
// SafeMath.sub will throw if there is not enough balance.
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, 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;
}
decreaseApproval keyboard_arrow_up
Source Code
function decreaseApproval(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;
}
releaseAngelFirstVested keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyOwner checks for the following:
Requirements help
Source Code
function releaseAngelFirstVested() public onlyOwner {
require(!angelFirstVested && now >= angelVestingGrant.start);
uint256 angelFirstSupplyBalance = ANGEL_SUPPLY.sub(ANGEL_SUPPLY_VESTING);
totalSupply = totalSupply.add(angelFirstSupplyBalance);
balances[angelVestingGrant.beneficiary] = angelFirstSupplyBalance;
angelFirstVested = true;
emit Transfer(
address(0),
angelVestingGrant.beneficiary,
angelFirstSupplyBalance
);
}
releaseAngelVested 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.
internal YOUToken.makeGrant keyboard_arrow_up
Parameters help
Source Code
function makeGrant(
address _beneficiary,
uint256 _start,
uint256 _duration,
uint256 _amount,
uint8 _releaseCount
) internal pure returns (VestingGrant) {
return
VestingGrant({
beneficiary: _beneficiary,
start: _start,
duration: _duration,
amount: _amount,
transfered: 0,
releaseCount: _releaseCount
});
}
internal YOUToken.releasableAmount keyboard_arrow_up
Source Code
function releasableAmount(uint256 time, VestingGrant grant)
internal
pure
returns (uint256)
{
if (grant.amount == grant.transfered) {
return 0;
}
uint256 amountPerRelease = grant.amount.div(grant.releaseCount);
uint256 amount = amountPerRelease.mul(
(time.sub(grant.start)).div(grant.duration)
);
if (amount > grant.amount) {
amount = grant.amount;
}
amount = amount.sub(grant.transfered);
return amount;
}
internal YOUToken.releaseVestingGrant keyboard_arrow_up
Source Code
function releaseVestingGrant(VestingGrant storage grant) internal {
uint256 amount = releasableAmount(now, grant);
require(amount > 0);
grant.transfered = grant.transfered.add(amount);
totalSupply = totalSupply.add(amount);
balances[grant.beneficiary] = balances[grant.beneficiary].add(amount);
emit Transfer(address(0), grant.beneficiary, amount);
}