HFuel Token Token Logo

HFUEL Token

About HFUEL

Listings

Token 4 years
CoinMarketCap 4 years
white paper

The Launchpad platform combined with the ERC-31337 protocol, will allow for The Launch Network team to accomplish multiple things that have not been possible in the past, first the KYC/Vetted projects by the team will be able to use our services to launch their token with no need to lock any tokens, instead, clients will use HFUEL to pay for the services with a “Pay to Play” model, a one-time payment in HFUEL that will take a percentage to feed the revenue splitter to incentivize the community of NFT holders and HNW stakeholders, another percentage of their tokens will go to the “Combustion Chamber” (Burn Tokens) hence the name HFUEL. The aim is to bring successful KYC projects to market through The Launch Network and also provide a secure launchpad for non-KYC projects that will in turn, also contribute to the profit-sharing opportunity. The launchpad will operate on a pay-to-play model where clients can pay a one-time fee to launch their project mitigating risk by avoiding the need to lock any tokens. The revenue generated by the launchpad services will then be redistributed to various avenues, including HNW stakeholders and launchpad NFT holders, creating a sustainable and integrated profit-sharing ecosystem. The launchpad revenue will be distributed as a 40/40/20 percent split, as follows: 40% to HNW (stakeholders 25%; liquidity 10%; marketing 5%); 40% to launchpad Lazarus Pit NFT holders; 20% to the “Combustion Chamber” and “Fuel Tank” - a burning & redistribution mechanism that will serve to reduce the circulating supply and reward HFUEL liquidity providers, thereby strengthening the price floor of HFUEL.

Social

Laser Scorebeta Last Audit: 2 March 2022

report
Token seems to be (relatively) fine. It still become a scam, but probability is moderate.

Anti-Scam

Links


Unable to find manual contract audit (e.g. Certik, PeckShield, Solidity...)

LiquidityLockedERC20.balanceOf(address) (contracts/LiquidityLockedERC20.sol#45-63) uses a dangerous strict equality:
- require(bool,string)(last.origin == tx.origin && last.blockNumber == block.number,Liquidity is locked) (contracts/LiquidityLockedERC20.sol#50)
Don't use strict equality to determine if an account has enough Ether or tokens.

Additional information: link

LiquidityLockedERC20.balanceOf(address) (contracts/LiquidityLockedERC20.sol#45-63) uses tx.origin for authorization: require(bool,string)(last.origin == tx.origin && last.blockNumber == block.number,Liquidity is locked) (contracts/LiquidityLockedERC20.sol#50)
Do not use tx.origin for authorization.

Additional information: link

Owned.transferOwnership(address).newOwner (contracts/Owned.sol#24) lacks a zero-check on :
- pendingOwner = newOwner (contracts/Owned.sol#26)
RootedToken.setMinter(address)._minter (contracts/RootedToken.sol#29) lacks a zero-check on :
- minter = _minter (contracts/RootedToken.sol#30)
Check that the address is not zero.

Additional information: link

Reentrancy in GatedERC20._transfer(address,address,uint256) (contracts/GatedERC20.sol#34-61):
External calls:
- fees = _transferGate.handleTransfer(msg.sender,sender,recipient,amount) (contracts/GatedERC20.sol#50)
State variables written after the call(s):
- _balanceOf[splitter] = _balanceOf[splitter].add(fees) (contracts/GatedERC20.sol#53)
- _balanceOf[sender] = _balanceOf[sender].sub(amount,ERC20: transfer amount exceeds balance) (contracts/GatedERC20.sol#58)
- _balanceOf[recipient] = _balanceOf[recipient].add(remaining) (contracts/GatedERC20.sol#59)
Apply the check-effects-interactions pattern.

Additional information: link

Reentrancy in GatedERC20._transfer(address,address,uint256) (contracts/GatedERC20.sol#34-61):
External calls:
- fees = _transferGate.handleTransfer(msg.sender,sender,recipient,amount) (contracts/GatedERC20.sol#50)
Event emitted after the call(s):
- Transfer(sender,splitter,fees) (contracts/GatedERC20.sol#54)
- Transfer(sender,recipient,remaining) (contracts/GatedERC20.sol#60)
Apply the check-effects-interactions pattern.

Additional information: link

Address.isContract(address) (contracts/Address.sol#25-34) uses assembly
- INLINE ASM (contracts/Address.sol#32)
Address._verifyCallResult(bool,bytes,string) (contracts/Address.sol#170-187) uses assembly
- INLINE ASM (contracts/Address.sol#179-182)
Do not use evm assembly.

Additional information: link

Address.functionCall(address,bytes) (contracts/Address.sol#78-80) is never used and should be removed
Address.functionCallWithValue(address,bytes,uint256) (contracts/Address.sol#103-105) is never used and should be removed
Address.functionDelegateCall(address,bytes) (contracts/Address.sol#152-154) is never used and should be removed
Address.functionDelegateCall(address,bytes,string) (contracts/Address.sol#162-168) is never used and should be removed
Address.functionStaticCall(address,bytes) (contracts/Address.sol#128-130) is never used and should be removed
Address.functionStaticCall(address,bytes,string) (contracts/Address.sol#138-144) is never used and should be removed
Address.sendValue(address,uint256) (contracts/Address.sol#52-58) is never used and should be removed
ERC20._setupDecimals(uint8) (contracts/ERC20.sol#243-245) is never used and should be removed
ERC20._transfer(address,address,uint256) (contracts/ERC20.sol#164-173) is never used and should be removed
SafeERC20.safeApprove(IERC20,address,uint256) (contracts/SafeERC20.sol#41-43) is never used and should be removed
SafeERC20.safeTransferFrom(IERC20,address,address,uint256) (contracts/SafeERC20.sol#30-32) is never used and should be removed
SafeMath.div(uint256,uint256) (contracts/SafeMath.sol#40-43) is never used and should be removed
SafeMath.div(uint256,uint256,string) (contracts/SafeMath.sol#45-50) is never used and should be removed
SafeMath.mod(uint256,uint256) (contracts/SafeMath.sol#52-55) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (contracts/SafeMath.sol#57-61) is never used and should be removed
SafeMath.mul(uint256,uint256) (contracts/SafeMath.sol#25-38) is never used and should be removed
Remove unused functions.

Additional information: link

Pragma version^0.7.4 (contracts/Address.sol#2) allows old versions
Pragma version^0.7.4 (contracts/ERC20.sol#2) allows old versions
Pragma version^0.7.4 (contracts/GatedERC20.sol#2) allows old versions
Pragma version^0.7.4 (contracts/IERC20.sol#2) allows old versions
Pragma version^0.7.4 (contracts/IGatedERC20.sol#2) allows old versions
Pragma version^0.7.4 (contracts/ILiquidityLockedERC20.sol#2) allows old versions
Pragma version^0.7.4 (contracts/IOwned.sol#2) allows old versions
Pragma version^0.7.4 (contracts/IPancakePair.sol#2) allows old versions
Pragma version^0.7.4 (contracts/IPancakeRouter01.sol#2) allows old versions
Pragma version^0.7.4 (contracts/IPancakeRouter02.sol#2) allows old versions
Pragma version^0.7.4 (contracts/ITokensRecoverable.sol#2) allows old versions
Pragma version^0.7.4 (contracts/ITransferGate.sol#2) allows old versions
Pragma version^0.7.4 (contracts/LiquidityLockedERC20.sol#2) allows old versions
Pragma version^0.7.4 (contracts/Owned.sol#2) allows old versions
Pragma version^0.7.4 (contracts/RootedToken.sol#2) allows old versions
Pragma version^0.7.4 (contracts/SafeERC20.sol#2) allows old versions
Pragma version^0.7.4 (contracts/SafeMath.sol#2) allows old versions
Pragma version^0.7.4 (contracts/TokensRecoverable.sol#2) allows old versions
solc-0.7.4 is not recommended for deployment
Deploy with any of the following Solidity versions: 0.5.16 - 0.5.17, 0.6.11 - 0.6.12, 0.7.5 - 0.7.6 Use a simple pragma version that allows any of these versions. Consider using the latest version of Solidity for testing.

Additional information: link

Low level call in Address.sendValue(address,uint256) (contracts/Address.sol#52-58):
- (success) = recipient.call{value: amount}() (contracts/Address.sol#56)
Low level call in Address.functionCallWithValue(address,bytes,uint256,string) (contracts/Address.sol#113-120):
- (success,returndata) = target.call{value: value}(data) (contracts/Address.sol#118)
Low level call in Address.functionStaticCall(address,bytes,string) (contracts/Address.sol#138-144):
- (success,returndata) = target.staticcall(data) (contracts/Address.sol#142)
Low level call in Address.functionDelegateCall(address,bytes,string) (contracts/Address.sol#162-168):
- (success,returndata) = target.delegatecall(data) (contracts/Address.sol#166)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence

Additional information: link

Variable ERC20._balanceOf (contracts/ERC20.sol#41) is not in mixedCase
Parameter GatedERC20.setTransferGate(ITransferGate)._transferGate (contracts/GatedERC20.sol#29) is not in mixedCase
Function IPancakePair.DOMAIN_SEPARATOR() (contracts/IPancakePair.sol#19) is not in mixedCase
Function IPancakePair.PERMIT_TYPEHASH() (contracts/IPancakePair.sol#20) is not in mixedCase
Function IPancakePair.MINIMUM_LIQUIDITY() (contracts/IPancakePair.sol#37) is not in mixedCase
Function IPancakeRouter01.WETH() (contracts/IPancakeRouter01.sol#6) is not in mixedCase
Parameter LiquidityLockedERC20.setLiquidityLock(IPancakePair,bool)._liquidityPair (contracts/LiquidityLockedERC20.sol#32) is not in mixedCase
Parameter LiquidityLockedERC20.setLiquidityLock(IPancakePair,bool)._locked (contracts/LiquidityLockedERC20.sol#32) is not in mixedCase
Parameter LiquidityLockedERC20.setLiquidityController(address,bool)._liquidityController (contracts/LiquidityLockedERC20.sol#39) is not in mixedCase
Parameter LiquidityLockedERC20.setLiquidityController(address,bool)._canControl (contracts/LiquidityLockedERC20.sol#39) is not in mixedCase
Parameter RootedToken.setMinter(address)._minter (contracts/RootedToken.sol#29) is not in mixedCase
Parameter RootedToken.allowBalance(bool)._transferFrom (contracts/RootedToken.sol#39) is not in mixedCase
Follow the Solidity naming convention.

Additional information: link

Variable IPancakeRouter01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (contracts/IPancakeRouter01.sol#11) is too similar to IPancakeRouter01.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (contracts/IPancakeRouter01.sol#12)
Prevent variables from having similar names.

Additional information: link

approve(address,uint256) should be declared external:
- ERC20.approve(address,uint256) (contracts/ERC20.sol#87-90)
increaseAllowance(address,uint256) should be declared external:
- ERC20.increaseAllowance(address,uint256) (contracts/ERC20.sol#126-129)
decreaseAllowance(address,uint256) should be declared external:
- ERC20.decreaseAllowance(address,uint256) (contracts/ERC20.sol#145-148)
setTransferGate(ITransferGate) should be declared external:
- GatedERC20.setTransferGate(ITransferGate) (contracts/GatedERC20.sol#29-32)
burn(uint256) should be declared external:
- GatedERC20.burn(uint256) (contracts/GatedERC20.sol#63-66)
setLiquidityLock(IPancakePair,bool) should be declared external:
- LiquidityLockedERC20.setLiquidityLock(IPancakePair,bool) (contracts/LiquidityLockedERC20.sol#32-37)
setLiquidityController(address,bool) should be declared external:
- LiquidityLockedERC20.setLiquidityController(address,bool) (contracts/LiquidityLockedERC20.sol#39-42)
transferOwnership(address) should be declared external:
- Owned.transferOwnership(address) (contracts/Owned.sol#24-27)
claimOwnership() should be declared external:
- Owned.claimOwnership() (contracts/Owned.sol#29-35)
setMinter(address) should be declared external:
- RootedToken.setMinter(address) (contracts/RootedToken.sol#29-31)
mint(uint256) should be declared external:
- RootedToken.mint(uint256) (contracts/RootedToken.sol#33-37)
recoverTokens(IERC20) should be declared external:
- TokensRecoverable.recoverTokens(IERC20) (contracts/TokensRecoverable.sol#18-22)
Use the external attribute for functions never called from the contract.

Additional information: link

Holders:


Token is deployed only at one blockchain


Token has only one trading pair

Contract has 5% buy tax and 0% sell tax.
Taxes are low and contract ownership is renounced.


Unable to find PancakeSwap trading pair to compute liquidity.


Unable to find PancakeSwap trading pair to compute number of swaps.


Last post in Twitter was more than 30 days ago


Unable to find Blog account (Reddit or Medium)


Unable to find Discord account


Unable to find token contract audit


Unable to find audit link on the website


Unable to find token on CoinHunt

Additional information: link


Unable to find code repository for the project


Young tokens have high risks of price dump / death


Young tokens have high risks of scam / price dump / death


Young tokens have high risks of scam / price dump / death


Young tokens have high risks of price dump / death


Young tokens have high risks of price dump / death


Token has relatively low CoinGecko rank

Price for HFUEL

News for HFUEL