EggPlus provides a decentralized financial asset that rewards holders with a sustainable fixed compound interest model by using its unique EAP protocol.
EggPlus Auto-Staking Protocol (EAP) is a new financial instrument, which makes staking easier, more efficient and also provides the highest stable cryptocurrency return for $EGGPLUS holders
A simple and safe way to get paid. When purchasing of $EGGPLUS, it will be auto-staked and compounded in your wallet, no transferring of token to website or claiming proceeds manually. You just need to wait for the $EGGPLUS reward provided by EAP. It is the easiest way to get returns on your investment in DeFi
EGGPLUS._name (#477) shadows:
- ERC20Detailed._name (#411)
EGGPLUS._symbol (#478) shadows:
- ERC20Detailed._symbol (#412)
EGGPLUS._decimals (#479) shadows:
- ERC20Detailed._decimals (#413)
Remove the state variable shadowing.
Additional information: link
Recv.withdraw() (#458-467) ignores return value by usdt.transfer(address(token),usdtBalance) (#461)
Recv.withdraw() (#458-467) ignores return value by token.transfer(address(token),tokenBalance) (#465)
EGGPLUS.refundShare() (#616-627) ignores return value by usdt.transfer(msg.sender,uAmount) (#624)
EGGPLUS.takeShare() (#629-641) ignores return value by usdt.transferFrom(msg.sender,address(this),uAmount) (#638)
EGGPLUS.ido(uint256) (#656-675) ignores return value by usdt.transferFrom(msg.sender,idoAddress,uAmount) (#667)
EGGPLUS.swapBack() (#928-941) ignores return value by usdt.transfer(treasuryReceiver,addUsdt.mul(treasuryFee).div(treasuryFee + consensusFundFee)) (#937)
EGGPLUS.swapBack() (#928-941) ignores return value by usdt.transfer(safuuInsuranceFundReceiver,addUsdt.mul(consensusFundFee).div(treasuryFee + consensusFundFee)) (#938)
EGGPLUS.rescueToken(address,address,uint256) (#1040-1046) ignores return value by IERC20(token).transfer(recipient,amount) (#1045)
Use SafeERC20, or ensure that the transfer/transferFrom return value is checked.
Additional information: link
Unable to verify that contract auditor is trusted: Certik, Quantstamp, Hacken, Solidity, Paladinsec, Openzeppelin, Verichains
Contract ownership is not renounced (belongs to a wallet)
EGGPLUS.ido(uint256) (#656-675) should emit an event for:
- idoTotal = idoTotal.add(uAmount) (#673)
EGGPLUS.setIdo(uint256,uint256,bool) (#677-687) should emit an event for:
- startIdoTime = _time (#680)
- startIdoTime = block.timestamp (#682)
- idoInterval = _time2 (#685)
EGGPLUS.setStartTradingTime(uint256) (#742-750) should emit an event for:
- startTradingTime = _time (#743)
- _lastRebasedTime = _time (#747)
Emit an event for critical parameter changes.
Additional information: link
EGGPLUS.constructor(address,IERC20,address,address,address,address,address)._eggNFTAddress (#584) lacks a zero-check on :
- eggNFTAddress = _eggNFTAddress (#586)
EGGPLUS.constructor(address,IERC20,address,address,address,address,address)._idoAddress (#584) lacks a zero-check on :
- idoAddress = _idoAddress (#587)
EGGPLUS.constructor(address,IERC20,address,address,address,address,address)._treasuryReceiver (#584) lacks a zero-check on :
- treasuryReceiver = _treasuryReceiver (#588)
EGGPLUS.constructor(address,IERC20,address,address,address,address,address)._safuuInsuranceFundReceiver (#584) lacks a zero-check on :
- safuuInsuranceFundReceiver = _safuuInsuranceFundReceiver (#589)
EGGPLUS.constructor(address,IERC20,address,address,address,address,address)._autoLiquidityReceiver (#584) lacks a zero-check on :
- autoLiquidityReceiver = _autoLiquidityReceiver (#590)
EGGPLUS.setEggNFTAddress(address)._eggNFTAddress (#689) lacks a zero-check on :
- eggNFTAddress = _eggNFTAddress (#690)
EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._idoAddress (#1018) lacks a zero-check on :
- idoAddress = _idoAddress (#1025)
EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._autoLiquidityReceiver (#1019) lacks a zero-check on :
- autoLiquidityReceiver = _autoLiquidityReceiver (#1026)
EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._treasuryReceiver (#1020) lacks a zero-check on :
- treasuryReceiver = _treasuryReceiver (#1027)
EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._safuuInsuranceFundReceiver (#1021) lacks a zero-check on :
- safuuInsuranceFundReceiver = _safuuInsuranceFundReceiver (#1028)
EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._freeDaoAddress (#1022) lacks a zero-check on :
- freeDaoAddress = _freeDaoAddress (#1029)
EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._firePit (#1023) lacks a zero-check on :
- firePit = _firePit (#1030)
Check that the address is not zero.
Additional information: link
EGGPLUS.constructor(address,IERC20,address,address,address,address,address) (#584-614) ignores return value by usdt.approve(address(router),MAX) (#603)
EGGPLUS.refundShare() (#616-627) ignores return value by EGGNFT(eggNFTAddress).createNFT(msg.sender,1,new bytes(0)) (#626)
EGGPLUS.addLiquidityUSDT(uint256,uint256) (#1188-1200) ignores return value by router.addLiquidity(address(this),address(usdt),tokenAmount,uAmount,0,0,autoLiquidityReceiver,block.timestamp) (#1190-1199)
Ensure that all the return values of the function calls are used.
Additional information: link
EGGPLUS._transferFrom(address,address,uint256) (#796-848) compares to a boolean constant:
-recipient == pair && _isFeeExempt[sender] == false && _isFeeExempt[recipient] == false (#819)
Remove the equality to the boolean constant.
Additional information: link
renounceOwnership() should be declared external:
- Ownable.renounceOwnership() (#394-397)
transferOwnership(address) should be declared external:
- Ownable.transferOwnership(address) (#399-401)
name() should be declared external:
- ERC20Detailed.name() (#425-427)
symbol() should be declared external:
- ERC20Detailed.symbol() (#429-431)
withdraw() should be declared external:
- Recv.withdraw() (#458-467)
refundShare() should be declared external:
- EGGPLUS.refundShare() (#616-627)
takeShare() should be declared external:
- EGGPLUS.takeShare() (#629-641)
claimIdo() should be declared external:
- EGGPLUS.claimIdo() (#643-654)
ido(uint256) should be declared external:
- EGGPLUS.ido(uint256) (#656-675)
setIdo(uint256,uint256,bool) should be declared external:
- EGGPLUS.setIdo(uint256,uint256,bool) (#677-687)
setEggNFTAddress(address) should be declared external:
- EGGPLUS.setEggNFTAddress(address) (#689-691)
setStartTradingTime(uint256) should be declared external:
- EGGPLUS.setStartTradingTime(uint256) (#742-750)
rescueToken(address,address,uint256) should be declared external:
- EGGPLUS.rescueToken(address,address,uint256) (#1040-1046)
getSysInfo() should be declared external:
- EGGPLUS.getSysInfo() (#1210-1220)
getUserInfo(address) should be declared external:
- EGGPLUS.getUserInfo(address) (#1222-1235)
getReferSize(address) should be declared external:
- EGGPLUS.getReferSize(address) (#1237-1239)
getReferList(address) should be declared external:
- EGGPLUS.getReferList(address) (#1241-1254)
Use the external attribute for functions never called from the contract.
Additional information: link
EGGPLUS.rebase() (#721-740) performs a multiplication on the result of a division:
-times = deltaTime.div(900) (#726)
-epoch = times.mul(15) (#727)
EGGPLUS.rebase() (#721-740) performs a multiplication on the result of a division:
-times = deltaTime.div(900) (#726)
-_lastRebasedTime = _lastRebasedTime.add(times.mul(900)) (#737)
EGGPLUS._transferFrom(address,address,uint256) (#796-848) performs a multiplication on the result of a division:
-gonAmount >= _gonBalances[sender].div(1000).mul(999) (#821)
EGGPLUS._transferFrom(address,address,uint256) (#796-848) performs a multiplication on the result of a division:
-gonAmount = _gonBalances[sender].div(1000).mul(999) (#822)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-fee = gonAmount.div(feeDenominator).mul(firePitFee) (#861)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-feeAmount = gonAmount.div(feeDenominator).mul(_totalFee) (#894)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-fee = gonAmount.div(feeDenominator).mul(treasuryFee.add(consensusFundFee)) (#865)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-fee_scope_0 = gonAmount.div(feeDenominator).mul(liquidityFee) (#877)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-_gonBalances[autoLiquidityReceiver] = _gonBalances[autoLiquidityReceiver].add(gonAmount.div(feeDenominator).mul(_robotsFee)) (#890)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-fee = gonAmount.div(feeDenominator).mul(daoFee) (#869)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-Transfer(sender,autoLiquidityReceiver,gonAmount.div(feeDenominator).mul(_robotsFee).div(_gonsPerFragment)) (#891)
EGGPLUS.takeFee(address,address,uint256) (#850-896) performs a multiplication on the result of a division:
-totalInviteAmount = totalInviteAmount.add(gonAmount.div(_gonsPerFragment).mul(inviteFee).div(feeDenominator)) (#882)
EGGPLUS._takeInviterFee(address,address,uint256) (#898-926) performs a multiplication on the result of a division:
-tFee = amount.div(feeDenominator).mul(inviteFee) (#903)
EGGPLUS._takeInviterFee(address,address,uint256) (#898-926) performs a multiplication on the result of a division:
-curTAmount = amount.div(feeDenominator).mul(REFERRAL_PERCENTS[i]) (#916)
Consider ordering multiplication before division.
Additional information: link
EGGPLUS.refundShare() (#616-627) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(startIdoTime != 0 && block.timestamp.sub(startIdoTime) > idoInterval,ido have not ended) (#618)
EGGPLUS.takeShare() (#629-641) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(startIdoTime == 0 || block.timestamp.sub(startIdoTime) <= idoInterval,ido have ended) (#631)
EGGPLUS.claimIdo() (#643-654) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(block.timestamp.sub(startIdoTime) > idoInterval,ido have not ended) (#645)
EGGPLUS.ido(uint256) (#656-675) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(block.timestamp.sub(startIdoTime) <= idoInterval,ido not start or have ended) (#659)
EGGPLUS.rebase() (#721-740) uses timestamp for comparisons
Dangerous comparisons:
- i < times (#730)
EGGPLUS.setStartTradingTime(uint256) (#742-750) uses timestamp for comparisons
Dangerous comparisons:
- _lastRebasedTime == 0 (#746)
EGGPLUS.takeFee(address,address,uint256) (#850-896) uses timestamp for comparisons
Dangerous comparisons:
- require(bool,string)(startTradingTime > 0 && block.timestamp >= startTradingTime,can not trade now!) (#887)
- block.timestamp <= startTradingTime + 6 (#888)
EGGPLUS.shouldRebase() (#954-961) uses timestamp for comparisons
Dangerous comparisons:
- _autoRebase && (_totalSupply < MAX_SUPPLY) && msg.sender != pair && ! inSwap && block.timestamp >= (_lastRebasedTime + 900) (#955-960)
EGGPLUS.shouldAddLiquidity() (#963-970) uses timestamp for comparisons
Dangerous comparisons:
- _autoAddLiquidity && ! inSwap && msg.sender != pair && _lastAddLiquidityTime > 0 && block.timestamp >= (_lastAddLiquidityTime + autoLiquidityInterval) (#964-969)
EGGPLUS.shouldSwapBack() (#972-978) uses timestamp for comparisons
Dangerous comparisons:
- _autoSwapBack && ! inSwap && msg.sender != pair && _lastSwapBackTime > 0 && block.timestamp >= (_lastSwapBackTime + swapBackInterval) (#973-977)
Avoid relying on block.timestamp.
Additional information: link
EGGPLUS.isContract(address) (#1256-1260) uses assembly
- INLINE ASM (#1258)
Do not use evm assembly.
Additional information: link
Reentrancy in EGGPLUS._transferFrom(address,address,uint256) (#796-848):
External calls:
- addLiquidity() (#811)
- router.addLiquidity(address(this),address(usdt),tokenAmount,uAmount,0,0,autoLiquidityReceiver,block.timestamp) (#1190-1199)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
- swapBack() (#815)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
- usdt.transfer(treasuryReceiver,addUsdt.mul(treasuryFee).div(treasuryFee + consensusFundFee)) (#937)
- usdt.transfer(safuuInsuranceFundReceiver,addUsdt.mul(consensusFundFee).div(treasuryFee + consensusFundFee)) (#938)
State variables written after the call(s):
- _gonBalances[sender] = _gonBalances[sender].sub(gonAmount) (#831)
- _gonBalances[recipient] = _gonBalances[recipient].add(gonAmountReceived) (#840)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- _gonBalances[firePit] = _gonBalances[firePit].add(fee) (#862)
- _gonBalances[address(this)] = _gonBalances[address(this)].add(fee) (#866)
- _gonBalances[freeDaoAddress] = _gonBalances[freeDaoAddress].add(fee) (#870)
- _gonBalances[cur] = _gonBalances[cur].add(curTAmount) (#918)
- _gonBalances[autoLiquidityReceiver] = _gonBalances[autoLiquidityReceiver].add(fee_scope_0) (#878)
- _gonBalances[address(this)] = _gonBalances[address(this)].add(tFee.sub(accurAmount)) (#922)
- _gonBalances[autoLiquidityReceiver] = _gonBalances[autoLiquidityReceiver].add(gonAmount.div(feeDenominator).mul(_robotsFee)) (#890)
- swapBack() (#815)
- inSwap = true (#546)
- inSwap = false (#548)
Reentrancy in EGGPLUS.ido(uint256) (#656-675):
External calls:
- usdt.transferFrom(msg.sender,idoAddress,uAmount) (#667)
State variables written after the call(s):
- parent.referIdoNum = parent.referIdoNum + 1 (#670)
- user.idoAmount = user.idoAmount.add(uAmount) (#672)
Reentrancy in EGGPLUS.takeShare() (#629-641):
External calls:
- usdt.transferFrom(msg.sender,address(this),uAmount) (#638)
State variables written after the call(s):
- user.isShare = true (#639)
Apply the check-effects-interactions pattern.
Additional information: link
Reentrancy in EGGPLUS._transferFrom(address,address,uint256) (#796-848):
External calls:
- addLiquidity() (#811)
- router.addLiquidity(address(this),address(usdt),tokenAmount,uAmount,0,0,autoLiquidityReceiver,block.timestamp) (#1190-1199)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
- swapBack() (#815)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
- usdt.transfer(treasuryReceiver,addUsdt.mul(treasuryFee).div(treasuryFee + consensusFundFee)) (#937)
- usdt.transfer(safuuInsuranceFundReceiver,addUsdt.mul(consensusFundFee).div(treasuryFee + consensusFundFee)) (#938)
State variables written after the call(s):
- pairBalance = pairBalance.sub(amount) (#826)
- pairBalance = pairBalance.add(gonAmountReceived.div(_gonsPerFragment)) (#838)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- totalDaoAmount = totalDaoAmount.add(fee.div(_gonsPerFragment)) (#872)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- totalInviteAmount = totalInviteAmount.add(gonAmount.div(_gonsPerFragment).mul(inviteFee).div(feeDenominator)) (#882)
- userInfo[recipient].buyAmount = userInfo[recipient].buyAmount.add(amount) (#828)
Reentrancy in EGGPLUS.addLiquidity() (#1145-1160):
External calls:
- swapAndLiquify(autoLiquidityAmount) (#1156)
- router.addLiquidity(address(this),address(usdt),tokenAmount,uAmount,0,0,autoLiquidityReceiver,block.timestamp) (#1190-1199)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
State variables written after the call(s):
- _lastAddLiquidityTime = block.timestamp (#1157)
Reentrancy in EGGPLUS.constructor(address,IERC20,address,address,address,address,address) (#584-614):
External calls:
- pair = IPancakeSwapFactory(router.factory()).createPair(address(usdt),address(this)) (#593)
State variables written after the call(s):
- TOTAL_GONS = MAX_UINT256 / 1e10 - (MAX_UINT256 / 1e10 % _totalSupply) (#596)
- _allowedFragments[idoAddress][address(this)] = MAX (#601)
- _allowedFragments[address(this)][address(router)] = MAX (#602)
- _gonBalances[msg.sender] = TOTAL_GONS (#597)
- _gonsPerFragment = TOTAL_GONS.div(_totalSupply) (#599)
- _totalSupply = 3520000 * 10 ** DECIMALS (#595)
Reentrancy in EGGPLUS.constructor(address,IERC20,address,address,address,address,address) (#584-614):
External calls:
- pair = IPancakeSwapFactory(router.factory()).createPair(address(usdt),address(this)) (#593)
- usdt.approve(address(router),MAX) (#603)
State variables written after the call(s):
- _isFeeExempt[msg.sender] = true (#607)
- _isFeeExempt[address(this)] = true (#608)
- _isFeeExempt[idoAddress] = true (#609)
- _isFeeExempt[autoLiquidityReceiver] = true (#610)
- _isFeeExempt[treasuryReceiver] = true (#611)
- _isFeeExempt[safuuInsuranceFundReceiver] = true (#612)
- _isFeeExempt[firePit] = true (#613)
- recv = new Recv(IERC20(this),usdt) (#605)
Reentrancy in EGGPLUS.ido(uint256) (#656-675):
External calls:
- usdt.transferFrom(msg.sender,idoAddress,uAmount) (#667)
State variables written after the call(s):
- idoTotal = idoTotal.add(uAmount) (#673)
Reentrancy in EGGPLUS.swapBack() (#928-941):
External calls:
- swapTokensForUSDT(amountToSwap) (#934)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
- usdt.transfer(treasuryReceiver,addUsdt.mul(treasuryFee).div(treasuryFee + consensusFundFee)) (#937)
- usdt.transfer(safuuInsuranceFundReceiver,addUsdt.mul(consensusFundFee).div(treasuryFee + consensusFundFee)) (#938)
State variables written after the call(s):
- _lastSwapBackTime = block.timestamp (#940)
Reentrancy in EGGPLUS.takeShare() (#629-641):
External calls:
- usdt.transferFrom(msg.sender,address(this),uAmount) (#638)
State variables written after the call(s):
- shareHolder.push(msg.sender) (#640)
Apply the check-effects-interactions pattern.
Additional information: link
Reentrancy in EGGPLUS._transferFrom(address,address,uint256) (#796-848):
External calls:
- addLiquidity() (#811)
- router.addLiquidity(address(this),address(usdt),tokenAmount,uAmount,0,0,autoLiquidityReceiver,block.timestamp) (#1190-1199)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
- swapBack() (#815)
- router.swapExactTokensForTokensSupportingFeeOnTransferTokens(tokenAmount,0,path,address(recv),block.timestamp) (#1178-1184)
- recv.withdraw() (#1185)
- usdt.transfer(treasuryReceiver,addUsdt.mul(treasuryFee).div(treasuryFee + consensusFundFee)) (#937)
- usdt.transfer(safuuInsuranceFundReceiver,addUsdt.mul(consensusFundFee).div(treasuryFee + consensusFundFee)) (#938)
Event emitted after the call(s):
- Transfer(sender,firePit,fee.div(_gonsPerFragment)) (#863)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- Transfer(sender,address(this),fee.div(_gonsPerFragment)) (#867)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- Transfer(sender,freeDaoAddress,fee.div(_gonsPerFragment)) (#871)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- Transfer(sender,cur,curTAmount.div(_gonsPerFragment)) (#919)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- Transfer(sender,autoLiquidityReceiver,fee_scope_0.div(_gonsPerFragment)) (#879)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- Transfer(sender,address(this),tFee.sub(accurAmount).div(_gonsPerFragment)) (#923)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- Transfer(sender,autoLiquidityReceiver,gonAmount.div(feeDenominator).mul(_robotsFee).div(_gonsPerFragment)) (#891)
- gonAmountReceived = takeFee(sender,recipient,gonAmount) (#833-835)
- Transfer(sender,recipient,gonAmountReceived.div(_gonsPerFragment)) (#842-846)
Reentrancy in EGGPLUS.constructor(address,IERC20,address,address,address,address,address) (#584-614):
External calls:
- pair = IPancakeSwapFactory(router.factory()).createPair(address(usdt),address(this)) (#593)
Event emitted after the call(s):
- Transfer(address(0x0),msg.sender,_totalSupply) (#598)
Apply the check-effects-interactions pattern.
Additional information: link
SafeMath.mod(uint256,uint256) (#89-92) is never used and should be removed
SafeMathInt.abs(int256) (#34-37) is never used and should be removed
SafeMathInt.add(int256,int256) (#28-32) is never used and should be removed
SafeMathInt.div(int256,int256) (#16-20) is never used and should be removed
SafeMathInt.mul(int256,int256) (#8-14) is never used and should be removed
SafeMathInt.sub(int256,int256) (#22-26) is never used and should be removed
Remove unused functions.
Additional information: link
EGGPLUS.firePit (#533) is set pre-construction with a non-constant function or state variable:
- ZERO
Remove any initialization of state variables via non-constant state variables or function calls. If variables must be set upon contract deployment, locate initialization in the constructor instead.
Additional information: link
Pragma version^0.7.4 (#2) allows old versions
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
Function IPancakeSwapPair.DOMAIN_SEPARATOR() (#146) is not in mixedCase
Function IPancakeSwapPair.PERMIT_TYPEHASH() (#148) is not in mixedCase
Function IPancakeSwapPair.MINIMUM_LIQUIDITY() (#166) is not in mixedCase
Function IPancakeSwapRouter.WETH() (#198) is not in mixedCase
Event EGGPLUSparentInfo(address,address) (#579-582) is not in CapWords
Parameter EGGPLUS.setIdo(uint256,uint256,bool)._time (#677) is not in mixedCase
Parameter EGGPLUS.setIdo(uint256,uint256,bool)._time2 (#677) is not in mixedCase
Parameter EGGPLUS.setIdo(uint256,uint256,bool)._idoPaused (#677) is not in mixedCase
Parameter EGGPLUS.setEggNFTAddress(address)._eggNFTAddress (#689) is not in mixedCase
Parameter EGGPLUS.setStartTradingTime(uint256)._time (#742) is not in mixedCase
Parameter EGGPLUS.setAutoRebase(bool)._flag (#980) is not in mixedCase
Parameter EGGPLUS.setAutoSwapBack(bool)._flag (#989) is not in mixedCase
Parameter EGGPLUS.setAutoLiquidityInterval(uint256)._minutes (#998) is not in mixedCase
Parameter EGGPLUS.setSwapBackInterval(uint256)._minutes (#1003) is not in mixedCase
Parameter EGGPLUS.setAutoAddLiquidity(bool)._flag (#1008) is not in mixedCase
Parameter EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._idoAddress (#1018) is not in mixedCase
Parameter EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._autoLiquidityReceiver (#1019) is not in mixedCase
Parameter EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._treasuryReceiver (#1020) is not in mixedCase
Parameter EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._safuuInsuranceFundReceiver (#1021) is not in mixedCase
Parameter EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._freeDaoAddress (#1022) is not in mixedCase
Parameter EGGPLUS.setFeeReceivers(address,address,address,address,address,address)._firePit (#1023) is not in mixedCase
Parameter EGGPLUS.checkFeeExempt(address)._addr (#1102) is not in mixedCase
Parameter EGGPLUS.setWhitelist(address[])._addrs (#1121) is not in mixedCase
Parameter EGGPLUS.setBlacklist(address,bool)._address (#1128) is not in mixedCase
Parameter EGGPLUS.setBlacklist(address,bool)._flag (#1128) is not in mixedCase
Variable EGGPLUS._name (#477) is not in mixedCase
Variable EGGPLUS._symbol (#478) is not in mixedCase
Variable EGGPLUS._decimals (#479) is not in mixedCase
Variable EGGPLUS._isFeeExempt (#483) is not in mixedCase
Variable EGGPLUS.REFERRAL_PERCENTS (#513) is not in mixedCase
Variable EGGPLUS.DEAD (#524) is not in mixedCase
Variable EGGPLUS.ZERO (#525) is not in mixedCase
Variable EGGPLUS.TOTAL_GONS (#551) is not in mixedCase
Variable EGGPLUS._autoRebase (#554) is not in mixedCase
Variable EGGPLUS._autoSwapBack (#555) is not in mixedCase
Variable EGGPLUS._autoAddLiquidity (#556) is not in mixedCase
Variable EGGPLUS._lastRebasedTime (#558) is not in mixedCase
Variable EGGPLUS._lastAddLiquidityTime (#559) is not in mixedCase
Variable EGGPLUS._lastSwapBackTime (#560) is not in mixedCase
Variable EGGPLUS._totalSupply (#561) is not in mixedCase
Follow the Solidity naming convention.
Additional information: link
Variable IPancakeSwapRouter.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountADesired (#203) is too similar to IPancakeSwapRouter.addLiquidity(address,address,uint256,uint256,uint256,uint256,address,uint256).amountBDesired (#204)
Prevent variables from having similar names.
Additional information: link
EGGPLUS.ido(uint256) (#656-675) uses literals with too many digits:
- require(bool,string)(idoTotal <= 2000000 * 10 ** 18,ido have overflowed) (#674)
EGGPLUS.slitherConstructorVariables() (#470-1263) uses literals with too many digits:
- DEAD = 0x000000000000000000000000000000000000dEaD (#524)
EGGPLUS.slitherConstructorVariables() (#470-1263) uses literals with too many digits:
- ZERO = 0x0000000000000000000000000000000000000000 (#525)
EGGPLUS.slitherConstructorConstantVariables() (#470-1263) uses literals with too many digits:
- MAX_SUPPLY = 3250000000 * 10 ** DECIMALS (#552)
Use: Ether suffix, Time suffix, or The scientific notation
Additional information: link
SafeMathInt.MAX_INT256 (#6) is never used in SafeMathInt (#4-38)
Remove unused state variables.
Additional information: link
EGGPLUS.DEAD (#524) should be constant
EGGPLUS.ZERO (#525) should be constant
EGGPLUS._decimals (#479) should be constant
EGGPLUS._name (#477) should be constant
EGGPLUS._symbol (#478) should be constant
EGGPLUS.consensusFundFee (#516) should be constant
EGGPLUS.daoFee (#517) should be constant
EGGPLUS.feeDenominator (#519) should be constant
EGGPLUS.firePitFee (#518) should be constant
EGGPLUS.idoMx (#573) should be constant
EGGPLUS.inviteFee (#512) should be constant
EGGPLUS.liquidityFee (#511) should be constant
EGGPLUS.shareMx (#572) should be constant
EGGPLUS.swapEnabled (#535) should be constant
EGGPLUS.treasuryFee (#515) should be constant
Add the constant attributes to state variables that never change.
Additional information: link
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
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
Unable to find Blog account (Reddit or Medium)
Unable to find Youtube account