Invictus Hyperion
ERC20
This contract is an ERC20 token.
Name
Invictus Hyperion
Symbol
IHF
Decimals
18
Total Supply
121,335,657 IHF
About
link
Invictus Hyperion Fund (IHF) is a cryptocurrency token and operates on the Ethereum platform. Invictus Hyperion Fund has a current supply of 121,335,657.374 with 119,894,751.568 in circulation. The last known price of Invictus Hyperion Fund is $0.140024 USD and is down -5.50% over the last 24 hours. It is currently trading on 5 active market(s) with $1,382.33 traded over the last 24 hours. More information can be found at https://invictuscapital.com/hyperion.
Stats
Public Functions
19
Event Types
2
Code Size
12,546 bytes
Library Use
Uses SafeMath for uint256.
Events (2) keyboard_arrow_up
Functions
totalSupply keyboard_arrow_up
balanceOf keyboard_arrow_up
transfer keyboard_arrow_up
Modifiers help
isTradeable checks for the following:
One or more of the following:
-
vestingContract
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
- ORtradeable must be true
Requirements help
Source Code
function transfer(address _to, uint256 _value) isTradeable public returns (bool success) {
return super.transfer(_to, _value);
}
allowance keyboard_arrow_up
transferFrom keyboard_arrow_up
Modifiers help
isTradeable checks for the following:
One or more of the following:
-
vestingContract
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
- ORtradeable must be true
Requirements help
Source Code
function transferFrom(address _from, address _to, uint256 _value) isTradeable public returns (bool success) {
return super.transferFrom(_from, _to, _value);
}
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;
}
setVestingContract keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function setVestingContract(address vestingContractInput) external onlyFundWallets {
require(!vestingSet); // can only be called once
require(vestingContractInput != address(0));
vestingContract = vestingContractInput;
vestingSet = true;
}
batchAllocate keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function batchAllocate(address[] participants, uint256[] values) external onlyFundWallets returns(uint256) {
require(block.number < fundingEndBlock);
uint256 i = 0;
while (i < participants.length) {
allocateTokens(participants[i], values[i]);
i++;
}
return(i);
}
adjustBalance keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
vestingSet must be true
Source Code
function adjustBalance(address participant) external onlyFundWallets {
require(vestingSet);
require(block.number < fundingEndBlock);
uint256 amountTokens = balances[participant];
uint256 developmentAllocation = amountTokens.mul(25641025641025641).div(1000000000000000000);
uint256 removeTokens = amountTokens.add(developmentAllocation);
totalSupply_ = totalSupply_.sub(removeTokens);
balances[participant] = 0;
balances[vestingContract] = balances[vestingContract].sub(developmentAllocation);
emit Transfer(participant, address(0), amountTokens);
emit Transfer(vestingContract, address(0), developmentAllocation);
}
changeFundWallet1 keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function changeFundWallet1(address newFundWallet) external onlyFundWallets {
require(newFundWallet != address(0));
fundWallet1 = newFundWallet;
}
changeFundWallet2 keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function changeFundWallet2(address newFundWallet) external onlyFundWallets {
require(newFundWallet != address(0));
fundWallet2 = newFundWallet;
}
updateFundingEndBlock keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function updateFundingEndBlock(uint256 newFundingEndBlock) external onlyFundWallets {
require(block.number < fundingEndBlock);
require(block.number < newFundingEndBlock);
fundingEndBlock = newFundingEndBlock;
}
enableTrading keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function enableTrading() external onlyFundWallets {
require(block.number > fundingEndBlock);
tradeable = true;
}
constructor keyboard_arrow_up
claimTokens keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function claimTokens(address _token) external onlyFundWallets {
require(_token != address(0));
ERC20Basic token = ERC20Basic(_token);
uint256 balance = token.balanceOf(this);
token.transfer(fundWallet1, balance);
}
removeEth keyboard_arrow_up
Parameters help
This function has no parameters.
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Source Code
function removeEth() external onlyFundWallets {
fundWallet1.transfer(address(this).balance);
}
burn keyboard_arrow_up
Modifiers help
onlyFundWallets checks for the following:
One or more of the following:
-
fundWallet2
must be equal to
the sender's address
- OR
fundWallet1
must be equal to
the sender's address
Requirements help
Source Code
function burn(uint256 _value) external onlyFundWallets {
require(balances[msg.sender] >= _value);
balances[msg.sender] = balances[msg.sender].sub(_value);
balances[0x0] = balances[0x0].add(_value);
totalSupply_ = totalSupply_.sub(_value);
emit Transfer(msg.sender, 0x0, _value);
}