A DeFi platform for automatic trustless crypto payments.
LGEWhitelisted (contracts/LGEWhitelisted.sol#6-154) contract sets array length with a user-controlled value:
- _lgeWhitelistRounds.push(WhitelistRound(durations[i],amountsMax[i])) (contracts/LGEWhitelisted.sol#66)
Do not allow array lengths to be set directly set; instead, opt to add values as needed. Otherwise, thoroughly review the contract to ensure a user-controlled variable cannot reach an array length assignment.
Additional information: link
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
LGEWhitelisted._applyLGEWhitelist(address,address,uint256) (contracts/LGEWhitelisted.sol#127-153) uses a dangerous strict equality:
- _lgeTimestamp == 0 && sender != _lgePairAddress && recipient == _lgePairAddress && amount > 0 (contracts/LGEWhitelisted.sol#131)
Don't use strict equality to determine if an account has enough Ether or tokens.
Additional information: link
EightPayToken.allowance(address,address).owner (contracts/EightPayToken.sol#88) shadows:
- Ownable.owner() (contracts/Ownable.sol#34-36) (function)
EightPayToken._approve(address,address,uint256).owner (contracts/EightPayToken.sol#196) shadows:
- Ownable.owner() (contracts/Ownable.sol#34-36) (function)
Rename the local variables that shadow another component.
Additional information: link
LGEWhitelisted.createLGEWhitelist(address,uint256[],uint256[]).pairAddress (contracts/LGEWhitelisted.sol#57) lacks a zero-check on :
- _lgePairAddress = pairAddress (contracts/LGEWhitelisted.sol#60)
Check that the address is not zero.
Additional information: link
LGEWhitelisted.getLGEWhitelistRound() (contracts/LGEWhitelisted.sol#107-121) uses timestamp for comparisons
Dangerous comparisons:
- _lgeTimestamp > 0 (contracts/LGEWhitelisted.sol#108)
- now <= wlCloseTimestampLast (contracts/LGEWhitelisted.sol#115)
LGEWhitelisted._applyLGEWhitelist(address,address,uint256) (contracts/LGEWhitelisted.sol#127-153) uses timestamp for comparisons
Dangerous comparisons:
- _lgeTimestamp == 0 && sender != _lgePairAddress && recipient == _lgePairAddress && amount > 0 (contracts/LGEWhitelisted.sol#131)
- wlRoundNumber > 0 (contracts/LGEWhitelisted.sol#139)
Avoid relying on block.timestamp.
Additional information: link
Context._msgData() (contracts/Context.sol#22-25) is never used and should be removed
SafeMath.div(uint256,uint256) (contracts/SafeMath.sol#96-98) is never used and should be removed
SafeMath.div(uint256,uint256,string) (contracts/SafeMath.sol#111-118) is never used and should be removed
SafeMath.mod(uint256,uint256) (contracts/SafeMath.sol#131-133) is never used and should be removed
SafeMath.mod(uint256,uint256,string) (contracts/SafeMath.sol#146-149) is never used and should be removed
SafeMath.mul(uint256,uint256) (contracts/SafeMath.sol#71-83) is never used and should be removed
Remove unused functions.
Additional information: link
Variable LGEWhitelisted._lgeWhitelistRounds (contracts/LGEWhitelisted.sol#16) is not in mixedCase
Variable LGEWhitelisted._lgeTimestamp (contracts/LGEWhitelisted.sol#18) is not in mixedCase
Variable LGEWhitelisted._lgePairAddress (contracts/LGEWhitelisted.sol#19) is not in mixedCase
Variable LGEWhitelisted._whitelister (contracts/LGEWhitelisted.sol#21) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Redundant expression "this (contracts/Context.sol#23)" inContext (contracts/Context.sol#13-26)
Remove redundant statements if they congest code but offer no value.
Additional information: link
Unable to find whitepaper link on the website
Unable to find token on CoinHunt
Additional information: link
Young tokens have high risks of scam / price dump / death
Last post in Twitter was more than 30 days ago
Unable to find Youtube account
Unable to find Discord account