$GWS is a decentralized finance (DeFi) token on the Binance Smart Chain (BSC), with guerrilla marketing and a good cause aiming to save the whales.
GreenWhaleS._swapContractToken(bool) (GreenWhaleS.sol#284-323) sends eth to arbitrary user
Dangerous calls:
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
Ensure that an arbitrary user cannot withdraw unauthorized funds.
Additional information: link
Reentrancy in GreenWhaleS._LimitlessFonctionTransfer(address,address,uint256) (GreenWhaleS.sol#193-232):
External calls:
- _swapContractToken(false) (GreenWhaleS.sol#215)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
External calls sending eth:
- _swapContractToken(false) (GreenWhaleS.sol#215)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
State variables written after the call(s):
- _balances[sender] -= amount (GreenWhaleS.sol#224)
- _balances[address(this)] += contractToken (GreenWhaleS.sol#226)
- _balances[recipient] += taxedAmount (GreenWhaleS.sol#229)
- _circulatingSupply -= tokensToBeBurnt (GreenWhaleS.sol#228)
Reentrancy in GreenWhaleS._taxedTransfer(address,address,uint256) (GreenWhaleS.sol#131-172):
External calls:
- _swapContractToken(false) (GreenWhaleS.sol#155)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
External calls sending eth:
- _swapContractToken(false) (GreenWhaleS.sol#155)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
State variables written after the call(s):
- _balances[sender] -= amount (GreenWhaleS.sol#164)
- _balances[address(this)] += contractToken (GreenWhaleS.sol#166)
- _balances[recipient] += taxedAmount (GreenWhaleS.sol#169)
- _circulatingSupply -= tokensToBeBurnt (GreenWhaleS.sol#168)
Apply the check-effects-interactions pattern.
Additional information: link
GreenWhaleS.LiquidityRelease() (GreenWhaleS.sol#433-447) ignores return value by liquidityToken.transfer(msg.sender,amount) (GreenWhaleS.sol#445)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.
Additional information: link
Too many vulnerabilities (Unchecked transfer, Reentrancy vulnerability, etc.). High risk of a scam. DYOR & manual audit are advised.
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
GreenWhaleS._swapContractToken(bool).sent (GreenWhaleS.sol#321) is written in both
(sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
sent = true (GreenWhaleS.sol#322)
Fix or remove the writes.
Additional information: link
Combination 1: Reentrancy vulnerabilities + Functions that send Ether to arbitraty destination. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
Combination 2: Unchecked transfer + Functions that send Ether to arbitraty destination. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
Combination 3: Reentrancy vulnerabilities + Unchecked transfer vulnerability. Usual for scams. May be justified by some complex mechanics (e.g. rebase, reflections). DYOR & manual audit are advised.
GreenWhaleS.allowance(address,address)._owner (GreenWhaleS.sol#484) shadows:
- Ownable._owner (Libraries.sol#47) (state variable)
GreenWhaleS._approve(address,address,uint256).owner (GreenWhaleS.sol#492) shadows:
- Ownable.owner() (Libraries.sol#63-65) (function)
Rename the local variables that shadow another component.
Additional information: link
GreenWhaleS.SetTaxes(uint256,uint256,uint256,uint256,uint256,uint256) (GreenWhaleS.sol#262-274) performs a multiplication on the result of a division:
-maxTax = 3 * (TAX_DENOMINATOR / MAXTAXDENOMINATOR) (GreenWhaleS.sol#263)
GreenWhaleS._swapContractToken(bool) (GreenWhaleS.sol#284-323) performs a multiplication on the result of a division:
-tokenToSwap = _balances[_pancakePairAddress] * swapTreshold / 1000 (GreenWhaleS.sol#288)
-tokenForLiquidity = (tokenToSwap * liquidityTax) / totalTax (GreenWhaleS.sol#301-303)
GreenWhaleS._swapContractToken(bool) (GreenWhaleS.sol#284-323) performs a multiplication on the result of a division:
-LiqHalf = tokenForLiquidity / 2 (GreenWhaleS.sol#307)
-liqBNB = (newBNB * LiqHalf) / swapToken (GreenWhaleS.sol#317)
Consider ordering multiplication before division.
Additional information: link
GreenWhaleS._addLiquidity(uint256,uint256) (GreenWhaleS.sol#341-351) ignores return value by _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
Ensure that all the return values of the function calls are used.
Additional information: link
GreenWhaleS.setSwapTreshold(uint256) (GreenWhaleS.sol#249-252) should emit an event for:
- swapTreshold = newSwapTresholdPermille (GreenWhaleS.sol#251)
GreenWhaleS.SetOverLiquifiedTreshold(uint256) (GreenWhaleS.sol#255-258) should emit an event for:
- overLiquifyTreshold = newOverLiquifyTresholdPermille (GreenWhaleS.sol#257)
Emit an event for critical parameter changes.
Additional information: link
GreenWhaleS.ChangeMarketingWallet(address).newWallet (GreenWhaleS.sol#65) lacks a zero-check on :
- marketingWallet = newWallet (GreenWhaleS.sol#67)
Check that the address is not zero.
Additional information: link
Reentrancy in GreenWhaleS._swapContractToken(bool) (GreenWhaleS.sol#284-323):
External calls:
- _swapTokenForBNB(swapToken) (GreenWhaleS.sol#312)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- _addLiquidity(LiqHalf,liqBNB) (GreenWhaleS.sol#318)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
External calls sending eth:
- _addLiquidity(LiqHalf,liqBNB) (GreenWhaleS.sol#318)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
State variables written after the call(s):
- _addLiquidity(LiqHalf,liqBNB) (GreenWhaleS.sol#318)
- _allowances[owner][spender] = amount (GreenWhaleS.sol#496)
Reentrancy in GreenWhaleS.constructor() (GreenWhaleS.sol#82-99):
External calls:
- _pancakePairAddress = IPancakeFactory(_pancakeRouter.factory()).createPair(address(this),_pancakeRouter.WETH()) (GreenWhaleS.sol#90)
State variables written after the call(s):
- excludedFromFees[msg.sender] = true (GreenWhaleS.sol#96)
- excludedFromFees[PancakeRouter] = true (GreenWhaleS.sol#97)
- excludedFromFees[address(this)] = true (GreenWhaleS.sol#98)
- isAMM[_pancakePairAddress] = true (GreenWhaleS.sol#91)
- marketingWallet = msg.sender (GreenWhaleS.sol#94)
Reentrancy in GreenWhaleS.transferFrom(address,address,uint256) (GreenWhaleS.sol#500-508):
External calls:
- _transfer(sender,recipient,amount) (GreenWhaleS.sol#501)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
External calls sending eth:
- _transfer(sender,recipient,amount) (GreenWhaleS.sol#501)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
State variables written after the call(s):
- _approve(sender,msg.sender,currentAllowance - amount) (GreenWhaleS.sol#506)
- _allowances[owner][spender] = amount (GreenWhaleS.sol#496)
Apply the check-effects-interactions pattern.
Additional information: link
Reentrancy in GreenWhaleS.LiquidityRelease() (GreenWhaleS.sol#433-447):
External calls:
- liquidityToken.transfer(msg.sender,amount) (GreenWhaleS.sol#445)
Event emitted after the call(s):
- OnReleaseLP() (GreenWhaleS.sol#446)
Reentrancy in GreenWhaleS._LimitlessFonctionTransfer(address,address,uint256) (GreenWhaleS.sol#193-232):
External calls:
- _swapContractToken(false) (GreenWhaleS.sol#215)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
External calls sending eth:
- _swapContractToken(false) (GreenWhaleS.sol#215)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
Event emitted after the call(s):
- Transfer(sender,recipient,taxedAmount) (GreenWhaleS.sol#231)
Reentrancy in GreenWhaleS._swapContractToken(bool) (GreenWhaleS.sol#284-323):
External calls:
- _swapTokenForBNB(swapToken) (GreenWhaleS.sol#312)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- _addLiquidity(LiqHalf,liqBNB) (GreenWhaleS.sol#318)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
External calls sending eth:
- _addLiquidity(LiqHalf,liqBNB) (GreenWhaleS.sol#318)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
Event emitted after the call(s):
- Approval(owner,spender,amount) (GreenWhaleS.sol#497)
- _addLiquidity(LiqHalf,liqBNB) (GreenWhaleS.sol#318)
Reentrancy in GreenWhaleS._taxedTransfer(address,address,uint256) (GreenWhaleS.sol#131-172):
External calls:
- _swapContractToken(false) (GreenWhaleS.sol#155)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
External calls sending eth:
- _swapContractToken(false) (GreenWhaleS.sol#155)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
Event emitted after the call(s):
- Transfer(sender,recipient,taxedAmount) (GreenWhaleS.sol#171)
Reentrancy in GreenWhaleS.transferFrom(address,address,uint256) (GreenWhaleS.sol#500-508):
External calls:
- _transfer(sender,recipient,amount) (GreenWhaleS.sol#501)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- _pancakeRouter.swapExactTokensForETHSupportingFeeOnTransferTokens(amount,0,path,address(this),block.timestamp) (GreenWhaleS.sol#331-338)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
External calls sending eth:
- _transfer(sender,recipient,amount) (GreenWhaleS.sol#501)
- _pancakeRouter.addLiquidityETH{value: bnbamount}(address(this),tokenamount,0,0,address(this),block.timestamp) (GreenWhaleS.sol#343-350)
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
Event emitted after the call(s):
- Approval(owner,spender,amount) (GreenWhaleS.sol#497)
- _approve(sender,msg.sender,currentAllowance - amount) (GreenWhaleS.sol#506)
Apply the check-effects-interactions pattern.
Additional information: link
GreenWhaleS._transfer(address,address,uint256) (GreenWhaleS.sol#110-128) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(LaunchTimestamp > 0,trading not yet enabled) (GreenWhaleS.sol#120)
- require(bool,string)(LaunchTimestamp > 0,trading not yet enabled) (GreenWhaleS.sol#125)
GreenWhaleS._taxedTransfer(address,address,uint256) (GreenWhaleS.sol#131-172) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(senderBalance >= amount,Transfer exceeds balance) (GreenWhaleS.sol#134)
- require(bool,string)((recipientBalance + amount) <= InitialSupply / 400,Wallet contain more than 0.25% Total Supply) (GreenWhaleS.sol#135)
- block.timestamp < LaunchTimestamp + SellTaxDuration (GreenWhaleS.sol#143)
- block.timestamp < LaunchTimestamp + BuyTaxDuration (GreenWhaleS.sol#149)
GreenWhaleS._feelessTransfer(address,address,uint256) (GreenWhaleS.sol#185-191) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(senderBalance >= amount,Transfer exceeds balance) (GreenWhaleS.sol#187)
GreenWhaleS._LimitlessFonctionTransfer(address,address,uint256) (GreenWhaleS.sol#193-232) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(senderBalance >= amount,Transfer exceeds balance) (GreenWhaleS.sol#195)
- block.timestamp < LaunchTimestamp + SellTaxDuration (GreenWhaleS.sol#203)
- block.timestamp < LaunchTimestamp + BuyTaxDuration (GreenWhaleS.sol#209)
GreenWhaleS.isOverLiquified() (GreenWhaleS.sol#277-279) uses timestamp for comparisons
Dangerous comparisons:
- _balances[_pancakePairAddress] > _circulatingSupply * overLiquifyTreshold / 1000 (GreenWhaleS.sol#278)
GreenWhaleS.getLiquidityReleaseTimeInSeconds() (GreenWhaleS.sol#356-360) uses timestamp for comparisons
Dangerous comparisons:
- block.timestamp < _liquidityUnlockTime (GreenWhaleS.sol#357)
GreenWhaleS.SetupEnableTrading() (GreenWhaleS.sol#404-408) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(LaunchTimestamp == 0,AlreadyLaunched) (GreenWhaleS.sol#405)
GreenWhaleS._prolongLiquidityLock(uint256) (GreenWhaleS.sol#425-430) uses timestamp for comparisons
Dangerous comparisons:
- require(bool)(newUnlockTime > _liquidityUnlockTime) (GreenWhaleS.sol#427)
GreenWhaleS.LiquidityRelease() (GreenWhaleS.sol#433-447) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(block.timestamp >= _liquidityUnlockTime,Not yet unlocked) (GreenWhaleS.sol#435)
Avoid relying on block.timestamp.
Additional information: link
solc-0.8.9 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 GreenWhaleS._swapContractToken(bool) (GreenWhaleS.sol#284-323):
- (sent) = marketingWallet.call{value: address(this).balance}() (GreenWhaleS.sol#321)
Avoid low-level calls. Check the call success. If the call is meant for a contract, check for code existence
Additional information: link
Function GreenWhaleS.ChangeMarketingWallet(address) (GreenWhaleS.sol#65-68) is not in mixedCase
Function GreenWhaleS._LimitlessFonctionTransfer(address,address,uint256) (GreenWhaleS.sol#193-232) is not in mixedCase
Function GreenWhaleS.SetOverLiquifiedTreshold(uint256) (GreenWhaleS.sol#255-258) is not in mixedCase
Function GreenWhaleS.SetTaxes(uint256,uint256,uint256,uint256,uint256,uint256) (GreenWhaleS.sol#262-274) is not in mixedCase
Function GreenWhaleS.SetAMM(address,bool) (GreenWhaleS.sol#368-371) is not in mixedCase
Parameter GreenWhaleS.SetAMM(address,bool).AMM (GreenWhaleS.sol#368) is not in mixedCase
Parameter GreenWhaleS.SetAMM(address,bool).Add (GreenWhaleS.sol#368) is not in mixedCase
Function GreenWhaleS.SwitchManualSwap(bool) (GreenWhaleS.sol#375-377) is not in mixedCase
Function GreenWhaleS.SwapContractToken() (GreenWhaleS.sol#379-381) is not in mixedCase
Function GreenWhaleS.ExcludeAccountFromFees(address,bool) (GreenWhaleS.sol#384-388) is not in mixedCase
Function GreenWhaleS.ExcludedFromLimit(address,bool) (GreenWhaleS.sol#393-397) is not in mixedCase
Function GreenWhaleS.SetupEnableTrading() (GreenWhaleS.sol#404-408) is not in mixedCase
Function GreenWhaleS.LockLiquidityForSeconds(uint256) (GreenWhaleS.sol#421-423) is not in mixedCase
Function GreenWhaleS.LiquidityRelease() (GreenWhaleS.sol#433-447) is not in mixedCase
Parameter GreenWhaleS.allowance(address,address)._owner (GreenWhaleS.sol#484) is not in mixedCase
Constant GreenWhaleS._name (GreenWhaleS.sol#32) is not in UPPER_CASE_WITH_UNDERSCORES
Constant GreenWhaleS._symbol (GreenWhaleS.sol#33) is not in UPPER_CASE_WITH_UNDERSCORES
Constant GreenWhaleS._decimals (GreenWhaleS.sol#34) is not in UPPER_CASE_WITH_UNDERSCORES
Constant GreenWhaleS.InitialSupply (GreenWhaleS.sol#35) is not in UPPER_CASE_WITH_UNDERSCORES
Constant GreenWhaleS.DefaultLiquidityLockTime (GreenWhaleS.sol#37) is not in UPPER_CASE_WITH_UNDERSCORES
Constant GreenWhaleS.PancakeRouter (GreenWhaleS.sol#41) is not in UPPER_CASE_WITH_UNDERSCORES
Variable GreenWhaleS.LaunchTimestamp (GreenWhaleS.sol#403) is not in mixedCase
Variable GreenWhaleS._liquidityUnlockTime (GreenWhaleS.sol#413) is not in mixedCase
Variable GreenWhaleS.LPReleaseLimitedTo20Percent (GreenWhaleS.sol#414) is not in mixedCase
Function IPancakeRouter.WETH() (Libraries.sol#42) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
ChangeMarketingWallet(address) should be declared external:
- GreenWhaleS.ChangeMarketingWallet(address) (GreenWhaleS.sol#65-68)
setSwapTreshold(uint256) should be declared external:
- GreenWhaleS.setSwapTreshold(uint256) (GreenWhaleS.sol#249-252)
SetOverLiquifiedTreshold(uint256) should be declared external:
- GreenWhaleS.SetOverLiquifiedTreshold(uint256) (GreenWhaleS.sol#255-258)
SetTaxes(uint256,uint256,uint256,uint256,uint256,uint256) should be declared external:
- GreenWhaleS.SetTaxes(uint256,uint256,uint256,uint256,uint256,uint256) (GreenWhaleS.sol#262-274)
getLiquidityReleaseTimeInSeconds() should be declared external:
- GreenWhaleS.getLiquidityReleaseTimeInSeconds() (GreenWhaleS.sol#356-360)
getBurnedTokens() should be declared external:
- GreenWhaleS.getBurnedTokens() (GreenWhaleS.sol#361-363)
SetAMM(address,bool) should be declared external:
- GreenWhaleS.SetAMM(address,bool) (GreenWhaleS.sol#368-371)
SwitchManualSwap(bool) should be declared external:
- GreenWhaleS.SwitchManualSwap(bool) (GreenWhaleS.sol#375-377)
SwapContractToken() should be declared external:
- GreenWhaleS.SwapContractToken() (GreenWhaleS.sol#379-381)
ExcludeAccountFromFees(address,bool) should be declared external:
- GreenWhaleS.ExcludeAccountFromFees(address,bool) (GreenWhaleS.sol#384-388)
ExcludedFromLimit(address,bool) should be declared external:
- GreenWhaleS.ExcludedFromLimit(address,bool) (GreenWhaleS.sol#393-397)
SetupEnableTrading() should be declared external:
- GreenWhaleS.SetupEnableTrading() (GreenWhaleS.sol#404-408)
limitLiquidityReleaseTo20Percent() should be declared external:
- GreenWhaleS.limitLiquidityReleaseTo20Percent() (GreenWhaleS.sol#417-419)
LockLiquidityForSeconds(uint256) should be declared external:
- GreenWhaleS.LockLiquidityForSeconds(uint256) (GreenWhaleS.sol#421-423)
LiquidityRelease() should be declared external:
- GreenWhaleS.LiquidityRelease() (GreenWhaleS.sol#433-447)
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (Libraries.sol#82-85)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (Libraries.sol#91-95)
Use the external attribute for functions never called from the contract.
Additional information: link
Unable to find whitepaper link on the website
Unable to find token on CoinGecko
Additional information: link
Token was delisted (assigned to inactive / untracked listing) from CoinMarketCap
Additional information: link
Unable to find token on CoinHunt
Additional information: link
Unable to find code repository for the project
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 scam / price dump / death
Token has no active CoinGecko listing / rank
Token has no active CoinMarketCap listing / rank
Last post in Twitter was more than 30 days ago
Unable to find Blog account (Reddit or Medium)
Unable to find Discord account